Alexander Silveröhrt wrote:
And again if not started with LD_PRELOAD then DBI will fail root@itop1-db1:~# freeradius Can't load '/usr/local/lib/perl/5.10.1/auto/DBI/DBI.so' for module DBI: /usr/local/lib/perl/5.10.1/auto/DBI/DBI.so: undefined symbol: PL_memory_wrap at /usr/lib/perl/5.10/DynaLoader.pm line 192. at /usr/local/lib/perl/5.10.1/DBI.pm line 266 BEGIN failed--compilation aborted at /usr/local/lib/perl/5.10.1/DBI.pm line 266. Compilation failed in require at /etc/freeradius/customhook.pl line 10.
Debian-built perl (installed in /usr/lib/perl5) tries to load DBI module from locally built perl (installed in /usr/local/lib/perl). It's a bad idea. Try to install debian-built DBI module (libdbi-perl) and use it. I think the same error (mashup of multiple perl builds) was encountered by Johan Meiring. Debian-built freeradius uses debian-built perl. So only debian-built perl modules can be loaded by rlm_perl. You can easily test your debian-built perl supports loading of DBI (and so debian-built freeradius): /usr/bin/perl -e \ 'use DBI; print join("\n", DBI->available_drivers), "\n";'