Bug 222667 - dovecot-auth hangs while using libnss_ldap
Summary: dovecot-auth hangs while using libnss_ldap
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: nss_ldap
Version: 5
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nalin Dahyabhai
QA Contact:
URL:
Whiteboard: bzcl34nup
Depends On: 154314
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-01-15 16:27 UTC by J. David Rye
Modified: 2008-05-06 17:21 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-05-06 17:21:37 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description J. David Rye 2007-01-15 16:27:07 UTC
Description of problem:

Just ocasionaly dovecot-auth hangs while looking up password and user data using 
pam and libnss_ldap

Version-Release number of selected component (if applicable):

nss_ldap-249-1.src.rpm

How reproducible:

Very difficalt :-(

It only happens one every few thousand lookups


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

This morning when it happened I atached the two dovecot-auth processes with gdb
and collected a backtrace.

Child

#0  0x00bc8402 in ?? ()
#1  0x006a640d in poll () from /lib/libc.so.6
#2  0x002ca1c5 in _nss_ldap_mergeconfigfromdns () from /lib/libnss_ldap.so.2
#3  0x002bc2ff in _nss_ldap_mergeconfigfromdns () from /lib/libnss_ldap.so.2
#4  0x002bd661 in _nss_ldap_mergeconfigfromdns () from /lib/libnss_ldap.so.2
#5  0x002af50b in _nss_ldap_read () from /lib/libnss_ldap.so.2
#6  0x002ae9ad in _nss_ldap_next_entry () from /lib/libnss_ldap.so.2
#7  0x002af27c in _nss_ldap_search_s () from /lib/libnss_ldap.so.2
#8  0x002aff07 in _nss_ldap_getbyname () from /lib/libnss_ldap.so.2
#9  0x002b0630 in _nss_ldap_getpwnam_r () from /lib/libnss_ldap.so.2
#10 0x00670a93 in getpwnam_r@@GLIBC_2.1.2 () from /lib/libc.so.6
#11 0x00b8dd24 in pam_modutil_getpwnam () from /lib/libpam.so.0
#12 0x005615b3 in pam_sm_acct_mgmt ()
   from /lib/security/../../lib/security/pam_unix.so
#13 0x00b8976e in _pam_dispatch () from /lib/libpam.so.0
#14 0x00b88e63 in pam_acct_mgmt () from /lib/libpam.so.0
#15 0x0805eeb5 in passdb_cache_init ()
#16 0x08054b42 in auth_request_verify_plain ()
#17 0x080598dc in mech_init ()
#18 0x0805522e in auth_request_handler_auth_continue ()
#19 0x08051f5a in auth_client_connection_create ()
#20 0x0806bd38 in io_loop_handler_run ()
#21 0x0806b3cc in io_loop_run ()
#22 0x080591c6 in main ()

Parent

#0  0x00bc8402 in ?? ()
#1  0x006a640d in poll () from /lib/libc.so.6
#2  0x002ca1c5 in _nss_ldap_mergeconfigfromdns () from /lib/libnss_ldap.so.2
#3  0x002bc2ff in _nss_ldap_mergeconfigfromdns () from /lib/libnss_ldap.so.2
#4  0x002bd661 in _nss_ldap_mergeconfigfromdns () from /lib/libnss_ldap.so.2
#5  0x002af50b in _nss_ldap_read () from /lib/libnss_ldap.so.2
#6  0x002ae9ad in _nss_ldap_next_entry () from /lib/libnss_ldap.so.2
#7  0x002af27c in _nss_ldap_search_s () from /lib/libnss_ldap.so.2
#8  0x002aff07 in _nss_ldap_getbyname () from /lib/libnss_ldap.so.2
#9  0x002b0630 in _nss_ldap_getpwnam_r () from /lib/libnss_ldap.so.2
#10 0x00670a93 in getpwnam_r@@GLIBC_2.1.2 () from /lib/libc.so.6
#11 0x00670551 in getpwnam () from /lib/libc.so.6
#12 0x080610d0 in userdb_blocking_lookup ()
#13 0x08052563 in auth_master_connection_create ()
#14 0x0806bd38 in io_loop_handler_run ()
#15 0x0806b3cc in io_loop_run ()
#16 0x080591c6 in main ()

If I am reading this correctly both processes were hung in a call to poll
from a function  _nss_ldap_mergeconfigfromdns in /lib/libnss_ldap.so.2

I checked /lib/libnss_ldap.so.2 is linked to libnss_ldap-2.3.90.so

yum provides libnss_ldap-2.3.90.so

returns 

nss_ldap.i386                            249-1                  installed
Matched from:
/lib/libnss_ldap-2.3.90.so

Fetched source 

-rw-r--r-- 1 root     root      426153 Mar  6  2006 nss_ldap-249-1.src.rpm

Installed

went to /usr/src/redhat/SPECS

rpmbuild -bp nss_ldap.spec

First puzzel it gave an error, 
Did not like the line 

Copyright: LGPL

Changing to

License: LGPL

kept rpmbuild happy

Worked through source and can not see anything in nss_ldap_mergeconfigfromdns
that looks like it would lead to a call to bind.

2nd puzzel leting rpmbuild run through to compile and install phases
yealds a file nss_ldap.so
root root 249468 Jan 15 12:09 nss_ldap.so

which is then installed as /lib/libnss_ldap-2.4.so
but is only a tenth the size of the original library from the binary form of
this rpm.

-rwxr-xr-x 1 root root 2874544 Feb 24  2006 /lib/libnss_ldap-2.3.90.so
-rwxr-xr-x 1 root root  249468 Jan 15 12:31 /lib/libnss_ldap-2.4.so

Not sure if it makes any difference but the server has been migrated
from Fedora 3 to 4 and currently 5

Another diference between the library from the binary rpm and the source rpm is
that the one from the binary rpm has been striped 

# nm -a /lib/libnss_ldap-2.3.90.so
nm: /lib/libnss_ldap-2.3.90.so: no symbols

Comment 1 Tomas Janousek 2007-03-09 10:51:46 UTC
I believe this is caused by the race described in bug 154314. Addind as dep.

Comment 2 Bug Zapper 2008-04-04 05:36:50 UTC
Fedora apologizes that these issues have not been resolved yet. We're
sorry it's taken so long for your bug to be properly triaged and acted
on. We appreciate the time you took to report this issue and want to
make sure no important bugs slip through the cracks.

If you're currently running a version of Fedora Core between 1 and 6,
please note that Fedora no longer maintains these releases. We strongly
encourage you to upgrade to a current Fedora release. In order to
refocus our efforts as a project we are flagging all of the open bugs
for releases which are no longer maintained and closing them.
http://fedoraproject.org/wiki/LifeCycle/EOL

If this bug is still open against Fedora Core 1 through 6, thirty days
from now, it will be closed 'WONTFIX'. If you can reporduce this bug in
the latest Fedora version, please change to the respective version. If
you are unable to do this, please add a comment to this bug requesting
the change.

Thanks for your help, and we apologize again that we haven't handled
these issues to this point.

The process we are following is outlined here:
http://fedoraproject.org/wiki/BugZappers/F9CleanUp

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.

And if you'd like to join the bug triage team to help make things
better, check out http://fedoraproject.org/wiki/BugZappers

Comment 3 Bug Zapper 2008-05-06 17:21:35 UTC
This bug is open for a Fedora version that is no longer maintained and
will not be fixed by Fedora. Therefore we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen thus bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.


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