diff options
author | ivan <ivan> | 2003-10-02 08:56:56 +0000 |
---|---|---|
committer | ivan <ivan> | 2003-10-02 08:56:56 +0000 |
commit | 0ec3710f3cec8051d0a7d6e731e3de79284903c5 (patch) | |
tree | bfc10c632507c02afcd8b1ff91185986fcf87e5c /bin/generate-raddb | |
parent | 8f81a29fe1ac874e7fdad0f651297e0b340a663f (diff) |
update with dictionaries from freeradius 0.9.1, and fix generate-raddb
to avoid duplicates
Diffstat (limited to 'bin/generate-raddb')
-rwxr-xr-x | bin/generate-raddb | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/bin/generate-raddb b/bin/generate-raddb index 1d0053a2b..f946b05b3 100755 --- a/bin/generate-raddb +++ b/bin/generate-raddb @@ -13,10 +13,18 @@ END while (<>) { next if /^(#|\s*$|\$INCLUDE\s+)/; next if /^(VALUE|VENDOR|BEGIN\-VENDOR|END\-VENDOR)\s+/; - /^(ATTRIBUTE|ATTRIB_NMC)\s+([\w\-]+)\s+/ or die $_; + /^(ATTRIBUTE|ATTRIB_NMC)\s+([\w\-\/]+)\s+/ or die $_; $attrib = $2; $dbname = lc($2); - $dbname =~ s/\-/_/g; + $dbname =~ s/[\-\/]/_/g; + $dbname = substr($dbname,0,24); + while ( exists $hash{$dbname} ) { + #warn $dbname; + $dbname =~ s/(.)$//; + my $w = $1; + $w =~ tr/_a-z0-9/a-z0-9_/; + $dbname = "$dbname$w"; + } $hash{$dbname} = $attrib; #print "$2\n"; } @@ -25,8 +33,10 @@ foreach ( keys %hash ) { # print "$_\n" if length($_)>24; # print substr($_,0,24),"\n" if length($_)>24; # $max = length($_) if length($_)>$max; -#everything >24 is still unique, at least with freeradius comprehensive dataset - print " '". substr($_,0,24). "' => '$hash{$_}',\n"; +# have to fudge things since everything >24 is *not* unique + + #print " '". substr($_,0,24). "' => '$hash{$_}',\n"; + print " '$_' => '$hash{$_}',\n"; } print <<END; |