aboutsummaryrefslogtreecommitdiffstats
path: root/packet-radius.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2002-03-22 02:38:54 +0000
committerGuy Harris <guy@alum.mit.edu>2002-03-22 02:38:54 +0000
commit61130a5f656bddeba637056463de3acff33e6867 (patch)
treeb7d171b4b70985d576c8fd82c3746c93b6ac5ab7 /packet-radius.c
parentdb1428be21a7bd16bb60cb584f1e8a0750701d49 (diff)
downloadwireshark-61130a5f656bddeba637056463de3acff33e6867.tar.gz
wireshark-61130a5f656bddeba637056463de3acff33e6867.tar.bz2
wireshark-61130a5f656bddeba637056463de3acff33e6867.zip
Additional vendor (Issani) for Radius, and Issani VSA support for
Radius, from Jim Sienicki. Put Jakob Schlyter into the contributors list in the Ethereal man page. svn path=/trunk/; revision=5001
Diffstat (limited to 'packet-radius.c')
-rw-r--r--packet-radius.c81
1 files changed, 80 insertions, 1 deletions
diff --git a/packet-radius.c b/packet-radius.c
index 2b2d01e98f..d79e2ee307 100644
--- a/packet-radius.c
+++ b/packet-radius.c
@@ -4,7 +4,7 @@
*
* RFC 2865, RFC 2866, RFC 2867, RFC 2868, RFC 2869
*
- * $Id: packet-radius.c,v 1.49 2002/02/26 11:55:37 guy Exp $
+ * $Id: packet-radius.c,v 1.50 2002/03/22 02:38:52 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -263,6 +263,7 @@ static value_string radius_service_type_vals[]=
#define VENDOR_JUNIPER 2636
#define VENDOR_COSINE 3085
#define VENDOR_UNISPHERE 4874
+#define VENDOR_ISSANNI 5948
static value_string radius_vendor_specific_vendors[]=
{{VENDOR_ACC,"ACC"},
@@ -275,6 +276,7 @@ static value_string radius_vendor_specific_vendors[]=
{VENDOR_JUNIPER,"Juniper Networks"},
{VENDOR_COSINE,"CoSine Communications"},
{VENDOR_UNISPHERE,"Unisphere Networks"},
+{VENDOR_ISSANNI,"Issanni Communications"},
{0,NULL}};
#define VENDOR_COSINE_VSA_CONNECION_PROFILE_NAME 1
@@ -297,6 +299,44 @@ static value_string radius_vendor_cosine_types[]=
{VENDOR_COSINE_VSA_CLI_USER_PERMISSION_ID,"CLI User Permission ID"},
{0,NULL}};
+#define VENDOR_ISSANNI_VSA_SOFTFLOW_TEMPLATE 1
+#define VENDOR_ISSANNI_VSA_NAT_POOL_NAME 2
+#define VENDOR_ISSANNI_VSA_VRD 3
+#define VENDOR_ISSANNI_VSA_TUNNEL_NAME 4
+#define VENDOR_ISSANNI_VSA_IP_POOL_NAME 5
+#define VENDOR_ISSANNI_VSA_PPPOE_URL 6
+#define VENDOR_ISSANNI_VSA_PPPOE_MOTM 7
+#define VENDOR_ISSANNI_VSA_SERVICE 8
+#define VENDOR_ISSANNI_VSA_PRI_DNS 9
+#define VENDOR_ISSANNI_VSA_SEC_DNS 10
+#define VENDOR_ISSANNI_VSA_PRI_NBNS 11
+#define VENDOR_ISSANNI_VSA_SEC_NBNS 12
+#define VENDOR_ISSANNI_VSA_TRAFFIC_CLASS 13
+#define VENDOR_ISSANNI_VSA_TUNNEL_TYPE 14
+#define VENDOR_ISSANNI_VSA_NAT_TYPE 15
+#define VENDOR_ISSANNI_VSA_QOS_CLASS 16
+#define VENDOR_ISSANNI_VSA_IFACE_NAME 17
+
+static value_string radius_vendor_issanni_types[]=
+{{VENDOR_ISSANNI_VSA_SOFTFLOW_TEMPLATE,"Softflow Template"},
+{VENDOR_ISSANNI_VSA_NAT_POOL_NAME,"NAT Pool"},
+{VENDOR_ISSANNI_VSA_VRD,"Virtual Routing Domain"},
+{VENDOR_ISSANNI_VSA_TUNNEL_NAME,"Tunnel Name"},
+{VENDOR_ISSANNI_VSA_IP_POOL_NAME,"IP Pool Name"},
+{VENDOR_ISSANNI_VSA_PPPOE_URL,"PPPoE URL"},
+{VENDOR_ISSANNI_VSA_PPPOE_MOTM,"PPPoE MOTM"},
+{VENDOR_ISSANNI_VSA_SERVICE,"PPPoE Service"},
+{VENDOR_ISSANNI_VSA_PRI_DNS,"Primary DNS"},
+{VENDOR_ISSANNI_VSA_SEC_DNS,"Secondary DNS"},
+{VENDOR_ISSANNI_VSA_PRI_NBNS,"Primary NBNS"},
+{VENDOR_ISSANNI_VSA_SEC_NBNS,"Secondary NBNS"},
+{VENDOR_ISSANNI_VSA_TRAFFIC_CLASS,"Policing Traffic Class"},
+{VENDOR_ISSANNI_VSA_TUNNEL_TYPE,"Tunnel Type"},
+{VENDOR_ISSANNI_VSA_NAT_TYPE,"NAT Type"},
+{VENDOR_ISSANNI_VSA_QOS_CLASS,"QoS Traffic Class"},
+{VENDOR_ISSANNI_VSA_IFACE_NAME,"Interface Name"},
+{0,NULL}};
+
static value_string radius_framed_protocol_vals[]=
{{1, "PPP"},
{2, "SLIP"},
@@ -840,6 +880,45 @@ gchar *rd_value_to_str(e_avphdr *avph, tvbuff_t *tvb, int offset)
break;
}
break;
+ case ( VENDOR_ISSANNI ):
+ vtype = tvb_get_guint8(tvb,offset+6);
+ switch (vtype) {
+ case ( VENDOR_ISSANNI_VSA_SOFTFLOW_TEMPLATE ):
+ case ( VENDOR_ISSANNI_VSA_NAT_POOL_NAME ):
+ case ( VENDOR_ISSANNI_VSA_VRD ):
+ case ( VENDOR_ISSANNI_VSA_TUNNEL_NAME ):
+ case ( VENDOR_ISSANNI_VSA_IP_POOL_NAME ):
+ case ( VENDOR_ISSANNI_VSA_PPPOE_URL ):
+ case ( VENDOR_ISSANNI_VSA_PPPOE_MOTM ):
+ case ( VENDOR_ISSANNI_VSA_SERVICE ):
+ case ( VENDOR_ISSANNI_VSA_TRAFFIC_CLASS ):
+ case ( VENDOR_ISSANNI_VSA_QOS_CLASS ):
+ case ( VENDOR_ISSANNI_VSA_IFACE_NAME ):
+ sprintf(cont," Type:%s, Value:",
+ rd_match_strval(vtype, radius_vendor_issanni_types));
+ cont=&textbuffer[strlen(textbuffer)];
+ rdconvertbufftostr(cont,tvb,offset+8,avph->avp_length-8);
+ break;
+ case ( VENDOR_ISSANNI_VSA_NAT_TYPE ):
+ case ( VENDOR_ISSANNI_VSA_TUNNEL_TYPE ):
+ sprintf(cont," Type:%s, Value:%u",
+ rd_match_strval(vtype, radius_vendor_issanni_types),
+ tvb_get_ntohl(tvb,offset+8));
+ break;
+ case ( VENDOR_ISSANNI_VSA_PRI_DNS ):
+ case ( VENDOR_ISSANNI_VSA_SEC_DNS ):
+ case ( VENDOR_ISSANNI_VSA_PRI_NBNS ):
+ case ( VENDOR_ISSANNI_VSA_SEC_NBNS ):
+ sprintf(cont," Type:%s, Value:",
+ rd_match_strval(vtype, radius_vendor_issanni_types));
+ cont=&textbuffer[strlen(textbuffer)];
+ ip_to_str_buf(tvb_get_ptr(tvb,offset+8,4),cont);
+ break;
+ default:
+ sprintf(cont," Unknown Value Type");
+ break;
+ }
+ break;
default:
sprintf(cont, " Value:");
rdconvertbufftostr(cont,tvb,offset+6,avph->avp_length-6);