diff options
Diffstat (limited to 'lib/libc/net/nsdispatch.c')
-rw-r--r-- | lib/libc/net/nsdispatch.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/lib/libc/net/nsdispatch.c b/lib/libc/net/nsdispatch.c index 7f30e4f..eb0fa42 100644 --- a/lib/libc/net/nsdispatch.c +++ b/lib/libc/net/nsdispatch.c @@ -592,9 +592,7 @@ nss_method_lookup(const char *source, const char *database, return (match->method); } } - if (is_dynamic()) - nss_log(LOG_DEBUG, "%s, %s, %s, not found", source, database, - method); + *mdata = NULL; return (NULL); } @@ -701,12 +699,18 @@ _nsdispatch(void *retval, const ns_dtab disp_tab[], const char *database, if (result & (srclist[i].flags)) break; - } else if (fb_method != NULL) { - fallback_dispatch = 1; - va_start(ap, defaults); - result = fb_method(retval, (void *)srclist[i].name, ap); - va_end(ap); - fallback_dispatch = 0; + } else { + if (fb_method != NULL) { + fallback_dispatch = 1; + va_start(ap, defaults); + result = fb_method(retval, + (void *)srclist[i].name, ap); + va_end(ap); + fallback_dispatch = 0; + } else + nss_log(LOG_DEBUG, "%s, %s, %s, not found, " + "and no fallback provided", + srclist[i].name, database, method_name); } } |