Bug 82039 - dlopen() of /lib/libnss_wins.so fails
dlopen() of /lib/libnss_wins.so fails
Status: CLOSED CURRENTRELEASE
Product: Red Hat Linux
Classification: Retired
Component: samba (Show other bugs)
9
All Linux
medium Severity medium
: ---
: ---
Assigned To: Jay Fenlason
David Lawrence
:
Depends On:
Blocks: 79578
  Show dependency treegraph
 
Reported: 2003-01-16 13:01 EST by Tim Powers
Modified: 2014-08-31 19:24 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2003-04-08 15:18:39 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
test for dlopen() on libnss_*.so libs (1.02 KB, text/plain)
2003-01-16 13:03 EST, Tim Powers
no flags Details

  None (edit)
Description Tim Powers 2003-01-16 13:01:08 EST
/lib/libnss_wins.so is included in the samba-common-2.2.7a-1 package (in
Phoebe-re0116-Beta4-RC1). I have a test that is run to check to see if
libnss_*.so will dlopen() correctly. The output of the test on
/lib/libnss_wins.so is as follows:

dlopen() of "/lib/libnss_wins.so" failed: /lib/libnss_wins.so: undefined symbol:
yperr_string

I will attach the test script next.
Comment 1 Tim Powers 2003-01-16 13:03:00 EST
Created attachment 89411 [details]
test for dlopen() on libnss_*.so libs
Comment 2 Jay Fenlason 2003-02-04 17:30:52 EST
libnss_wins.so needs the shared library -lnsl  If you insert
 dlopen ( "/lib/libnsl.so.1", RTLD_NOW | RTLD_GLOBAL )
before the dlopen of libnss_wins, the wins library dlopens successfully.  I
haven't figured out how you list this dependency in the .so file.

So the real question now is what programs dlopen libnss_wins, and will they have
libnsl loaded?
Comment 3 Nalin Dahyabhai 2003-02-19 23:09:28 EST
Jay: from the list of exported symbols, any application which calls
gethostbyname() (and, depending on how glibc's internals are set up, possibly
getaddrinfo() as well) may end up loading the wins module (in cases where "wins"
is listed on the "hosts:" line in /etc/nsswitch.conf).

Certainly "finger" doesn't link with libnsl.  A general rule of thumb is that
nss modules must be linked against all of their dependencies, the library which
itself loads the modules (libc) excepted.

For example, modules intended for use by pam must be linked against any of their
dependencies so that they can be used by apps like login, but needn't be linked
with libpam, because any application which would load the module would also be
linked against libpam.
Comment 4 Nalin Dahyabhai 2003-02-20 01:54:01 EST
Should be fixed in samba-common-2.2.7a-4.
Comment 5 Jay Fenlason 2003-04-08 15:18:39 EDT
Confirmed fixed in current samba-2.2.7a-9.9.0

Note You need to log in before you can comment on or make changes to this bug.