manpagez: man pages & more
man Net::Radius::Dictionary(3)
Home | html | info | man
Radius::Dictionary(3) User Contributed Perl DocumentationRadius::Dictionary(3)




NAME

       Net::Radius::Dictionary - RADIUS dictionary parser


SYNOPSIS

         use Net::Radius::Dictionary;

         my $dict = new Net::Radius::Dictionary "/etc/radius/dictionary";
         $dict->readfile("/some/other/file");
         my $num = $dict->attr_num('User-Name');
         my $name = $dict->attr_name(1);
         my $vsa_num = $dict->vsattr_num(9, 'cisco-avpair');
         my $vsa_name = $dict->vsattr_name(9, 1);


DESCRIPTION

       This is a simple module that reads a RADIUS dictionary file and parses
       it, allowing conversion between dictionary names and numbers.  Vendor-
       Specific attributes are supported in a way consistent to the standards.

       A few earlier versions of this module attempted to make dictionaries
       case-insensitive. This proved to be a very bad decision. From this
       version on, this tendency is reverted: Dictionaries and its contents
       are to be case-sensitive to prevent random, hard to debug failures in
       production code.

   METHODS
       new($dict_file, ...)
           Returns a new instance of a Net::Radius::Dictionary object. This
           object will have no attributes defined, as expected.

           If given an (optional) list of filenames, it calls readfile for you
           for all of them, in the given order.

       ->readfile($dict_file)
           Parses a dictionary file and learns the mappings to use. It can be
           called multiple times for the same object. The result will be that
           new entries will override older ones, thus you could load a default
           dictionary and then have a smaller dictionary that override
           specific entries.

       ->vendor_num($vendorname)
           Return the vendor number for the given vendor name.

       ->attr_num($attrname)
           Returns the number of the named attribute.

       ->attr_type($attrname)
           Returns the type (string, integer, ipaddr, or time) of the named
           attribute.

       ->attr_name($attrnum)
           Returns the name of the attribute with the given number.

       ->attr_numtype($attrnum)
           Returns the type of the attribute with the given number.

       ->attr_has_val($attrnum)
           Returns a true or false value, depending on whether or not the
           numbered attribute has any known value constants.

       ->val_has_name($attrnum)
           Alternate (bad) name for attr_has_val.

       ->val_num($attrnum, $valname)
           Returns the number of the named value for the attribute number
           supplied.

       ->val_name($attrnum, $valnumber)
           Returns the name of the numbered value for the attribute number
           supplied.

       There is an equivalent family of accessor methods for Vendor-Specific
       attributes and its values. Those methods are identical to their
       standard attributes counterparts with two exceptions. Their names have
       a vsa prepended to the accessor name and the first argument to each one
       is the vendor code on which they apply.


CAVEATS

       This module is mostly for the internal use of Net::Radius::Packet, and
       may otherwise cause insanity and/or blindness if studied.


AUTHOR

       Christopher Masto <chris@netmonger.net>, Luis E. MuA+-oz
       <luismunoz@cpan.org> contributed the VSA code.


SEE ALSO

       Net::Radius::Packet(3)


POD ERRORS

       Hey! The above document had some coding errors, which are explained
       below:

       Around line 380:
           Non-ASCII character seen before =encoding in 'MuA+-oz'. Assuming
           UTF-8



perl v5.28.1                      2009-08-25             Radius::Dictionary(3)

net-radius 2.103.0 - Generated Fri May 10 12:39:34 CDT 2019
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.