You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Michael Cunningham <ar...@xpedite.com> on 2001/12/12 17:22:17 UTC

Apache problem loading auth_ldap module

Hiya,

I am attempting to get Auth_ldap-1.6.0 to work with 
Apache 1.3.22/Openldap 2.0.18 on Solaris 8 fully patched with the latest
patch clusters. I am using gcc version 3.0.2 and all the other 
latest gnu utilities to make/link/ar etc. 

I spoke with te auth_ldap creator and he feels that this is probably 
and Apache problem. 

Everything compiles and links fine.. apache works well without auth_ldap.
Openldap works great using ssl/tls and not.. 

When I try to activate auth_ldap with a loadmodule I get the following. 

LoadModule auth_ldap_module   libexec/auth_ldap.so

ldap-solaris # ./httpd
Syntax error on line 205 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/libexec/auth_ldap.so into server: ld.so.1:
./httpd: fatal: relocation error: file
/usr/local/apache/libexec/auth_ldap.so: symbol ap_set_string_slot:
referenced symbol not found

When doing an ldd -d on auth_ldap.so I get the following.. 

ldap-solaris # ldd -d  /usr/local/apache/libexec/auth_ldap.so
libldap.so.2 =>  /usr/lib/libldap.so.2
liblber.so.2 =>  /usr/lib/liblber.so.2
libresolv.so.2 =>        /usr/lib/libresolv.so.2
libssl.so.0.9.6 =>       /usr/lib/libssl.so.0.9.6
libcrypto.so.0.9.6 =>    /usr/lib/libcrypto.so.0.9.6
libc.so.1 =>     /usr/lib/libc.so.1
libgcc_s.so.1 =>         /usr/lib/libgcc_s.so.1
libsocket.so.1 =>        /usr/lib/libsocket.so.1
libnsl.so.1 =>   /usr/lib/libnsl.so.1
libdl.so.1 =>    /usr/lib/libdl.so.1
libmp.so.2 =>    /usr/lib/libmp.so.2
        symbol not found: ap_set_string_slot  
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_string_slot
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_flag_slot
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_flag_slot
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_flag_slot
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_flag_slot
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_flag_slot
(/usr/local/apache/libexec/auth_ldap.so)
        symbol not found: ap_set_flag_slot
(/usr/local/apache/libexec/auth_ldap.so)
        /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
        symbol not found: ap_dummy_mutex
(/usr/local/apache/libexec/auth_ldap.so)

So it looks like the auth_ldap code cant find these 
apache functions which are compiled directly into apache's httpd. 
Any idea why? It looks like apache is exporting these functions
correctly.  Auth_ldap can find all sorts of other apache api
functions.. just not these. 

Thanks for any help you can offer.. 

Mike
-----------------------------------------------------------------
The environment is as follows.. 

PATH=/usr/local/bin:/usr/sbin:/usr/bin:/bin:/sbin
LDFLAG=-L /usr/lib -L/usr/local/lib -R /usr/local/include -R
/usr/include/openssl EDITOR=vi LOGNAME=root PS1=ldap-solaris # 
SHELL=/bin/ksh
HOME=/
LD_LIBRARY_PATH=
TERM=xterm
PWD=/export/home/apache-test/old/apache_1.3.22
TZ=US/Eastern

Apache was configured with this command.. and it works well without
auth_ldap

./configure --enable-module=so --enable-module=auth

Auth_ldap was configured with this command..

LIBS=-lresolv CC=gcc ./configure --with-apxs=/usr/local/apache/bin/apxs

creating cache ./config.cache
checking for apxs... /usr/local/apache/bin/apxs
checking whether apxs works... yes
checking for ber_init in -llber... yes
checking for ldap_init in -lldap... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for working const... yes
checking for vprintf... yes
checking for strdup... yes
checking for strerror... yes
updating cache ./config.cache
creating ./config.status
creating Makefile

ldap-solaris # more config.log (for auth_ldap)
This file contains any messages produced by compilers while running
configure, to aid debugging if configure makes a mistake.

configure:620: checking for apxs
configure:649: checking whether apxs works
configure:722: checking for ber_init in -llber
configure:741: gcc -o conftest    conftest.c -llber -lnsl -lresolv 1>&5
configure:769: checking for ldap_init in -lldap
configure:788: gcc -o conftest    conftest.c -lldap  -llber -lresolv 1>&5
configure:836: checking how to run the C preprocessor
configure:857: gcc -E  conftest.c >/dev/null 2>conftest.out
configure:916: checking for ANSI C header files
configure:929: gcc -E  conftest.c >/dev/null 2>conftest.out
configure:996: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
configure:1021: checking for working const
configure:1075: gcc -c   conftest.c 1>&5
configure:1097: checking for vprintf
configure:1125: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
configure:1204: checking for strdup
configure:1232: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
configure:1204: checking for strerror
configure:1232: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5




---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org


Re: Apache problem loading auth_ldap module

Posted by Michael Cunningham <ar...@xpedite.com>.
I have also confirmed this occurs on Solaris 2.6 and 7 as well.. 


On Wed, 12 Dec 2001, Michael Cunningham wrote:

