1 --- glibc22/nss/nsswitch.c~ Fri Mar 31 15:38:32 2000
2 +++ glibc22/nss/nsswitch.c Thu Nov 9 17:28:45 2000
4 ni->library->lib_handle = __libc_dlopen (shlib_name);
5 if (ni->library->lib_handle == NULL)
7 - /* Failed to load the library. */
8 - ni->library->lib_handle = (void *) -1l;
9 - __set_errno (saved_errno);
10 + /* Failed to load the library. Try a fallback. */
11 + int n = __snprintf(shlib_name, shlen, "libnss_%s.so.%d.%d",
12 + ni->library->name, __GLIBC__, __GLIBC_MINOR__);
14 + ni->library->lib_handle = NULL;
16 + ni->library->lib_handle = __libc_dlopen (shlib_name);
18 + if (ni->library->lib_handle == NULL)
20 + /* Ok, really fail now. */
21 + ni->library->lib_handle = (void *) -1l;
22 + __set_errno (saved_errno);