Subject: | Authen::Radius - Problem with standard vendor |
Date: | Fri, 11 Jan 2008 15:34:53 +0100 |
To: | bug-RadiusPerl [...] rt.cpan.org |
From: | Benoît Mérouze <benoit.merouze [...] ipercom.com> |
Hello,
I'm using Authen::Radius with the dictionary from Gnu Radius and that
works well.
There is just something not good : in my dictionary, the "standard"
words are defined for vendor '-' which means that's an undefined vendor.
The current Radius.pm does not understand that as it should, and so it
does with the small patch attached to this email.
Regards,
Benoit Merouze
--
Benoît Mérouze - Telecom Software Developer - IPercom
benoit.merouze@ipercom.com - http://www.iperbill.com
"Those who would give up Essential Liberty to purchase a little
Temporary Safety, deserve neither Liberty nor Safety."
Benjamin Franklin
--- Radius.pm 2007-02-20 08:43:34.000000000 +0100
+++ Radius.pm-new 2008-01-11 15:28:18.000000000 +0100
@@ -356,7 +356,7 @@
($cmd, $name, $id, $type, $vendor) = split(/\s+/);
next if (!$cmd || $cmd =~ /^#/);
if (lc($cmd) eq 'attribute') {
- if( !$vendor ) {
+ if( !$vendor || $vendor eq '-') {
$dict_id{'not defined'}{$id}{'name'} = $name;
$dict_id{'not defined'}{$id}{'type'} = $type;
} else {
@@ -365,7 +365,7 @@
}
$dict_name{$name}{'id'} = $id;
$dict_name{$name}{'type'} = $type;
- $dict_name{$name}{'vendor'} = $vendor if $vendor;
+ $dict_name{$name}{'vendor'} = $vendor if ($vendor && $vendor ne '-');
} elsif (lc($cmd) eq 'value') {
next unless exists($dict_name{$name});
$dict_val{$dict_name{$name}->{'id'}}->{$type}->{'name'} = $id;