Re: Trucation of octet attribute handled by rlm_perl
Many thanks for you help. 2013/3/1 Iliya Peregoudov : > All attributes in rlm_perl scripts should be text. rlm_perl convert them to > text before function call and convert them from text after function return. > So you should use > > $RAD_REPLY{'DHCP-Classless-Static-Route'} = '0x'.unpack('H*', $route); > > > On 28.02.2013 11:05, Бен Томпсон wrote: >> >> Hello everyone >> >> I am having a slight problem with rlm_perl and I would really >> appreciate any advice/help. >> >> I have a perl script which rlm_perl adds a value to the >> DHCP-Classless-Static-Route attribute something like this :- >> >> perl script snippets >> ... >> my $route = pack('C7', split(/\,/, "16,172,16,10,0,0,2")); >> ... >> &radiusd::radlog(RADLOG_DEBUG, "packed data: " . unpack('H*', $route)); >> ... >> $RAD_REPLY{'DHCP-Classless-Static-Route'} = $route; >> ... >> ### > > - > 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: Trucation of octet attribute handled by rlm_perl
All attributes in rlm_perl scripts should be text. rlm_perl convert them to text before function call and convert them from text after function return. So you should use $RAD_REPLY{'DHCP-Classless-Static-Route'} = '0x'.unpack('H*', $route); On 28.02.2013 11:05, Бен Томпсон wrote: Hello everyone I am having a slight problem with rlm_perl and I would really appreciate any advice/help. I have a perl script which rlm_perl adds a value to the DHCP-Classless-Static-Route attribute something like this :- perl script snippets ... my $route = pack('C7', split(/\,/, "16,172,16,10,0,0,2")); ... &radiusd::radlog(RADLOG_DEBUG, "packed data: " . unpack('H*', $route)); ... $RAD_REPLY{'DHCP-Classless-Static-Route'} = $route; ... ### - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
Trucation of octet attribute handled by rlm_perl
Hello everyone I am having a slight problem with rlm_perl and I would really appreciate any advice/help. I have a perl script which rlm_perl adds a value to the DHCP-Classless-Static-Route attribute something like this :- perl script snippets ... my $route = pack('C7', split(/\,/, "16,172,16,10,0,0,2")); ... &radiusd::radlog(RADLOG_DEBUG, "packed data: " . unpack('H*', $route)); ... $RAD_REPLY{'DHCP-Classless-Static-Route'} = $route; ... ### ..but from the debug output I see that the attribute data is truncated at the first octet with value 00 :- ### freeradius -Xx snippets ... Thu Feb 28 10:35:23 2013 : rlm_perl: packed data: 10ac100a02 Thu Feb 28 10:35:23 2013 : Debug: rlm_perl: Added pair DHCP-Classless-Static-Route = ??? ... DHCP-Classless-Static-Route = 0x10ac100a ## Am I doing somthething daft, or is this a possible bug in rlm_perl? I am using freeradius 2.2.0. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html