- fix Mason profiling to pass-through images (for graph/)
[freeside.git] / bin / generate-raddb
1 #!/usr/bin/perl
2
3 # usage: generate-raddb radius-server/raddb/dictionary* >raddb.pm
4 #  i.e.: generate-raddb ~/src/freeradius-0.2/raddb/dictionary* >FS/raddb.pm
5
6 print <<END;
7 package FS::raddb;
8 use vars qw(%attrib);
9
10 %attrib = (
11 END
12
13 while (<>) {
14   next if /^(#|\s*$|\$INCLUDE\s+)/;
15   next if /^(VALUE|VENDOR|BEGIN\-VENDOR|END\-VENDOR)\s+/;
16   /^(ATTRIBUTE|ATTRIB_NMC)\s+([\w\-]+)\s+/ or die $_;
17   $attrib = $2;
18   $dbname = lc($2);
19   $dbname =~ s/\-/_/g;
20   $hash{$dbname} = $attrib;
21   #print "$2\n";
22 }
23
24 foreach ( keys %hash ) {
25 #  print "$_\n" if length($_)>24;
26 #  print substr($_,0,24),"\n" if length($_)>24; 
27 #  $max = length($_) if length($_)>$max;
28 #everything >24 is still unique, at least with freeradius comprehensive dataset
29   print "  '". substr($_,0,24). "' => '$hash{$_}',\n";
30 }
31
32 print <<END;
33 );
34
35 1;
36 END
37