You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Ray Van Dolson <ra...@digitalpath.net> on 2004/11/06 02:10:00 UTC
[users@httpd] httpd segfaults when called via apachectl w/ mod_auth_ldap
Red Hat Enterprise ES 3
Apache 2.0.52 compiled with the following configuration:
CFLAGS="-O3" ./configure \
--prefix=/usr/local/apache2 \
--enable-ssl \
--enable-so \
--enable-rewrite=shared \
--enable-expires \
--enable-info \
--enable-deflate \
--enable-ldap \
--enable-auth-ldap \
--with-ldap \
--with-ssl=/usr
PHP 4.3.8 is compiled as a DSL and has Oracle 10g client libraries linked
in.
I have the following in my envvars file:
export ORACLE_SID=dpndb
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/10.1.0/client_1
export TNS_ADMIN=/u01/app/oracle/product/10.1.0/client_1/network/admin
export TWO_TASK=/u01/app/oracle/product/10.1.0/client_1/network/admin
export NLS_LANG="English_America.WE8ISO8859P1"
export LD_LIBRARY_PATH="$ORACLE_HOME/lib:/usr/local/apache2/lib:$LD_LIBRARY_PATH"
export LD_PRELOAD=/u01/app/oracle/product/10.1.0/client_1/lib/libclntsh.so.10.1
This setup works great until I attempt to add LDAP authentication support.
Here is the test addition I have made to my httpd.conf file:
LDAPSharedCacheSize 200000
LDAPCacheEntries 1024
LDAPCacheTTL 600
LDAPOpCacheEntries 1024
LDAPOpCacheTTL 600
<Location /ldap-status>
SetHandler ldap-status
Order deny,allow
Deny from all
Allow from domain.net
AuthType basic
AuthName "LDAP Login"
AuthLDAPEnabled on
AuthLDAPURL "ldap://hostname.net/dc=ldap,dc=domain,dc=net?uid"
AuthLDAPAuthoritative on
require valid-user
</Location>
When I attempt to do anything from apachectl (start, stop, configtest), I
get the following:
[root@webdev bin]# ./apachectl configtest
./apachectl: line 99: 18206 Segmentation fault $HTTPD -t
If I run httpd -t by itself from the prompt, I get "Syntax OK". If I
bypass the apachectl script completely and stop my httpd server with httpd
-k stop and start it up again with httpd -k start -DSSL everything works
properly, including the mod_auth_ldap authentication.
As soon as I remove the above LDAP configuration entries from httpd.conf,
apachectl once again works correctly.
However! If I leave the LDAP configuration in my httpd.conf as it is listed
above, edit my envvars file and remove the LD_PRELOAD line, apachectl does
*not* segfault and I can once again use it to manage my httpd process.
Perhaps there is something I do not understand about LD_PRELOAD ... but it
seems odd that apachectl (or httpd to be exact) Segfaults because of the
combination of it and the LDAP config options in httpd.conf.
I have tried adding /usr/lib/libldap.so.2 to my LD_PRELOAD line to no
avail.
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org