nss_compat in glibc-2.2.3 (Was: static binaries & netgroups)

Torsten Duwe duwe@caldera.de
Wed May 30 04:10:00 GMT 2001


To follow up on this older thread...

    HJL> On Fri, Feb 16, 2001 at 06:09:14PM +0100, Torsten Duwe wrote:
    >> >> static binary doing getpwuid() or such + "passwd: compat" in >>
    >> /etc/nsswitch.conf + "-@SOMEGROUP::::::" in /etc/passwd = crash.
    >> 
    >> >> Reducing "compat" to "files nis" eliminates the problem, as does
    >> the >> removal of netgroup entries from passwd. Linking dynamically
    >> also >> helps.
    >> 
    HJL> Please provide a complete testcase. I will look into it when I find
    HJL> time.
[...]
    HJL> I don't have netgroups. You have to tell me how to reproduce it,
    HJL> assuming I don't use NIS and know every little about netgroups.

OK, glibc-2.2.3 now breaks it completely; you don't even need netgroups any
more :-( The failure happens even with dynamically linked programs.

If you use "passwd: files nis" in /etc/nsswitch.conf everything works.
A backward-compatible equivalent should be to change /etc/nsswitch.conf to
"passwd: compat" and to append "+::::::" to /etc/passwd . Now even root
cannot log in any more e.g. the getpw* functions return NULL.

I can provide a complete test case if this isn't enough, provided you already
have NIS (passwd.by* maps at least) running.

Nobody uses nss_compat, it seems ?

	Torsten



More information about the Libc-alpha mailing list