You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2005/09/08 21:49:01 UTC

DO NOT REPLY [Bug 36563] New: - mod_ldap caching breaks when value is NULL

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=36563>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=36563

           Summary: mod_ldap caching breaks when value is NULL
           Product: Apache httpd-2.0
           Version: 2.0.53
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: normal
          Priority: P2
         Component: mod_ldap
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: ondrej@sury.org


I am author of mod_vhost_ldap (second module based on mod_ldap :-) and I found
some rather nasty bug in mod_ldap caching.

There is error in caching, when any attribute returned from LDAP is null, then
mod_ldap caches only attributes fetched before this null attribute.

Example from logs:
(first run)
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(383): [client 172.16.21.2]
[mod_vhost_ldap.c]: dn:
apacheServerName=000001.tld,ou=VHosts,ou=web,dc=active24,dc=com
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheServerName: 000001.tld
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheServerAdmin: (null)
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheDocumentRoot: /var/www/00/10/04/000001.tld/www/
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheScriptAlias:
/var/www/00/10/04/000001.tld/cgi-bin
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheSuexecUid: 1004
[Thu Sep 08 21:30:13 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheSuexecGid: 1004

(second run -> results from cache)
[Thu Sep 08 21:30:18 2005] [debug] mod_vhost_ldap.c(383): [client 172.16.21.2]
[mod_vhost_ldap.c]: dn:
apacheServerName=000001.tld,ou=VHosts,ou=web,dc=active24,dc=com
[Thu Sep 08 21:30:18 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheServerName: 000001.tld
[Thu Sep 08 21:30:18 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheServerAdmin: (null)
[Thu Sep 08 21:30:18 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheDocumentRoot: (null)
[Thu Sep 08 21:30:18 2005] [debug] mod_vhost_ldap.c(395): [client 172.16.21.2]
[mod_vhost_ldap.c]: processing apacheScriptAlias: (null)
[Thu Sep 08 21:30:19 2005] [notice] child pid 3379 exit signal Segmentation
fault (11)

Quick workaround is to move attributes which can be NULL to end or to define
_all_ attributes in LDAP.

Corect way is to fix this bug in mod_ldap.  Since structure is returned ok on
first run I think that there is a way how to fix it.

I will look on this when I have some time.

Ondrej.
P.S.: Tested on 2.0.53, but I have checked 2.0.54 ChangeLog and diffs and it
includes only addition of LDAPConnectionTimeout.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org