> Hiya,
> 
> I am attempting to get Auth_ldap-1.6.0 to work with 
> Apache 1.3.22/Openldap 2.0.18 on Solaris 8 fully patched with the latest
> patch clusters. I am using gcc version 3.0.2 and all the other 
> latest gnu utilities to make/link/ar etc. 
> 
> I spoke with te auth_ldap creator and he feels that this is probably 
> and Apache problem. 
> 
> Everything compiles and links fine.. apache works well without auth_ldap.
> Openldap works great using ssl/tls and not.. 
> 
> When I try to activate auth_ldap with a loadmodule I get the following. 
> 
> LoadModule auth_ldap_module   libexec/auth_ldap.so
> 
> ldap-solaris # ./httpd
> Syntax error on line 205 of /usr/local/apache/conf/httpd.conf:
> Cannot load /usr/local/apache/libexec/auth_ldap.so into server: ld.so.1:
> ./httpd: fatal: relocation error: file
> /usr/local/apache/libexec/auth_ldap.so: symbol ap_set_string_slot:
> referenced symbol not found
> 
> When doing an ldd -d on auth_ldap.so I get the following.. 
> 
> ldap-solaris # ldd -d  /usr/local/apache/libexec/auth_ldap.so
> libldap.so.2 =>  /usr/lib/libldap.so.2
> liblber.so.2 =>  /usr/lib/liblber.so.2
> libresolv.so.2 =>        /usr/lib/libresolv.so.2
> libssl.so.0.9.6 =>       /usr/lib/libssl.so.0.9.6
> libcrypto.so.0.9.6 =>    /usr/lib/libcrypto.so.0.9.6
> libc.so.1 =>     /usr/lib/libc.so.1
> libgcc_s.so.1 =>         /usr/lib/libgcc_s.so.1
> libsocket.so.1 =>        /usr/lib/libsocket.so.1
> libnsl.so.1 =>   /usr/lib/libnsl.so.1
> libdl.so.1 =>    /usr/lib/libdl.so.1
> libmp.so.2 =>    /usr/lib/libmp.so.2
>         symbol not found: ap_set_string_slot  
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_string_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_flag_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_flag_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_flag_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_flag_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_flag_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         symbol not found: ap_set_flag_slot
> (/usr/local/apache/libexec/auth_ldap.so)
>         /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
>         symbol not found: ap_dummy_mutex
> (/usr/local/apache/libexec/auth_ldap.so)
> 
> So it looks like the auth_ldap code cant find these 
> apache functions which are compiled directly into apache's httpd. 
> Any idea why? It looks like apache is exporting these functions
> correctly.  Auth_ldap can find all sorts of other apache api
> functions.. just not these. 
> 
> Thanks for any help you can offer.. 
> 
> Mike
> -----------------------------------------------------------------
> The environment is as follows.. 
> 
> PATH=/usr/local/bin:/usr/sbin:/usr/bin:/bin:/sbin
> LDFLAG=-L /usr/lib -L/usr/local/lib -R /usr/local/include -R
> /usr/include/openssl EDITOR=vi LOGNAME=root PS1=ldap-solaris # 
> SHELL=/bin/ksh
> HOME=/
> LD_LIBRARY_PATH=
> TERM=xterm
> PWD=/export/home/apache-test/old/apache_1.3.22
> TZ=US/Eastern
> 
> Apache was configured with this command.. and it works well without
> auth_ldap
> 
> ./configure --enable-module=so --enable-module=auth
> 
> Auth_ldap was configured with this command..
> 
> LIBS=-lresolv CC=gcc ./configure --with-apxs=/usr/local/apache/bin/apxs
> 
> creating cache ./config.cache
> checking for apxs... /usr/local/apache/bin/apxs
> checking whether apxs works... yes
> checking for ber_init in -llber... yes
> checking for ldap_init in -lldap... yes
> checking how to run the C preprocessor... gcc -E
> checking for ANSI C header files... yes
> checking for working const... yes
> checking for vprintf... yes
> checking for strdup... yes
> checking for strerror... yes
> updating cache ./config.cache
> creating ./config.status
> creating Makefile
> 
> ldap-solaris # more config.log (for auth_ldap)
> This file contains any messages produced by compilers while running
> configure, to aid debugging if configure makes a mistake.
> 
> configure:620: checking for apxs
> configure:649: checking whether apxs works
> configure:722: checking for ber_init in -llber
> configure:741: gcc -o conftest    conftest.c -llber -lnsl -lresolv 1>&5
> configure:769: checking for ldap_init in -lldap
> configure:788: gcc -o conftest    conftest.c -lldap  -llber -lresolv 1>&5
> configure:836: checking how to run the C preprocessor
> configure:857: gcc -E  conftest.c >/dev/null 2>conftest.out
> configure:916: checking for ANSI C header files
> configure:929: gcc -E  conftest.c >/dev/null 2>conftest.out
> configure:996: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
> configure:1021: checking for working const
> configure:1075: gcc -c   conftest.c 1>&5
> configure:1097: checking for vprintf
> configure:1125: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
> configure:1204: checking for strdup
> configure:1232: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
> configure:1204: checking for strerror
> configure:1232: gcc -o conftest    conftest.c -lldap -llber -lresolv 1>&5
> 
> 
> 
> 


---------------------------------------------------------------------
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
For additional commands, e-mail: users-help@httpd.apache.org