Re: rlm_perl segfault
I've applied the patch you provided and freeradius starts up without issue now. Thanks for your help it's much appreciated. On Tue, 2006-03-14 at 12:04 +0200, Boian Jordanov wrote: On Tuesday 14 March 2006 02:08, Grant Zanetti wrote: On Mon, 2006-03-13 at 11:48 +0200, Boian Jordanov wrote: On Friday 10 March 2006 00:39, Grant Zanetti wrote: In addition to this I have done a manual compile (non-package) and have a better back trace perhaps: Which version of libperl ? libperl5.8 (5.8.8-2). libperl is package installed. Freeradius is now manually compiled. Apply this patch to freeradius-1.1.0 rlm_perl - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
Re: rlm_perl segfault
On Mon, 2006-03-13 at 11:48 +0200, Boian Jordanov wrote: On Friday 10 March 2006 00:39, Grant Zanetti wrote: In addition to this I have done a manual compile (non-package) and have a better back trace perhaps: Which version of libperl ? libperl5.8 (5.8.8-2). libperl is package installed. Freeradius is now manually compiled. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
Re: rlm_perl segfault
In addition to this I have done a manual compile (non-package) and have a better back trace perhaps: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1211832640 (LWP 6331)] 0xb7a74ca2 in Perl_hv_clear_placeholders () from /usr/lib/libperl.so.5.8 (gdb) bt #0 0xb7a74ca2 in Perl_hv_clear_placeholders () from /usr/lib/libperl.so.5.8 #1 0xb7a75369 in Perl_hv_delayfree_ent () from /usr/lib/libperl.so.5.8 #2 0xb7a762cc in Perl_hv_fetch () from /usr/lib/libperl.so.5.8 #3 0xb7a217ba in Perl_gv_fetchpv () from /usr/lib/libperl.so.5.8 #4 0xb7a1e14a in Perl_my_failure_exit () from /usr/lib/libperl.so.5.8 #5 0xb7a2097d in perl_parse () from /usr/lib/libperl.so.5.8 #6 0xb7b31ec5 in perl_instantiate (conf=0x80675f0, instance=0x0) at rlm_perl.c:803 #7 0x080557c5 in find_module_instance (instname=0x806c268 ipalloc) at modules.c:358 #8 0x0805701a in do_compile_modsingle (component=3, ci=0x806c248, filename=0x8062274 radiusd.conf, grouptype=0, modname=0xbfccda84) at modcall.c:1005 #9 0x08055eef in setup_modules () at modules.c:570 #10 0x0804cc05 in main (argc=2, argv=0xbfcced84) at radiusd.c:960 USE_ITHREADS is defined so it's using cloned perl instances. On Wed, 2006-03-08 at 11:20 +0200, Boian Jordanov wrote: Can you check which version of libperl you are using ? I think on Debian it was separate package ? Also please can you try to run freeradius with example.pl which is included in freeradius. On Wednesday 08 March 2006 05:12, Grant Zanetti wrote: I've just tried to get the rlm_perl module working. I'm running debian 3.1 with perl 5.8.8. I've tried installing the prebuilt debian packages as well as from source with dpkg-buildpackage -rfakeroot -uc -b However after loading the module freeradius segfaults. Freeradius config: modules { perl ipalloc { module = /etc/freeradius/dynip.pl func_accounting = accounting func_post_auth = post_auth } } post-auth { ipalloc } When running freeradius I get traffic:/etc/freeradius# freeradius -X Starting - reading configuration files ... reread_config: reading radiusd.conf Config: including file: /etc/freeradius/proxy.conf Config: including file: /etc/freeradius/clients.conf Config: including file: /etc/freeradius/snmp.conf Config: including file: /etc/freeradius/eap.conf Config: including file: /etc/freeradius/sql.conf main: prefix = /usr main: localstatedir = /var main: logdir = /var/log/freeradius main: libdir = /usr/lib/freeradius main: radacctdir = /var/log/freeradius/radacct main: hostname_lookups = no main: max_request_time = 30 main: cleanup_delay = 5 main: max_requests = 1024 main: delete_blocked_requests = 0 main: port = 0 main: allow_core_dumps = no main: log_stripped_names = no main: log_file = /var/log/freeradius/radius.log main: log_auth = no main: log_auth_badpass = no main: log_auth_goodpass = no main: pidfile = /var/run/freeradius/freeradius.pid main: user = freerad main: group = freerad main: usercollide = no main: lower_user = no main: lower_pass = no main: nospace_user = no main: nospace_pass = no main: checkrad = /usr/sbin/checkrad main: proxy_requests = yes proxy: retry_delay = 5 proxy: retry_count = 3 proxy: synchronous = no proxy: default_fallback = yes proxy: dead_time = 120 proxy: post_proxy_authorize = no proxy: wake_all_if_all_dead = no security: max_attributes = 200 security: reject_delay = 1 security: status_server = no main: debug_level = 0 read_config_files: reading dictionary read_config_files: reading naslist Using deprecated naslist file. Support for this will go away soon. read_config_files: reading clients read_config_files: reading realms radiusd: entering modules setup Module: Library search path is /usr/lib/freeradius Module: Loaded exec exec: wait = yes exec: program = (null) exec: input_pairs = request exec: output_pairs = (null) exec: packet_type = (null) rlm_exec: Wait=yes but no output defined. Did you mean output=none? Module: Instantiated exec (exec) Module: Loaded expr Module: Instantiated expr (expr) Module: Loaded PAP pap: encryption_scheme = crypt Module: Instantiated pap (pap) Module: Loaded CHAP Module: Instantiated chap (chap) Module: Loaded MS-CHAP mschap: use_mppe = yes mschap: require_encryption = no mschap: require_strong = no mschap: with_ntdomain_hack = no mschap: passwd = (null) mschap: authtype = MS-CHAP mschap: ntlm_auth = (null) Module: Instantiated mschap (mschap) Module: Loaded System unix: cache = no unix: passwd = (null) unix: shadow = /etc/shadow
Re: rlm_perl segfault
I'm running libperl5.8 (5.8.8-2) with perl (5.8.8-2) Using example.pl yields the exact same results. In fact using a script that doesn't exist segfaults in the same manner. It's definitely segfaulting before it begins parsing the perl. On Wed, 2006-03-08 at 11:20 +0200, Boian Jordanov wrote: Can you check which version of libperl you are using ? I think on Debian it was separate package ? Also please can you try to run freeradius with example.pl which is included in freeradius. On Wednesday 08 March 2006 05:12, Grant Zanetti wrote: I've just tried to get the rlm_perl module working. I'm running debian 3.1 with perl 5.8.8. I've tried installing the prebuilt debian packages as well as from source with dpkg-buildpackage -rfakeroot -uc -b However after loading the module freeradius segfaults. Freeradius config: modules { perl ipalloc { module = /etc/freeradius/dynip.pl func_accounting = accounting func_post_auth = post_auth } } post-auth { ipalloc } When running freeradius I get traffic:/etc/freeradius# freeradius -X Starting - reading configuration files ... reread_config: reading radiusd.conf Config: including file: /etc/freeradius/proxy.conf Config: including file: /etc/freeradius/clients.conf Config: including file: /etc/freeradius/snmp.conf Config: including file: /etc/freeradius/eap.conf Config: including file: /etc/freeradius/sql.conf main: prefix = /usr main: localstatedir = /var main: logdir = /var/log/freeradius main: libdir = /usr/lib/freeradius main: radacctdir = /var/log/freeradius/radacct main: hostname_lookups = no main: max_request_time = 30 main: cleanup_delay = 5 main: max_requests = 1024 main: delete_blocked_requests = 0 main: port = 0 main: allow_core_dumps = no main: log_stripped_names = no main: log_file = /var/log/freeradius/radius.log main: log_auth = no main: log_auth_badpass = no main: log_auth_goodpass = no main: pidfile = /var/run/freeradius/freeradius.pid main: user = freerad main: group = freerad main: usercollide = no main: lower_user = no main: lower_pass = no main: nospace_user = no main: nospace_pass = no main: checkrad = /usr/sbin/checkrad main: proxy_requests = yes proxy: retry_delay = 5 proxy: retry_count = 3 proxy: synchronous = no proxy: default_fallback = yes proxy: dead_time = 120 proxy: post_proxy_authorize = no proxy: wake_all_if_all_dead = no security: max_attributes = 200 security: reject_delay = 1 security: status_server = no main: debug_level = 0 read_config_files: reading dictionary read_config_files: reading naslist Using deprecated naslist file. Support for this will go away soon. read_config_files: reading clients read_config_files: reading realms radiusd: entering modules setup Module: Library search path is /usr/lib/freeradius Module: Loaded exec exec: wait = yes exec: program = (null) exec: input_pairs = request exec: output_pairs = (null) exec: packet_type = (null) rlm_exec: Wait=yes but no output defined. Did you mean output=none? Module: Instantiated exec (exec) Module: Loaded expr Module: Instantiated expr (expr) Module: Loaded PAP pap: encryption_scheme = crypt Module: Instantiated pap (pap) Module: Loaded CHAP Module: Instantiated chap (chap) Module: Loaded MS-CHAP mschap: use_mppe = yes mschap: require_encryption = no mschap: require_strong = no mschap: with_ntdomain_hack = no mschap: passwd = (null) mschap: authtype = MS-CHAP mschap: ntlm_auth = (null) Module: Instantiated mschap (mschap) Module: Loaded System unix: cache = no unix: passwd = (null) unix: shadow = /etc/shadow unix: group = (null) unix: radwtmp = /var/log/freeradius/radwtmp unix: usegroup = no unix: cache_reload = 600 Module: Instantiated unix (unix) Module: Loaded eap eap: default_eap_type = md5 eap: timer_expire = 60 eap: ignore_unknown_eap_types = no eap: cisco_accounting_username_bug = no rlm_eap: Loaded and initialized type md5 rlm_eap: Loaded and initialized type leap gtc: challenge = Password: gtc: auth_type = PAP rlm_eap: Loaded and initialized type gtc mschapv2: with_ntdomain_hack = no rlm_eap: Loaded and initialized type mschapv2 Module: Instantiated eap (eap) Module: Loaded preprocess preprocess: huntgroups = /etc/freeradius/huntgroups preprocess: hints = /etc/freeradius/hints preprocess: with_ascend_hack = no preprocess: ascend_channels_per_line = 23 preprocess: with_ntdomain_hack = no preprocess: with_specialix_jetstream_hack = no preprocess: with_cisco_vsa_hack = no Module: Instantiated preprocess (preprocess) Module: Loaded realm realm: format = suffix realm: delimiter = @ realm: ignore_default = no realm: ignore_null = no Module: Instantiated realm (suffix) Module: Loaded
rlm_perl segfault
I've just tried to get the rlm_perl module working. I'm running debian 3.1 with perl 5.8.8. I've tried installing the prebuilt debian packages as well as from source with dpkg-buildpackage -rfakeroot -uc -b However after loading the module freeradius segfaults. Freeradius config: modules { perl ipalloc { module = /etc/freeradius/dynip.pl func_accounting = accounting func_post_auth = post_auth } } post-auth { ipalloc } When running freeradius I get traffic:/etc/freeradius# freeradius -X Starting - reading configuration files ... reread_config: reading radiusd.conf Config: including file: /etc/freeradius/proxy.conf Config: including file: /etc/freeradius/clients.conf Config: including file: /etc/freeradius/snmp.conf Config: including file: /etc/freeradius/eap.conf Config: including file: /etc/freeradius/sql.conf main: prefix = /usr main: localstatedir = /var main: logdir = /var/log/freeradius main: libdir = /usr/lib/freeradius main: radacctdir = /var/log/freeradius/radacct main: hostname_lookups = no main: max_request_time = 30 main: cleanup_delay = 5 main: max_requests = 1024 main: delete_blocked_requests = 0 main: port = 0 main: allow_core_dumps = no main: log_stripped_names = no main: log_file = /var/log/freeradius/radius.log main: log_auth = no main: log_auth_badpass = no main: log_auth_goodpass = no main: pidfile = /var/run/freeradius/freeradius.pid main: user = freerad main: group = freerad main: usercollide = no main: lower_user = no main: lower_pass = no main: nospace_user = no main: nospace_pass = no main: checkrad = /usr/sbin/checkrad main: proxy_requests = yes proxy: retry_delay = 5 proxy: retry_count = 3 proxy: synchronous = no proxy: default_fallback = yes proxy: dead_time = 120 proxy: post_proxy_authorize = no proxy: wake_all_if_all_dead = no security: max_attributes = 200 security: reject_delay = 1 security: status_server = no main: debug_level = 0 read_config_files: reading dictionary read_config_files: reading naslist Using deprecated naslist file. Support for this will go away soon. read_config_files: reading clients read_config_files: reading realms radiusd: entering modules setup Module: Library search path is /usr/lib/freeradius Module: Loaded exec exec: wait = yes exec: program = (null) exec: input_pairs = request exec: output_pairs = (null) exec: packet_type = (null) rlm_exec: Wait=yes but no output defined. Did you mean output=none? Module: Instantiated exec (exec) Module: Loaded expr Module: Instantiated expr (expr) Module: Loaded PAP pap: encryption_scheme = crypt Module: Instantiated pap (pap) Module: Loaded CHAP Module: Instantiated chap (chap) Module: Loaded MS-CHAP mschap: use_mppe = yes mschap: require_encryption = no mschap: require_strong = no mschap: with_ntdomain_hack = no mschap: passwd = (null) mschap: authtype = MS-CHAP mschap: ntlm_auth = (null) Module: Instantiated mschap (mschap) Module: Loaded System unix: cache = no unix: passwd = (null) unix: shadow = /etc/shadow unix: group = (null) unix: radwtmp = /var/log/freeradius/radwtmp unix: usegroup = no unix: cache_reload = 600 Module: Instantiated unix (unix) Module: Loaded eap eap: default_eap_type = md5 eap: timer_expire = 60 eap: ignore_unknown_eap_types = no eap: cisco_accounting_username_bug = no rlm_eap: Loaded and initialized type md5 rlm_eap: Loaded and initialized type leap gtc: challenge = Password: gtc: auth_type = PAP rlm_eap: Loaded and initialized type gtc mschapv2: with_ntdomain_hack = no rlm_eap: Loaded and initialized type mschapv2 Module: Instantiated eap (eap) Module: Loaded preprocess preprocess: huntgroups = /etc/freeradius/huntgroups preprocess: hints = /etc/freeradius/hints preprocess: with_ascend_hack = no preprocess: ascend_channels_per_line = 23 preprocess: with_ntdomain_hack = no preprocess: with_specialix_jetstream_hack = no preprocess: with_cisco_vsa_hack = no Module: Instantiated preprocess (preprocess) Module: Loaded realm realm: format = suffix realm: delimiter = @ realm: ignore_default = no realm: ignore_null = no Module: Instantiated realm (suffix) Module: Loaded files files: usersfile = /etc/freeradius/users files: acctusersfile = /etc/freeradius/acct_users files: preproxy_usersfile = /etc/freeradius/preproxy_users files: compat = no Module: Instantiated files (files) Module: Loaded Acct-Unique-Session-Id acct_unique: key = User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port Module: Instantiated acct_unique (acct_unique) Module: Loaded detail detail: detailfile = /var/log/freeradius/radacct/%{Client-IP-Address}/detail-%Y%m%d detail: detailperm = 384 detail: dirperm = 493 detail: locking = no Module: Instantiated detail (detail) Module: Loaded radutmp radutmp: filename = /var/log/freeradius/radutmp radutmp: username = %{User-Name} radutmp: case_sensitive = yes