Spotted the string 'Undefined symbol "_nss_cache_cycle_prevention_function"' in a corefile that uses nsdispatch. The lookup's being done in lib/libc/net/nsdispatch.c, however, "_nss_cache_cycle_prevention_function" is only being provided by nscd. This hack seems horrible and could probably be replaced with a weak symbol... $ grep -r _nss_cache_cycle_prevention usr.sbin/ lib usr.sbin/nscd/nscd.c: * The idea of _nss_cache_cycle_prevention_function is that nsdispatch usr.sbin/nscd/nscd.c:void *_nss_cache_cycle_prevention_function; lib/libc/net/nsdispatch.c: "_nss_cache_cycle_prevention_function");
A less magic approach would be to export a function from libc that nscd calls to tell libc not to connect to the caching daemon. nscd should then call this before opening its socket.