Bug 439829
Summary: | simple password auth fails using NSS 3.11.99 or later | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Retired] 389 | Reporter: | Perry Myers <pmyers> | ||||||||
Component: | Directory Server | Assignee: | Rich Megginson <rmeggins> | ||||||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | Ben Levenson <benl> | ||||||||
Severity: | low | Docs Contact: | |||||||||
Priority: | low | ||||||||||
Version: | 1.1.0 | CC: | amsharma | ||||||||
Target Milestone: | --- | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | x86_64 | ||||||||||
OS: | Linux | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2015-03-20 17:50:05 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Attachments: |
|
Description
Perry Myers
2008-03-31 16:41:14 UTC
Created attachment 299738 [details]
typescript output of running setup-ds.pl and ldapsearch commands
Posted this /etc/init.d/dirsrv patch on IRC... If you apply this change, things work fine. But we obviously don't want to be forced to run in debug mode permanently. diff -Naur 1/etc/init.d/dirsrv 2/etc/init.d/dirsrv --- 1/etc/init.d/dirsrv 2008-03-31 13:24:00.000000000 -0400 +++ 2/etc/init.d/dirsrv 2008-03-31 13:23:52.000000000 -0400 @@ -156,7 +156,7 @@ # init config environment will not apply to any other instance ( [ -f /etc/sysconfig/dirsrv-$instance ] && . /etc/sysconfig/dirsrv-$instance - $exec -D $instbase/slapd-$instance -i $pidfile -w $startpidfile + ( $exec -D $instbase/slapd-$instance -i $pidfile -w $startpidfile -d 0 & ) > /dev/null 2>&1 < /dev/null ) if [ $? -eq 0 ]; then server_started=1 # well, perhaps not running, but started ok The problem is that NSS 3.11.99 requires the application to call fork() _before_ calling NSS_Initialize, for security reasons. ds calls fork() _after_ calling NSS_Initialize(). The fix will be a little bit tricky since we need to call NSS_Initialize after the fork, but before detaching from the controlling process, in case NSS needs to prompt on stdin for the tokens' passwords. Created attachment 300273 [details]
diffs
Created attachment 300347 [details]
cvs commit log
Reviewed by: nkinder (Thanks!)
Files: see diff
Branch: HEAD
Fix Description: The new softokn in NSS 3.11.99 and later requires that
the server calls NSS_Init() after forking, but before detaching from the
controlling terminal. In fact, this was always a requirement, but the
softokn in older NSS allow it. However, it's possible that some
hardware crypto devices do not allow this and may not work with older
directory servers. The fix is to move the nss/ssl initialization so
that it can be called at the right point, or from other points in cases
where the server does not fork (e.g. db2ldif).
Platforms tested: Fedora 9 i386, RHEL5 x86_64
Flag Day: no
Doc impact: no
|