Bug 1156607
| Summary: | Crash in entry_add_present_values_wsi_multi_valued | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Noriko Hosoi <nhosoi> |
| Component: | 389-ds-base | Assignee: | Noriko Hosoi <nhosoi> |
| Status: | CLOSED ERRATA | QA Contact: | Viktor Ashirov <vashirov> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 7.0 | CC: | amsharma, mreynolds, nkinder, rmeggins |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | 389-ds-base-1.3.3.1-8.el7 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2015-03-05 09:36:55 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: | |||
|
Description
Noriko Hosoi
2014-10-24 18:27:58 UTC
Verification script: https://fedorahosted.org/389/attachment/ticket/47937/0002-lib389-testcase-for-ticket-47937.patch Verification steps
[1] Install DS using "dc=example,dc=com"
[2] Create two "ou" branches, and a entry:
ou=people,dc=example,dc=com
ou=ranges,dc=example,dc=com
cn=entry,ou=people,dc=example,dc=com
[3] Configure the dna plugin
# ldapmodify ...
dn: cn=Distributed Numeric Assignment Plugin,cn=plugins
changetype: modify
replace: nsslapd-pluginEnabled
nsslapd-pluginEnabled: on
dn: cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config
changetype: add
objectClass: top
objectClass: dnaPluginConfig
cn: dnaConfig
dnaType: description
dnaMaxValue: 10000
dnaMagicRegen: 0
dnaFilter: (objectclass=top)
dnaScope: ou=people,dc=example,dc=com
dnaNextValue: 500
dnaSharedCfgDN: ou=ranges,dc=example,dc=com
dn: dnaHostname=localhost.localdomain+dnaPortNum=389,ou=ranges,dc=example,dc=com
changetype: add
objectClass: dnaSharedConfig
objectClass: top
dnaHostname: localhost.localdomain
dnaPortNum: 389
dnaSecurePortNum: 636
dnaRemainingValues: 9501
[4] Restart the server
[5] Change dnaType to use a attribute with a trailing space: "description " or an invalid attribute "foo"
# ldapmodify...
dn: cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config
changetype: modify
replace: dnaType
dnaType: foo
This ldapmodify should fail with an error 53. This prevents the invalid attribute from being processed internally - which is what lead to the crash in the first place.
[6] Done!
Fixed upstream. Executed all steps given above. No Crash found. [root@dhcp201-126 ~]# ldapmodify -x -h localhost -p 389 -D "cn=Directory Manager" -w Secret123 << EOF > dn: cn=Distributed Numeric Assignment Plugin,cn=config > changetype: modify > replace: nsslapd-pluginEnabled > nsslapd-pluginEnabled: on > EOF modifying entry "cn=Distributed Numeric Assignment Plugin,cn=config" ldap_modify: No such object (32) [root@dhcp201-126 ~]# ldapmodify -x -h localhost -p 389 -D "cn=Directory Manager" -w Secret123 << EOF > dn: cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config > changetype: modify > replace: nsslapd-pluginEnabled > nsslapd-pluginEnabled: on > EOF modifying entry "cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config" [root@dhcp201-126 ~]# ldapmodify -x -h localhost -p 389 -D "cn=Directory Manager" -w Secret123 << EOF > dn: cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config > changetype: add > objectClass: top > objectClass: dnaPluginConfig > cn: dnaConfig > dnaType: description > dnaMaxValue: 10000 > dnaMagicRegen: 0 > dnaFilter: (objectclass=top) > dnaScope: ou=people,dc=example,dc=com > dnaNextValue: 500 > dnaSharedCfgDN: ou=ranges,dc=example,dc=com > EOF adding new entry "cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config" [root@dhcp201-126 ~]# ldapmodify -x -h localhost -p 389 -D "cn=Directory Manager" -w Secret123 << EOF > dn: dnaHostname=localhost.localdomain+dnaPortNum=389,ou=ranges,dc=example,dc=com > changetype: add > objectClass: dnaSharedConfig > objectClass: top > dnaHostname: localhost.localdomain > dnaPortNum: 389 > dnaSecurePortNum: 636 > dnaRemainingValues: 9501 > EOF adding new entry "dnaHostname=localhost.localdomain+dnaPortNum=389,ou=ranges,dc=example,dc=com" [root@dhcp201-126 ~]# ldapmodify -x -h localhost -p 389 -D "cn=Directory Manager" -w Secret123 << EOF > dn: cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config > changetype: modify > replace: dnaType > dnaType: foo > EOF modifying entry "cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config" ldap_modify: Server is unwilling to perform (53) additional info: Changes result in an invalid DNA configuration. [root@dhcp201-126 ~]# systemctl status dirsrv@dhcp201-126 dirsrv - 389 Directory Server dhcp201-126. Loaded: loaded (/usr/lib/systemd/system/dirsrv@.service; enabled) Active: active (running) since Mon 2014-12-15 13:41:32 IST; 53s ago Process: 8251 ExecStopPost=/bin/rm -f /var/run/dirsrv/slapd-%i.pid (code=exited, status=0/SUCCESS) Process: 8253 ExecStart=/usr/sbin/ns-slapd -D /etc/dirsrv/slapd-%i -i /var/run/dirsrv/slapd-%i.pid -w /var/run/dirsrv/slapd-%i.startpid (code=exited, status=0/SUCCESS) Main PID: 8254 (ns-slapd) CGroup: /system.slice/system-dirsrv.slice/dirsrv └─8254 /usr/sbin/ns-slapd -D /etc/dirsrv/slapd-dhcp201-126 -i /var/run/dirsrv/slapd-dhcp201-126.pid -w /var/run/dirsrv/slapd-dhcp201-126... Dec 15 13:41:32 dhcp201-126.englab.pnq.redhat.com systemd[1]: Starting 389 Directory Server dhcp201-126.... Dec 15 13:41:32 dhcp201-126.englab.pnq.redhat.com systemd[1]: Started 389 Directory Server dhcp201-126.. [root@dhcp201-126 ~]# ldapmodify -x -h localhost -p 389 -D "cn=Directory Manager" -w Secret123 << EOF dn: cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config changetype: modify replace: dnaType dnaType: 0 EOF modifying entry "cn=dna config,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config" ldap_modify: Server is unwilling to perform (53) additional info: Changes result in an invalid DNA configuration. [root@dhcp201-126 ~]# systemctl status dirsrv@dhcp201-126 dirsrv - 389 Directory Server dhcp201-126. Loaded: loaded (/usr/lib/systemd/system/dirsrv@.service; enabled) Active: active (running) since Mon 2014-12-15 13:41:32 IST; 1min 4s ago Process: 8251 ExecStopPost=/bin/rm -f /var/run/dirsrv/slapd-%i.pid (code=exited, status=0/SUCCESS) Process: 8253 ExecStart=/usr/sbin/ns-slapd -D /etc/dirsrv/slapd-%i -i /var/run/dirsrv/slapd-%i.pid -w /var/run/dirsrv/slapd-%i.startpid (code=exited, status=0/SUCCESS) Main PID: 8254 (ns-slapd) CGroup: /system.slice/system-dirsrv.slice/dirsrv └─8254 /usr/sbin/ns-slapd -D /etc/dirsrv/slapd-dhcp201-126 -i /var/run/dirsrv/slapd-dhcp201-126.pid -w /var/run/dirsrv/slapd-dhcp201-126... Dec 15 13:41:32 dhcp201-126.englab.pnq.redhat.com systemd[1]: Starting 389 Directory Server dhcp201-126.... Dec 15 13:41:32 dhcp201-126.englab.pnq.redhat.com systemd[1]: Started 389 Directory Server dhcp201-126.. [root@dhcp201-126 ~]# Marking bug as VERIFIED. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2015-0416.html |