This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: nis compat depreciation and test failures


On 08/14/2017 02:00 PM, DJ Delorie wrote:
> 
> Wait... what's the real failure here?  What *should* happen when a
> method is listed for which a service doesn't exist?  Are we handing it
> incorrectly, which causes the test failure, or is the test just
> dependent on those services?  Or dependent on the host's data?

The tests are dependent on the host configuration, and that is the bug,
we have many such tests which need to be changed into tests that are
isolated from the host configuration using a namespace/chroot.

The library is compiled with --disable-obsolete-nsl, which disables
building all of the NIS and compat (used for NIS) NSS service modules.
This is done because such modules are being replaced by TIRPC-based
versions which support IPv6.

The problem is that with such a configuration of glibc, you need to
get your compat NSS module from somewhere else, and most people don't
arrange for that in their normal test setup.

> I mean, we can take that out of the test if we don't need it, but we
> should then add a test for "make sure the right thing happens if a
> service is missing".

We aren't taking it out of the test, but rather removing 'compat' as
an NSS module from the *default* service modules to try when doing
a shadow password lookup.

The secondary bug here is: Why do we have compat in the default config
for shadow passwords when compat (NIS) hasn't really been the default
for Linux for a long time.

> Also, if these tests depend on a "properly configured" *host*, we should
> consider moving them to the nss directory and using the new test
> services framework instead, so we can provide specific test data for
> them.  Or find some other way to ensure we have the right test data.
> (/me is looking into test-in-installed-chroot for example)
 
I think that's also a good idea.

In summary:

(a) Make tests independent of host configuration.

(b) Add more tests to nss/ subdirectory to test for things like the
    behaviour when specifying a missing NSS module.

(c) Remove 'compat' from DEFAULT_CONFIG for all glibc-built services.

-- 
Cheers,
Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]