Hi Josip, Here are a few commands that I just launched on my server:
#uname -a Linux maggie 2.6.26-2-amd64 #1 SMP Thu Nov 25 04:30:55 UTC 2010 x86_64 GNU/Linux #dpkg -l | grep libltdl ii libltdl3 1.5.26-4+lenny1 A system independent dlopen wrapper for GNU ii libltdl7 2.2.6b-2~bpo50+1 A system independent dlopen wrapper for GNU #dpkg -l | grep freeradius ii freeradius 2.1.10+dfsg-2~bpo50+1 a high-performance and highly configurable R ii freeradius-common 2.1.10+dfsg-2~bpo50+1 FreeRADIUS common files ii freeradius-ldap 2.1.10+dfsg-2~bpo50+1 LDAP module for FreeRADIUS server ii freeradius-mysql 2.1.10+dfsg-2~bpo50+1 MySQL module for FreeRADIUS server ii freeradius-utils 2.1.10+dfsg-2~bpo50+1 FreeRADIUS client utilities ii libfreeradius2 2.1.10+dfsg-2~bpo50+1 FreeRADIUS shared library #ldd /usr/sbin/freeradius linux-vdso.so.1 => (0x00007fff701db000) libfreeradius-radius-2.1.10.so => /usr/lib/freeradius/libfreeradius-radius-2.1.10.so (0x00007f1018ce1000) libnsl.so.1 => /lib/libnsl.so.1 (0x00007f1018ac9000) libresolv.so.2 => /lib/libresolv.so.2 (0x00007f10188b5000) libpthread.so.0 => /lib/libpthread.so.0 (0x00007f1018699000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f1018461000) libltdl.so.7 => /usr/lib/libltdl.so.7 (0x00007f1018258000) libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00007f1018006000) libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0x00007f1017c6b000) libc.so.6 => /lib/libc.so.6 (0x00007f1017918000) /lib64/ld-linux-x86-64.so.2 (0x00007f1018f03000) libdl.so.2 => /lib/libdl.so.2 (0x00007f1017714000) libz.so.1 => /usr/lib/libz.so.1 (0x00007f10174fd000) => FreeRADIUS seems to rely on libltdl.so.7, as expected. #ls -la /usr/lib/libltdl.so.7* lrwxrwxrwx 1 root root 16 2010-12-29 17:41 /usr/lib/libltdl.so.7 -> libltdl.so.7.2.1 -rw-r--r-- 1 root root 36408 2010-08-13 13:51 /usr/lib/libltdl.so.7.2.1 #ltrace -S -o freeradius.ltrace -C freeradius -X #tail freeradius.ltrace <... write resumed> ) = 96 vsnprintf(""", 4414891, "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377"..., 0x435dac) = 45 vsnprintf("\001\200\255\373\351\177", 4396650, "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377"..., 0x43166a) = 81 write(1, "/etc/freeradius/modules/python[6"..., 82 <unfinished ...> SYS_write(1, "/etc/freeradius/modules/python[6"..., 82) = 82 <... write resumed> ) = 82 free(0xfd4930) = <void> exit(1 <unfinished ...> SYS_exit_group(1 <no return ...> +++ exited (status 1) +++ #grep -i advise freeradius.ltrace => [no output] Apparently, the string "advise" is nowhere in ltrace's output. #grep lt_dl freeradius.ltrace lt_dlpreload_default(0x4303c0, 0x1bbe030, 1, 0x1be15d0, 4) = 0 lt_dlinit(0x4303c0, 0x1bbe030, 1, 0x1be15d0, 4) = 0 lt_dlsetsearchpath(0x1bea110, 0x7f27c34d4086, 0, 0xffffffff, 0) = 0 lt_dlopenext(0x7fff94d3d210, 0x7fff94d3d000, 0, 0x7fff94d3d219, 0x2525252525252525 <unfinished ...> <... lt_dlopenext resumed> ) = 0x1cffe10 lt_dlsym(0x1cffe10, 0x7fff94d3d110, 0x2d2d2d2d2d2d2d2d, 0x2d2d2d2d2d6d002d, 0xfefefefefefefeff) = 0x7f27c2771f40 lt_dlopenext(0x7fff94d3d210, 0x1d004a6, 0, 0xffffffff, 0x2525252525252525 <unfinished ...> <... lt_dlopenext resumed> ) = 0x1d00970 lt_dlsym(0x1d00970, 0x7fff94d3d110, 0x2d2d2d2d2d2d2d2d, 0x2d2d2d2d2d6d002d, 0xfefefefefefefeff) = 0x7f27c256f360 lt_dlopenext(0x7fff94d3d210, 0x1d00fd7, 0, 0xffffffff, 0x2525252525252525 <unfinished ...> <... lt_dlopenext resumed> ) = 0x1d01730 lt_dlsym(0x1d01730, 0x7fff94d3d110, 0xfeff6d6e68736071, 0x6e6f69746172, 0xfefefefefefefeff) = 0x7f27c236c3a0 lt_dlopenext(0x7fff94d3d210, 0x1d00fd4, 0, 0xffffffff, 0x2525252525252525 <unfinished ...> <... lt_dlopenext resumed> ) = 0x1d020b0 lt_dlsym(0x1d020b0, 0x7fff94d3d110, 0xfefeff646c68736d, 0x656d69746e, 0xfefefefefefefeff) = 0x7f27c216a580 lt_dlopenext(0x7fff94d3d210, 0x1d02744, 0, 0xffffffff, 0x2525252525252525 <unfinished ...> <... lt_dlopenext resumed> ) = 0x1d02af0 lt_dlsym(0x1d02af0, 0x7fff94d3d110, 0xfefeff646bff6d6e, 0x656d006e6f, 0xfefefefefefefeff) = 0x7f27c1f674e0 I hope this answers your questions. Thanks, Aurélien Le 6 janv. 2011 à 14:44, Josip Rodin a écrit : > On Thu, Jan 06, 2011 at 11:26:44AM +0100, Aurélien Geron wrote: >> Hi and happy new year to everyone, >> >> In april I wrote the message below about python modules not being able to >> load dynamic libraries on Debian Lenny. > >> I did not have time to test this ever since, but I just did, and >> unfortunately, I still have the same problem on Debian Lenny, using the >> latest FreeRADIUS backport for Lenny (it is based on FreeRADIUS 2.1.10, >> the Debian package is labelled "2.1.10+dfsg-2~bpo50+1"). >> >>> - running a perfectly standard Debian Lenny (2.6.26-2-amd64) >>> - installed the latest freeradius package from the lenny-backports >>> (2.1.8+dfsg-1~bpo50+1) > > Can you verify that your exact freeradius packages used now - do indeed link > to libltdl7 and use the new code? > > Generic amd64 packages should be fine, but do check just in case... > > Perhaps also use ltrace to find the symbol lookup function used? > You need to see some lt_dladvise_*() and/or lt_dlopenadvise() mentioned. > > (Assuming the cause for this is http://bugs.debian.org/416266 ) > > -- > 2. That which causes joy or happiness. > - > List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html