From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-GB; rv:1.7.6) Gecko/20050226 Firefox/1.0.1 Description of problem: Please forgive me if my I don't remember correctly how YP/NIS worked in the past, but I think that glibc's "compat" behaviour for e.g. passwd lookups isn't really quite compatible. Essentially, it will just ignore the rest of the file and consult the NIS map instead, whenever a single "+" appears. If I remember correctly, "+" used to mean "insert NIS data here", so entries appearing *after* it would also be consulted. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. Make sure you have a valid NIS server. 2. In /etc/nsswitch.conf change the line starting with "passwd:" to passwd: compat 3. Edit /etc/passwd so that it ends with + abjarne::55555:100:Arne-Bjarne:/home/abjarne:/bin/tcsh and that a linbe containing just "+" does not appear anywhere else. Make sure the NIS passwd map does not have an entry for "abjarne". (Or change user name in above entry as well as the next step if it does.) 4. su - abjarne Actual Results: su: user abjarne does not exist Expected Results: abjarne is now the active user. If following the above steps slavishly, one will probably also get su: warning: cannot change directory to /home/abjarne: No such file or directory Additional info: Filing against RHEL 4, but this is really a very old problem. Workaround: Use passwd: compat files instead.
The nss_compat code behaves like this from the beginning. This is no regression and there is no reason to change this for any released code since a) it is questionable to use + this way and b) it can be easily worked around. So, if anything, this would be a feature request for a new release. Talk to your RHAT support representative about this or, alternatively, provide a patch to upstream glibc which then would be automatically be used in the next release.