diff options
author | Bill Meier <wmeier@newsguy.com> | 2011-05-26 02:59:25 +0000 |
---|---|---|
committer | Bill Meier <wmeier@newsguy.com> | 2011-05-26 02:59:25 +0000 |
commit | 224206b1a346d798f294f42943fdb7d8fdb6a1bf (patch) | |
tree | bbe466dedfd7b366deb82af59796a90a16fd03f5 /epan/radius_dict.l | |
parent | b2120849b113d439c6acfa51a23c89262f481ab8 (diff) |
Allow the character '.' in radius dictionary ATTRIBUTE names;
Fixes issue caused by dictionary.foundry having ATTRIBUTE names containing
a '.' (e.g., Foundry-MAC-Authent-needs-802.1x).
So: Revert SVN #37386 which temporarily changed the '.' to '-'.
svn path=/trunk/; revision=37405
Diffstat (limited to 'epan/radius_dict.l')
-rw-r--r-- | epan/radius_dict.l | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/epan/radius_dict.l b/epan/radius_dict.l index e2a5fb4b02..2818147420 100644 --- a/epan/radius_dict.l +++ b/epan/radius_dict.l @@ -103,6 +103,11 @@ %} +/* Note: FreeRadius allows VENDOR, ATTRIBUTE and VALUE names to contain any non-blank character. + * Using [^[:blank:]] below for those names fails for some reason so for now the patterns for each + * include those characters found in the the corresponding names in the FreeRadius dictionaries. + */ + %START WS_OUT VENDOR VENDOR_W_NAME ATTR ATTR_W_NAME ATTR_W_ID ATTR_W_TYPE ATTR_W_VENDOR VALUE VALUE_W_ATTR VALUE_W_NAME INCLUDE JUNK BEGIN_VENDOR END_VENDOR VENDOR_W_ID VENDOR_W_FORMAT VENDOR_W_TYPE_OCTETS VENDOR_W_LENGTH_OCTETS VENDOR_W_CONTINUATION BEGIN_TLV END_TLV %% [:blank:] ; @@ -189,7 +194,7 @@ BEGIN WS_OUT; } -<ATTR>[0-9a-z_/-]+ { attr_name = g_strdup(yytext); encrypted = FALSE; has_tag = FALSE; BEGIN ATTR_W_NAME; } +<ATTR>[0-9a-z_/.-]+ { attr_name = g_strdup(yytext); encrypted = FALSE; has_tag = FALSE; BEGIN ATTR_W_NAME; } <ATTR_W_NAME>[0-9]+ { attr_id = g_strdup(yytext); BEGIN ATTR_W_ID;} <ATTR_W_NAME>0x[0-9a-f]+ { attr_id = g_strdup_printf("%u",(int)strtoul(yytext,NULL,16)); BEGIN ATTR_W_ID;} <ATTR_W_ID>integer { attr_type = radius_integer; BEGIN ATTR_W_TYPE; } |