diff options
author | Guy Harris <guy@alum.mit.edu> | 2002-05-13 08:57:43 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2002-05-13 08:57:43 +0000 |
commit | 0b22c885cbfea335406011055a00d33457cd76fb (patch) | |
tree | 5d29fe0bf0a6bd82ed8a1b70f40fc6fa6220b3b7 /packet-radius.c | |
parent | 70a045e948e05f92b0bd0a703e3a143fcd74cfbd (diff) | |
download | wireshark-0b22c885cbfea335406011055a00d33457cd76fb.tar.gz wireshark-0b22c885cbfea335406011055a00d33457cd76fb.tar.bz2 wireshark-0b22c885cbfea335406011055a00d33457cd76fb.zip |
From Kan Sasaki:
1. merge '#define XXX', XXX_printinfo and XXX_attrib_type_vals
into XXX_attrib to make it easy to add new attributes.
2. put decoded VSAs as sub item.
Update comments to reflect those changes.
svn path=/trunk/; revision=5455
Diffstat (limited to 'packet-radius.c')
-rw-r--r-- | packet-radius.c | 2790 |
1 files changed, 955 insertions, 1835 deletions
diff --git a/packet-radius.c b/packet-radius.c index c2fb625752..0e5a46eca5 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.58 2002/05/08 08:13:06 guy Exp $ + * $Id: packet-radius.c,v 1.59 2002/05/13 08:57:43 guy Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -54,6 +54,7 @@ static int hf_radius_id =-1; static gint ett_radius = -1; static gint ett_radius_avp = -1; static gint ett_radius_eap = -1; +static gint ett_radius_vsa = -1; static dissector_handle_t eap_fragment_handle; @@ -76,28 +77,31 @@ typedef struct _e_avphdr { guint8 avp_length; } e_avphdr; -typedef struct _value_value_pair { +typedef struct _value_value_string { guint16 val1; guint16 val2; -} value_value_pair; + gchar *str; +} value_value_string; typedef struct _rd_vsa_table { - guint32 type; - value_value_pair* printinfo; - value_string* types; + guint32 vendor; + value_value_string *attrib; } rd_vsa_table; typedef struct _rd_valstr_table { - int type; - value_string* str; + int print_type; + value_string *valstr; } rd_valstr_table; typedef struct _rd_vsa_buffer { - gchar* valstr; + gchar *str; int offset; - int length; + guint8 length; } rd_vsa_buffer; +#define AUTHENTICATOR_LENGTH 16 +#define RD_HDR_LENGTH 4 + #define RADIUS_ACCESS_REQUEST 1 #define RADIUS_ACCESS_ACCEPT 2 #define RADIUS_ACCESS_REJECT 3 @@ -123,118 +127,6 @@ typedef struct _rd_vsa_buffer { #define RADIUS_CHANGE_FILTER_REQUEST_NAK 45 #define RADIUS_RESERVED 255 -/* - * XXX - should these be read from files, such as FreeRadius dictionary - * files? For example, its "dictionary" file has - * - * ATTRIBUTE User-Name 1 string - * - * for RD_TP_USER_NAME. - */ -#define RD_TP_USER_NAME 1 -#define RD_TP_USER_PASSWORD 2 -#define RD_TP_CHAP_PASSWORD 3 -#define RD_TP_NAS_IP_ADDRESS 4 -#define RD_TP_NAS_PORT 5 -#define RD_TP_SERVICE_TYPE 6 -#define RD_TP_FRAMED_PROTOCOL 7 -#define RD_TP_FRAMED_IP_ADDRESS 8 -#define RD_TP_FRAMED_IP_NETMASK 9 -#define RD_TP_FRAMED_ROUTING 10 -#define RD_TP_FILTER_ID 11 -#define RD_TP_FRAMED_MTU 12 -#define RD_TP_FRAMED_COMPRESSION 13 -#define RD_TP_LOGIN_IP_HOST 14 -#define RD_TP_LOGIN_SERVICE 15 -#define RD_TP_LOGIN_TCP_PORT 16 -#define RD_TP_UNASSIGNED 17 -#define RD_TP_REPLY_MESSAGE 18 -#define RD_TP_CALLBACK_NUMBER 19 -#define RD_TP_CALLBACK_ID 20 -#define RD_TP_UNASSIGNED2 21 -#define RD_TP_FRAMED_ROUTE 22 -#define RD_TP_FRAMED_IPX_NETWORK 23 -#define RD_TP_STATE 24 -#define RD_TP_CLASS 25 -#define RD_TP_VENDOR_SPECIFIC 26 -#define RD_TP_SESSION_TIMEOUT 27 -#define RD_TP_IDLE_TIMEOUT 28 -#define RD_TP_TERMINATING_ACTION 29 -#define RD_TP_CALLED_STATION_ID 30 -#define RD_TP_CALLING_STATION_ID 31 -#define RD_TP_NAS_IDENTIFIER 32 -#define RD_TP_PROXY_STATE 33 -#define RD_TP_LOGIN_LAT_SERVICE 34 -#define RD_TP_LOGIN_LAT_NODE 35 -#define RD_TP_LOGIN_LAT_GROUP 36 -#define RD_TP_FRAMED_APPLETALK_LINK 37 -#define RD_TP_FRAMED_APPLETALK_NETWORK 38 -#define RD_TP_FRAMED_APPLETALK_ZONE 39 -#define RD_TP_ACCT_STATUS_TYPE 40 -#define RD_TP_ACCT_DELAY_TIME 41 -#define RD_TP_ACCT_INPUT_OCTETS 42 -#define RD_TP_ACCT_OUTPUT_OCTETS 43 -#define RD_TP_ACCT_SESSION_ID 44 -#define RD_TP_ACCT_AUTHENTIC 45 -#define RD_TP_ACCT_SESSION_TIME 46 -#define RD_TP_ACCT_INPUT_PACKETS 47 -#define RD_TP_ACCT_OUTPUT_PACKETS 48 -#define RD_TP_ACCT_TERMINATE_CAUSE 49 -#define RD_TP_ACCT_MULTI_SESSION_ID 50 -#define RD_TP_ACCT_LINK_COUNT 51 -#define RD_TP_ACCT_INPUT_GIGAWORDS 52 -#define RD_TP_ACCT_OUTPUT_GIGAWORDS 53 -/* 54 Unused */ -#define RD_TP_EVENT_TIMESTAMP 55 -/* 56-59 Unused */ -#define RD_TP_CHAP_CHALLENGE 60 -#define RD_TP_NAS_PORT_TYPE 61 -#define RD_TP_PORT_LIMIT 62 -#define RD_TP_LOGIN_LAT_PORT 63 -#define RD_TP_TUNNEL_TYPE 64 -#define RD_TP_TUNNEL_MEDIUM_TYPE 65 -#define RD_TP_TUNNEL_CLIENT_ENDPOINT 66 -#define RD_TP_TUNNEL_SERVER_ENDPOINT 67 -#define RD_TP_TUNNEL_CONNECTION 68 -#define RD_TP_TUNNEL_PASSWORD 69 -#define RD_TP_ARAP_PASSWORD 70 -#define RD_TP_ARAP_FEATURES 71 -#define RD_TP_ARAP_ZONE_ACCESS 72 -#define RD_TP_ARAP_SECURITY 73 -#define RD_TP_ARAP_SECURITY_DATA 74 -#define RD_TP_PASSWORD_RETRY 75 -#define RD_TP_PROMPT 76 -#define RD_TP_CONNECT_INFO 77 -#define RD_TP_CONFIGURATION_TOKEN 78 -#define RD_TP_EAP_MESSAGE 79 -#define RD_TP_MESSAGE_AUTHENTICATOR 80 -#define RD_TP_TUNNEL_PRIVATE_GROUP_ID 81 -#define RD_TP_TUNNEL_ASSIGNMENT_ID 82 -#define RD_TP_TUNNEL_TUNNEL_PREFERENCE 83 -#define RD_TP_TUNNEL_PACKETS_LOST 86 -#define RD_TP_NAS_PORT_ID 87 -#define RD_TP_TUNNEL_CLIENT_AUTH_ID 90 -#define RD_TP_TUNNEL_SERVER_AUTH_ID 91 -#define RD_TP_ASCEND_MODEM_PORTNO 120 -#define RD_TP_ASCEND_MODEM_SLOTNO 121 -#define RD_TP_ASCEND_MULTILINK_ID 187 -#define RD_TP_ASCEND_NUM_IN_MULTILINK 188 -#define RD_TP_ASCEND_FIRST_DEST 189 -#define RD_TP_ASCEND_PRE_INPUT_OCTETS 190 -#define RD_TP_ASCEND_PRE_OUTPUT_OCTETS 191 -#define RD_TP_ASCEND_PRE_INPUT_PACKETS 192 -#define RD_TP_ASCEND_PRE_OUTPUT_PACKETS 193 -#define RD_TP_ASCEND_MAXIMUM_TIME 194 -#define RD_TP_ASCEND_DISCONNECT_CAUSE 195 -#define RD_TP_ASCEND_CONNECT_PROGRESS 196 -#define RD_TP_ASCEND_DATA_RATE 197 -#define RD_TP_ASCEND_PRESESSION_TIME 198 -#define RD_TP_ASCEND_ASSIGN_IP_POOL 218 -#define RD_TP_ASCEND_XMIT_RATE 255 - -#define AUTHENTICATOR_LENGTH 16 -#define RD_HDR_LENGTH 4 - #define RADIUS_STRING 1 #define RADIUS_BINSTRING 2 #define RADIUS_INTEGER4 3 @@ -257,18 +149,19 @@ typedef struct _rd_vsa_buffer { #define RADIUS_VENDOR_SPECIFIC 20 #define RADIUS_TIMESTAMP 21 #define RADIUS_INTEGER4_TAGGED 22 -#define CISCO_VSA_DISCONNECT_CAUSE 23 -#define MICROSOFT_VSA_BAP_USAGE 24 -#define MICROSOFT_VSA_ARAP_PW_CHANGE_REASON 25 -#define MICROSOFT_VSA_ACCT_AUTH_TYPE 26 -#define MICROSOFT_VSA_ACCT_EAP_TYPE 27 -#define ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER 28 -#define ASCEND_VSA_CALLING_ID_NUMBERING_PLAN 29 -#define ASCEND_VSA_CALLING_ID_PRESENTATION 30 -#define ASCEND_VSA_CALLING_ID_SCREENING 31 -#define COSINE_VSA_VPI_VCI 32 - -static value_string radius_vals[] = { +#define CISCO_DISCONNECT_CAUSE 23 +#define MICROSOFT_BAP_USAGE 24 +#define MICROSOFT_ARAP_PW_CHANGE_REASON 25 +#define MICROSOFT_ACCT_AUTH_TYPE 26 +#define MICROSOFT_ACCT_EAP_TYPE 27 +#define ASCEND_CALLING_ID_TYPE_OF_NUMBER 28 +#define ASCEND_CALLING_ID_NUMBERING_PLAN 29 +#define ASCEND_CALLING_ID_PRESENTATION 30 +#define ASCEND_CALLING_ID_SCREENING 31 +#define COSINE_VPI_VCI 32 + +static value_string radius_vals[] = +{ {RADIUS_ACCESS_REQUEST, "Access Request"}, {RADIUS_ACCESS_ACCEPT, "Access Accept"}, {RADIUS_ACCESS_REJECT, "Access Reject"}, @@ -293,20 +186,8 @@ static value_string radius_vals[] = { {RADIUS_CHANGE_FILTER_REQUEST_ACK, "Change Filter Request ACK"}, {RADIUS_CHANGE_FILTER_REQUEST_NAK, "Change Filter Request NAK"}, {RADIUS_RESERVED, "Reserved"}, -{0, NULL}}; - -static value_string radius_service_type_vals[]= -{{1, "Login"}, -{2, "Framed"}, -{3, "Callback Login"}, -{4, "Callback Framed"}, -{5, "Outbound"}, -{6, "Administrative"}, -{7, "NAS Prompt"}, -{8, "Authenticate Only"}, -{9, "Callback NAS Prompt"}, -{10, "Call Check"}, -{0,NULL}}; + {0, NULL} +}; /* * These are SMI Network Management Private Enterprise Codes for @@ -334,20 +215,343 @@ static value_string radius_service_type_vals[]= #define VENDOR_UNISPHERE 4874 #define VENDOR_ISSANNI 5948 -static value_string radius_vendor_specific_vendors[]= -{{VENDOR_ACC,"ACC"}, -{VENDOR_CISCO,"Cisco"}, -{VENDOR_SHIVA,"Shiva"}, -{VENDOR_MICROSOFT,"Microsoft"}, -{VENDOR_LIVINGSTON,"Livingston"}, -{VENDOR_3COM,"3Com"}, -{VENDOR_ASCEND,"Ascend"}, -{VENDOR_BAY,"Bay Networks"}, -{VENDOR_JUNIPER,"Juniper Networks"}, -{VENDOR_COSINE,"CoSine Communications"}, -{VENDOR_UNISPHERE,"Unisphere Networks"}, -{VENDOR_ISSANNI,"Issanni Communications"}, -{0,NULL}}; +static value_string radius_vendor_specific_vendors[] = +{ + {VENDOR_ACC, "ACC"}, + {VENDOR_CISCO, "Cisco"}, + {VENDOR_SHIVA, "Shiva"}, + {VENDOR_MICROSOFT, "Microsoft"}, + {VENDOR_LIVINGSTON, "Livingston"}, + {VENDOR_3COM, "3Com"}, + {VENDOR_ASCEND, "Ascend"}, + {VENDOR_BAY, "Bay Networks"}, + {VENDOR_JUNIPER, "Juniper Networks"}, + {VENDOR_COSINE, "CoSine Communications"}, + {VENDOR_UNISPHERE, "Unisphere Networks"}, + {VENDOR_ISSANNI, "Issanni Communications"}, + {0, NULL} +}; + +static value_value_string null_attrib[] = +{ + {0, 0, NULL} +}; + +static value_string null_vals[] = +{ + {0, NULL} +}; + +/* + * XXX - should these be read from files, such as FreeRadius dictionary + * files? For example, its "dictionary" file has + * + * ATTRIBUTE User-Name 1 string + * + * for the attribute that's + * + * {1, RADIUS_STRING, "User Name"}, + * + * in our tables: + * + * "string" -> RADIUS_STRING + * "octets" -> RADIUS_BINSTRING + * "integer" -> RADIUS_INTEGER4 + * "ipaddr" -> RADIUS_IP_ADDRESS + */ +static value_value_string radius_attrib[] = +{ + {1, RADIUS_STRING, "User Name"}, + {2, RADIUS_STRING, "User Password"}, + {3, RADIUS_BINSTRING, "Chap Password"}, + {4, RADIUS_IP_ADDRESS, "NAS IP Address"}, + {5, RADIUS_INTEGER4, "NAS Port"}, + {6, RADIUS_SERVICE_TYPE, "Service Type"}, + {7, RADIUS_FRAMED_PROTOCOL, "Framed Protocol"}, + {8, RADIUS_IP_ADDRESS, "Framed IP Address"}, + {9, RADIUS_IP_ADDRESS, "Framed IP Netmask"}, + {10, RADIUS_FRAMED_ROUTING, "Framed Routing"}, + {11, RADIUS_STRING, "Filter Id"}, + {12, RADIUS_INTEGER4, "Framed MTU"}, + {13, RADIUS_FRAMED_COMPRESSION, "Framed Compression"}, + {14, RADIUS_IP_ADDRESS, "Login IP Host"}, + {15, RADIUS_LOGIN_SERVICE, "Login Service"}, + {16, RADIUS_INTEGER4, "Login TCP Port"}, + {17, RADIUS_UNKNOWN, "Unassigned"}, + {18, RADIUS_STRING, "Reply Message"}, + {19, RADIUS_STRING, "Callback Number"}, + {20, RADIUS_STRING, "Callback Id"}, + {21, RADIUS_UNKNOWN, "Unassigned"}, + {22, RADIUS_STRING, "Framed Route"}, + {23, RADIUS_IPX_ADDRESS, "Framed IPX network"}, + {24, RADIUS_BINSTRING, "State"}, + {25, RADIUS_BINSTRING, "Class"}, + {26, RADIUS_VENDOR_SPECIFIC, "Vendor Specific"}, + {27, RADIUS_INTEGER4, "Session Timeout"}, + {28, RADIUS_INTEGER4, "Idle Timeout"}, + {29, RADIUS_TERMINATING_ACTION, "Terminating Action"}, + {30, RADIUS_STRING, "Called Station Id"}, + {31, RADIUS_STRING, "Calling Station Id"}, + {32, RADIUS_STRING, "NAS identifier"}, + {33, RADIUS_BINSTRING, "Proxy State"}, + {34, RADIUS_STRING, "Login LAT Service"}, + {35, RADIUS_STRING, "Login LAT Node"}, + {36, RADIUS_BINSTRING, "Login LAT Group"}, + {37, RADIUS_INTEGER4, "Framed Appletalk Link"}, + {38, RADIUS_INTEGER4, "Framed Appletalk Network"}, + {39, RADIUS_STRING, "Framed Appletalk Zone"}, + {40, RADIUS_ACCOUNTING_STATUS_TYPE, "Acct Status Type"}, + {41, RADIUS_INTEGER4, "Acct Delay Time"}, + {42, RADIUS_INTEGER4, "Acct Input Octets"}, + {43, RADIUS_INTEGER4, "Acct Output Octets"}, + {44, RADIUS_STRING, "Acct Session Id"}, + {45, RADIUS_ACCT_AUTHENTIC, "Acct Authentic"}, + {46, RADIUS_INTEGER4, "Acct Session Time"}, + {47, RADIUS_INTEGER4, "Acct Input Packets"}, + {48, RADIUS_INTEGER4, "Acct Output Packets"}, + {49, RADIUS_ACCT_TERMINATE_CAUSE, "Acct Terminate Cause"}, + {50, RADIUS_STRING, "Acct Multi Session Id"}, + {51, RADIUS_INTEGER4, "Acct Link Count"}, + {52, RADIUS_INTEGER4, "Acct Input Gigawords"}, + {53, RADIUS_INTEGER4, "Acct Output Gigawords"}, + /* 54 Unused */ + {55, RADIUS_TIMESTAMP, "Event Timestamp"}, + /* 56-59 Unused */ + {60, RADIUS_STRING, "Chap Challenge"}, + {61, RADIUS_NAS_PORT_TYPE, "NAS Port Type"}, + {62, RADIUS_INTEGER4, "Port Limit"}, + {63, RADIUS_BINSTRING, "Login LAT Port"}, + {64, RADIUS_TUNNEL_TYPE, "Tunnel Type"}, + {65, RADIUS_TUNNEL_MEDIUM_TYPE, "Tunnel Medium Type"}, + {66, RADIUS_STRING_TAGGED, "Tunnel Client Endpoint"}, + {67, RADIUS_STRING_TAGGED, "Tunnel Server Endpoint"}, + {68, RADIUS_STRING, "Tunnel Connection"}, + {69, RADIUS_STRING_TAGGED, "Tunnel Password"}, + {70, RADIUS_STRING, "ARAP-Password"}, + {71, RADIUS_STRING, "ARAP-Features"}, + {72, RADIUS_INTEGER4, "ARAP-Zone-Access"}, + {73, RADIUS_INTEGER4, "ARAP-Security"}, + {74, RADIUS_STRING, "ARAP-Security-Data"}, + {75, RADIUS_INTEGER4, "Password-Retry"}, + {76, RADIUS_INTEGER4, "Prompt"}, + {77, RADIUS_STRING, "Connect-Info"}, + {78, RADIUS_STRING, "Configuration-Token"}, + {79, RADIUS_STRING, "EAP-Message"}, + {80, RADIUS_BINSTRING, "Message Authenticator"}, + {81, RADIUS_STRING_TAGGED, "Tunnel Private Group ID"}, + {82, RADIUS_STRING_TAGGED, "Tunnel Assignment ID"}, + {83, RADIUS_INTEGER4_TAGGED, "Tunnel Preference"}, + {84, RADIUS_STRING, "ARAP Challenge Response"}, + {85, RADIUS_INTEGER4, "Acct Interim Interval"}, + {86, RADIUS_INTEGER4, "Tunnel Packets Lost"}, + {87, RADIUS_STRING, "NAS Port ID"}, + {88, RADIUS_STRING, "Framed Pool"}, + {90, RADIUS_STRING_TAGGED, "Tunnel Client Auth ID"}, + {91, RADIUS_STRING_TAGGED, "Tunnel Server Auth ID"}, + {120, RADIUS_INTEGER4, "Ascend Modem Port No"}, + {121, RADIUS_INTEGER4, "Ascend Modem Slot No"}, + {187, RADIUS_INTEGER4, "Ascend Multilink ID"}, + {188, RADIUS_INTEGER4, "Ascend Num In Multilink"}, + {189, RADIUS_IP_ADDRESS, "Ascend First Dest"}, + {190, RADIUS_INTEGER4, "Ascend Pre Input Octets"}, + {191, RADIUS_INTEGER4, "Ascend Pre Output Octets"}, + {192, RADIUS_INTEGER4, "Ascend Pre Input Packets"}, + {193, RADIUS_INTEGER4, "Ascend Pre Output Packets"}, + {194, RADIUS_INTEGER4, "Ascend Maximum Time"}, + {195, RADIUS_INTEGER4, "Ascend Disconnect Cause"}, + {196, RADIUS_INTEGER4, "Ascend Connect Progress"}, + {197, RADIUS_INTEGER4, "Ascend Data Rate"}, + {198, RADIUS_INTEGER4, "Ascend PreSession Time"}, + {218, RADIUS_INTEGER4, "Ascend Assign IP Pool"}, + {255, RADIUS_INTEGER4, "Ascend Xmit Rate"}, + {0, 0, NULL} +}; + +static value_string radius_service_type_vals[] = +{ + {1, "Login"}, + {2, "Framed"}, + {3, "Callback Login"}, + {4, "Callback Framed"}, + {5, "Outbound"}, + {6, "Administrative"}, + {7, "NAS Prompt"}, + {8, "Authenticate Only"}, + {9, "Callback NAS Prompt"}, + {10, "Call Check"}, + {0, NULL} +}; + +static value_string radius_framed_protocol_vals[] = +{ + {1, "PPP"}, + {2, "SLIP"}, + {3, "Appletalk Remote Access Protocol (ARAP)"}, + {4, "Gandalf proprietary Singlelink/Multilink Protocol"}, + {5, "Xylogics proprietary IPX/SLIP"}, + {6, "X.75 Synchronous"}, + {255, "Ascend ARA"}, + {256, "Ascend MPP"}, + {257, "Ascend EURAW"}, + {258, "Ascend EUUI"}, + {259, "Ascend X25"}, + {260, "Ascend COMB"}, + {261, "Ascend FR"}, + {262, "Ascend MP"}, + {263, "Ascend FR-CIR"}, + {264, "Ascend ATM-1483"}, + {265, "Ascend ATM-FR-CIR"}, + {0, NULL} +}; + +static value_string radius_framed_routing_vals[] = +{ + {1, "Send Routing Packets"}, + {2, "Listen for routing packets"}, + {3, "Send and Listen"}, + {0, "None"}, + {0, NULL} +}; + +static value_string radius_framed_compression_vals[] = +{ + {1, "VJ TCP/IP Header Compression"}, + {2, "IPX Header Compression"}, + {3, "Stac-LZS compression"}, + {0, "None"}, + {0, NULL} +}; + +static value_string radius_login_service_vals[] = +{ + {1, "Rlogin"}, + {2, "TCP Clear"}, + {3, "Portmaster"}, + {4, "LAT"}, + {5, "X.25-PAD"}, + {6, "X.25T3POS"}, + {8, "TCP Clear Quit"}, + {0, "Telnet"}, + {0, NULL} +}; + +static value_string radius_terminating_action_vals[] = +{ + {1, "RADIUS-Request"}, + {0, "Default"}, + {0, NULL} +}; + +static value_string radius_accounting_status_type_vals[] = +{ + {1, "Start"}, + {2, "Stop"}, + {3, "Interim-Update"}, + {7, "Accounting-On"}, + {8, "Accounting-Off"}, + {9, "Tunnel-Start"}, /* Tunnel accounting */ + {10, "Tunnel-Stop"}, /* Tunnel accounting */ + {11, "Tunnel-Reject"}, /* Tunnel accounting */ + {12, "Tunnel-Link-Start"}, /* Tunnel accounting */ + {13, "Tunnel-Link-Stop"}, /* Tunnel accounting */ + {14, "Tunnel-Link-Reject"}, /* Tunnel accounting */ + {0, NULL} +}; + +static value_string radius_accounting_authentication_vals[] = +{ + {1, "Radius"}, + {2, "Local"}, + {3, "Remote"}, + /* RFC 2866 says 3 is Remote. Is 7 a mistake? */ + {7, "Remote"}, + {0, NULL} +}; + +static value_string radius_acct_terminate_cause_vals[] = +{ + {1, "User Request"}, + {2, "Lost Carrier"}, + {3, "Lost Service"}, + {4, "Idle Timeout"}, + {5, "Session Timeout"}, + {6, "Admin Reset"}, + {7, "Admin Reboot"}, + {8, "Port Error"}, + {9, "NAS Error"}, + {10, "NAS Request"}, + {11, "NAS Reboot"}, + {12, "Port Unneeded"}, + {13, "Port Preempted"}, + {14, "Port Suspended"}, + {15, "Service Unavailable"}, + {16, "Callback"}, + {17, "User Error"}, + {18, "Host Request"}, + {0, NULL} +}; + +static value_string radius_tunnel_type_vals[] = +{ + {1, "PPTP"}, + {2, "L2F"}, + {3, "L2TP"}, + {4, "ATMP"}, + {5, "VTP"}, + {6, "AH"}, + {7, "IP-IP-Encap"}, + {8, "MIN-IP-IP"}, + {9, "ESP"}, + {10, "GRE"}, + {11, "DVS"}, + {12, "IP-IP"}, + {0, NULL} +}; + +static value_string radius_tunnel_medium_type_vals[] = +{ + {1, "IPv4"}, + {2, "IPv6"}, + {3, "NSAP"}, + {4, "HDLC"}, + {5, "BBN"}, + {6, "IEEE-802"}, + {7, "E-163"}, + {8, "E-164"}, + {9, "F-69"}, + {10, "X-121"}, + {11, "IPX"}, + {12, "Appletalk"}, + {13, "Decnet4"}, + {14, "Vines"}, + {15, "E-164-NSAP"}, + {0, NULL} +}; + +static value_string radius_nas_port_type_vals[] = +{ + {0, "Async"}, + {1, "Sync"}, + {2, "ISDN Sync"}, + {3, "ISDN Async V.120"}, + {4, "ISDN Async V.110"}, + {5, "Virtual"}, + {6, "PIAFS"}, + {7, "HDLC Clear Channel"}, + {8, "X.25"}, + {9, "X.75"}, + {10, "G.3 Fax"}, + {11, "SDSL"}, + {12, "ADSL-CAP"}, + {13, "ADSL-DMT"}, + {14, "IDSL - ISDN"}, + {15, "Ethernet"}, + {16, "xDSL"}, + {17, "Cable"}, + {18, "Wireless Other"}, + {19, "Wireless IEEE 802.11"}, + {0, NULL} +}; /* references: @@ -362,1685 +566,585 @@ references: */ +static value_value_string radius_vendor_cisco_attrib[] = +{ /* stanard sttributes */ -#define VENDOR_CISCO_VSA_AVP_CISCO 1 -#define VENDOR_CISCO_VSA_NAS_PORT 2 + {1, RADIUS_STRING, "Cisco AV Pair"}, + {2, RADIUS_STRING, "Cisco NAS Port"}, /* fax */ -#define VENDOR_CISCO_VSA_FAX_ACCOUNT_ID_ORIGIN 3 -#define VENDOR_CISCO_VSA_FAX_MSG_ID 4 -#define VENDOR_CISCO_VSA_FAX_PAGES 5 -#define VENDOR_CISCO_VSA_FAX_COVERPAGE_FLAG 6 -#define VENDOR_CISCO_VSA_FAX_MODEM_TIME 7 -#define VENDOR_CISCO_VSA_FAX_CONNECT_SPEED 8 -#define VENDOR_CISCO_VSA_FAX_RECIPENT_COUNT 9 -#define VENDOR_CISCO_VSA_FAX_PROCESS_ABORT_FLAG 10 -#define VENDOR_CISCO_VSA_FAX_DSN_ADDRESS 11 -#define VENDOR_CISCO_VSA_FAX_DSN_FLAG 12 -#define VENDOR_CISCO_VSA_FAX_MDN_ADDRESS 13 -#define VENDOR_CISCO_VSA_FAX_MDN_FLAG 14 -#define VENDOR_CISCO_VSA_FAX_AUTH_STATUS 15 -#define VENDOR_CISCO_VSA_EMAIL_SERVER_ADDRESS 16 -#define VENDOR_CISCO_VSA_EMAIL_SERVER_ACK_FLAG 17 -#define VENDOR_CISCO_VSA_GATEWAY_ID 18 -#define VENDOR_CISCO_VSA_CALL_TYPE 19 -#define VENDOR_CISCO_VSA_PORT_USED 20 -#define VENDOR_CISCO_VSA_ABORT_CAUSE 21 + {3, RADIUS_STRING, "Fax Account Id Origin"}, + {4, RADIUS_STRING, "Fax Msg Id"}, + {5, RADIUS_STRING, "Fax Pages"}, + {6, RADIUS_STRING, "Fax Cover Page Flag"}, + {7, RADIUS_STRING, "Fax Modem Time"}, + {8, RADIUS_STRING, "Fax Connect Speed"}, + {9, RADIUS_STRING, "Fax Recipent Count"}, + {10, RADIUS_STRING, "Fax Process Abort Flag"}, + {11, RADIUS_STRING, "Fax DSN Address"}, + {12, RADIUS_STRING, "Fax DSN Flag"}, + {13, RADIUS_STRING, "Fax MDN Address"}, + {14, RADIUS_STRING, "Fax MDN Flag"}, + {15, RADIUS_STRING, "Fax Auth Status"}, + {16, RADIUS_STRING, "Email Server Address"}, + {17, RADIUS_STRING, "Email Server Ack Flag"}, + {18, RADIUS_STRING, "Gateway Id"}, + {19, RADIUS_STRING, "Call Type"}, + {20, RADIUS_STRING, "Port Used"}, + {21, RADIUS_STRING, "Abort Cause"}, /* #22 */ /* H323 - Voice over IP attributes. */ -#define VENDOR_CISCO_VSA_H323_REMOTE_ADDRESS 23 -#define VENDOR_CISCO_VSA_H323_CONF_ID 24 -#define VENDOR_CISCO_VSA_H323_SETUP_TIME 25 -#define VENDOR_CISCO_VSA_H323_CALL_ORIGIN 26 -#define VENDOR_CISCO_VSA_H323_CALL_TYPE 27 -#define VENDOR_CISCO_VSA_H323_CONNECT_TIME 28 -#define VENDOR_CISCO_VSA_H323_DISCONNECT_TIME 29 -#define VENDOR_CISCO_VSA_H323_DISCONNECT_CAUSE 30 -#define VENDOR_CISCO_VSA_H323_VOICE_QUALITY 31 + {23, RADIUS_STRING, "H323 Remote Address"}, + {24, RADIUS_STRING, "H323 Conf Id"}, + {25, RADIUS_STRING, "H323 Setup Time"}, + {26, RADIUS_STRING, "H323 Call Origin"}, + {27, RADIUS_STRING, "H323 Call Type"}, + {28, RADIUS_STRING, "H323 Connect Time"}, + {29, RADIUS_STRING, "H323 Disconnect Time"}, + {30, RADIUS_STRING, "H323 Disconnect Cause"}, + {31, RADIUS_STRING, "H323 Voice Quality"}, /* #32 */ -#define VENDOR_CISCO_VSA_H323_GW_ID 33 + {33, RADIUS_STRING, "H323 GW Id"}, /* #34 */ -#define VENDOR_CISCO_VSA_H323_INCOMING_CONF_ID 35 + {35, RADIUS_STRING, "H323 Incoming Conf Id"}, /* #36-#100 */ -#define VENDOR_CISCO_VSA_H323_CREDIT_AMOUNT 101 -#define VENDOR_CISCO_VSA_H323_CREDIT_TIME 102 -#define VENDOR_CISCO_VSA_H323_RETURN_CODE 103 -#define VENDOR_CISCO_VSA_H323_PROMPT_ID 104 -#define VENDOR_CISCO_VSA_H323_TIME_AND_DAY 105 -#define VENDOR_CISCO_VSA_H323_REDIRECT_NUMBER 106 -#define VENDOR_CISCO_VSA_H323_PREFERRED_LANG 107 -#define VENDOR_CISCO_VSA_H323_REDIRECT_IP_ADDRESS 108 -#define VENDOR_CISCO_VSA_H323_BILLING_MODEL 109 -#define VENDOR_CISCO_VSA_H323_CURRENCY_TYPE 110 + {101, RADIUS_STRING, "H323 Credit Amount"}, + {102, RADIUS_STRING, "H323 Credit Time"}, + {103, RADIUS_STRING, "H323 Return Code"}, + {104, RADIUS_STRING, "H323 Prompt Id"}, + {105, RADIUS_STRING, "H323 Time And Day"}, + {106, RADIUS_STRING, "H323 Redirect Number"}, + {107, RADIUS_STRING, "H323 Preferred Lang"}, + {108, RADIUS_STRING, "H323 Redirect Ip Address"}, + {109, RADIUS_STRING, "H323 Billing Model"}, + {110, RADIUS_STRING, "H323 Currency Type"}, /* #111-#186 */ /* Extra attributes sent by the Cisco, if you configure "radius-server vsa accounting" (requires IOS11.2+). */ -#define VENDOR_CISCO_VSA_MULTILINK_ID 187 -#define VENDOR_CISCO_VSA_NUM_IN_MULTILINK 188 + {187, RADIUS_INTEGER4, "Cisco Multilink ID"}, + {188, RADIUS_INTEGER4, "Cisco Num In Multilink"}, /* #189 */ -#define VENDOR_CISCO_VSA_PRE_INPUT_OCTETS 190 -#define VENDOR_CISCO_VSA_PRE_OUTPUT_OCTETS 191 -#define VENDOR_CISCO_VSA_PRE_INPUT_PACKETS 192 -#define VENDOR_CISCO_VSA_PRE_OUTPUT_PACKETS 193 -#define VENDOR_CISCO_VSA_MAXIMUM_TIME 194 -#define VENDOR_CISCO_VSA_DISCONNECT_CAUSE 195 + {190, RADIUS_INTEGER4, "Cisco Pre Input Octets"}, + {191, RADIUS_INTEGER4, "Cisco Pre Output Octets"}, + {192, RADIUS_INTEGER4, "Cisco Pre Input Packets"}, + {193, RADIUS_INTEGER4, "Cisco Pre Output Packets"}, + {194, RADIUS_INTEGER4, "Cisco Maximum Time"}, + {195, CISCO_DISCONNECT_CAUSE, "Cisco Disconnect Cause"}, /* #196 */ -#define VENDOR_CISCO_VSA_DATA_RATE 197 -#define VENDOR_CISCO_VSA_PRESESSION_TIME 198 + {197, RADIUS_INTEGER4, "Cisco Data Rate"}, + {198, RADIUS_INTEGER4, "Cisco PreSession Time"}, /* #199-#207 */ -#define VENDOR_CISCO_VSA_PW_LIFETIME 208 -#define VENDOR_CISCO_VSA_IP_DIRECT 209 -#define VENDOR_CISCO_VSA_PPP_VJ_SLOT_COMP 210 + {208, RADIUS_INTEGER4, "Cisco PW Lifetime"}, + {209, RADIUS_INTEGER4, "Cisco IP Direct"}, + {210, RADIUS_INTEGER4, "Cisco PPP VJ Slot Comp"}, /* #211 */ -#define VENDOR_CISCO_VSA_PPP_ASYNC_MAP 212 + {212, RADIUS_INTEGER4, "Cisco PPP Async Map"}, /* #213-#216 */ -#define VENDOR_CISCO_VSA_IP_POOL_DEFINITION 217 -#define VENDOR_CISCO_VSA_ASING_IP_POOL 218 + {217, RADIUS_INTEGER4, "Cisco IP Pool Definition"}, + {218, RADIUS_INTEGER4, "Cisco Asing IP Pool"}, /* #219-#227 */ -#define VENDOR_CISCO_VSA_ROUTE_IP 228 + {228, RADIUS_INTEGER4, "Cisco Route IP"}, /* #229-#232 */ -#define VENDOR_CISCO_VSA_LINK_COMPRESSION 233 -#define VENDOR_CISCO_VSA_TARGET_UTIL 234 -#define VENDOR_CISCO_VSA_MAXIMUM_CHANNELS 235 + {233, RADIUS_INTEGER4, "Cisco Link Compression"}, + {234, RADIUS_INTEGER4, "Cisco Target Util"}, + {235, RADIUS_INTEGER4, "Cisco Maximum Channels"}, /* #236-#241 */ -#define VENDOR_CISCO_VSA_DATA_FILTER 242 -#define VENDOR_CISCO_VSA_CALL_FILTER 243 -#define VENDOR_CISCO_VSA_IDLE_LIMIT 244 -#define VENDOR_CISCO_VSA_XMIT_RATE 255 - -static value_value_pair radius_vendor_cisco_printinfo[] = { -{ VENDOR_CISCO_VSA_AVP_CISCO ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_NAS_PORT ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_ACCOUNT_ID_ORIGIN ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_MSG_ID ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_PAGES ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_COVERPAGE_FLAG ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_MODEM_TIME ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_CONNECT_SPEED ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_RECIPENT_COUNT ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_PROCESS_ABORT_FLAG ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_DSN_ADDRESS ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_DSN_FLAG ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_MDN_ADDRESS ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_MDN_FLAG ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_FAX_AUTH_STATUS ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_EMAIL_SERVER_ADDRESS ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_EMAIL_SERVER_ACK_FLAG ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_GATEWAY_ID ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_CALL_TYPE ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_PORT_USED ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_ABORT_CAUSE ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_REMOTE_ADDRESS ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CONF_ID ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_SETUP_TIME ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CALL_ORIGIN ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CALL_TYPE ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CONNECT_TIME ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_DISCONNECT_TIME ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_DISCONNECT_CAUSE ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_VOICE_QUALITY ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_GW_ID ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_INCOMING_CONF_ID ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CREDIT_AMOUNT ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CREDIT_TIME ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_RETURN_CODE ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_PROMPT_ID ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_TIME_AND_DAY ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_REDIRECT_NUMBER ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_PREFERRED_LANG ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_REDIRECT_IP_ADDRESS ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_BILLING_MODEL ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_H323_CURRENCY_TYPE ,RADIUS_STRING }, -{ VENDOR_CISCO_VSA_MULTILINK_ID ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_NUM_IN_MULTILINK ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PRE_INPUT_OCTETS ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PRE_OUTPUT_OCTETS ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PRE_INPUT_PACKETS ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PRE_OUTPUT_PACKETS ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_MAXIMUM_TIME ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_DISCONNECT_CAUSE ,CISCO_VSA_DISCONNECT_CAUSE }, -{ VENDOR_CISCO_VSA_DATA_RATE ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PRESESSION_TIME ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PW_LIFETIME ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_IP_DIRECT ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PPP_VJ_SLOT_COMP ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_PPP_ASYNC_MAP ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_IP_POOL_DEFINITION ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_ASING_IP_POOL ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_ROUTE_IP ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_LINK_COMPRESSION ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_TARGET_UTIL ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_MAXIMUM_CHANNELS ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_DATA_FILTER ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_CALL_FILTER ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_IDLE_LIMIT ,RADIUS_INTEGER4 }, -{ VENDOR_CISCO_VSA_XMIT_RATE ,RADIUS_INTEGER4 }, -{0,0}, + {242, RADIUS_INTEGER4, "Cisco Data Filter"}, + {243, RADIUS_INTEGER4, "Cisco Call Filter"}, + {244, RADIUS_INTEGER4, "Cisco Idle Limit"}, + {255, RADIUS_INTEGER4, "Cisco Xmit Rate"}, + {0, 0, NULL} }; -static value_string radius_vendor_cisco_types[]= -{{VENDOR_CISCO_VSA_AVP_CISCO ,"Cisco AV Pair" }, -{ VENDOR_CISCO_VSA_NAS_PORT ,"Cisco NAS Port" }, -{ VENDOR_CISCO_VSA_FAX_ACCOUNT_ID_ORIGIN ,"Fax Account Id Origin" }, -{ VENDOR_CISCO_VSA_FAX_MSG_ID ,"Fax Msg Id" }, -{ VENDOR_CISCO_VSA_FAX_PAGES ,"Fax Pages" }, -{ VENDOR_CISCO_VSA_FAX_COVERPAGE_FLAG ,"Fax Cover Page Flag" }, -{ VENDOR_CISCO_VSA_FAX_MODEM_TIME ,"Fax Modem Time" }, -{ VENDOR_CISCO_VSA_FAX_CONNECT_SPEED ,"Fax Connect Speed" }, -{ VENDOR_CISCO_VSA_FAX_RECIPENT_COUNT ,"Fax Recipent Count" }, -{ VENDOR_CISCO_VSA_FAX_PROCESS_ABORT_FLAG ,"Fax Process Abort Flag" }, -{ VENDOR_CISCO_VSA_FAX_DSN_ADDRESS ,"Fax DSN Address" }, -{ VENDOR_CISCO_VSA_FAX_DSN_FLAG ,"Fax DSN Flag" }, -{ VENDOR_CISCO_VSA_FAX_MDN_ADDRESS ,"Fax MDN Address" }, -{ VENDOR_CISCO_VSA_FAX_MDN_FLAG ,"Fax MDN Flag" }, -{ VENDOR_CISCO_VSA_FAX_AUTH_STATUS ,"Fax Auth Status" }, -{ VENDOR_CISCO_VSA_EMAIL_SERVER_ADDRESS ,"Email Server Address" }, -{ VENDOR_CISCO_VSA_EMAIL_SERVER_ACK_FLAG ,"Email Server Ack Flag" }, -{ VENDOR_CISCO_VSA_GATEWAY_ID ,"Gateway Id" }, -{ VENDOR_CISCO_VSA_CALL_TYPE ,"Call Type" }, -{ VENDOR_CISCO_VSA_PORT_USED ,"Port Used" }, -{ VENDOR_CISCO_VSA_ABORT_CAUSE ,"Abort Cause" }, -{ VENDOR_CISCO_VSA_H323_REMOTE_ADDRESS ,"H323 Remote Address" }, -{ VENDOR_CISCO_VSA_H323_CONF_ID ,"H323 Conf Id" }, -{ VENDOR_CISCO_VSA_H323_SETUP_TIME ,"H323 Setup Time" }, -{ VENDOR_CISCO_VSA_H323_CALL_ORIGIN ,"H323 Call Origin" }, -{ VENDOR_CISCO_VSA_H323_CALL_TYPE ,"H323 Call Type" }, -{ VENDOR_CISCO_VSA_H323_CONNECT_TIME ,"H323 Connect Time" }, -{ VENDOR_CISCO_VSA_H323_DISCONNECT_TIME ,"H323 Disconnect Time" }, -{ VENDOR_CISCO_VSA_H323_DISCONNECT_CAUSE ,"H323 Disconnect Cause" }, -{ VENDOR_CISCO_VSA_H323_VOICE_QUALITY ,"H323 Voice Quality" }, -{ VENDOR_CISCO_VSA_H323_GW_ID ,"H323 GW Id" }, -{ VENDOR_CISCO_VSA_H323_INCOMING_CONF_ID ,"H323 Incoming Conf Id" }, -{ VENDOR_CISCO_VSA_H323_CREDIT_AMOUNT ,"H323 Credit Amount" }, -{ VENDOR_CISCO_VSA_H323_CREDIT_TIME ,"H323 Credit Time" }, -{ VENDOR_CISCO_VSA_H323_RETURN_CODE ,"H323 Return Code" }, -{ VENDOR_CISCO_VSA_H323_PROMPT_ID ,"H323 Prompt Id" }, -{ VENDOR_CISCO_VSA_H323_TIME_AND_DAY ,"H323 Time And Day" }, -{ VENDOR_CISCO_VSA_H323_REDIRECT_NUMBER ,"H323 Redirect Number" }, -{ VENDOR_CISCO_VSA_H323_PREFERRED_LANG ,"H323 Preferred Lang" }, -{ VENDOR_CISCO_VSA_H323_REDIRECT_IP_ADDRESS ,"H323 Redirect Ip Address" }, -{ VENDOR_CISCO_VSA_H323_BILLING_MODEL ,"H323 Billing Model" }, -{ VENDOR_CISCO_VSA_H323_CURRENCY_TYPE ,"H323 Currency Type" }, -{ VENDOR_CISCO_VSA_MULTILINK_ID ,"Cisco Multilink ID" }, -{ VENDOR_CISCO_VSA_NUM_IN_MULTILINK ,"Cisco Num In Multilink" }, -{ VENDOR_CISCO_VSA_PRE_INPUT_OCTETS ,"Cisco Pre Input Octets" }, -{ VENDOR_CISCO_VSA_PRE_OUTPUT_OCTETS ,"Cisco Pre Output Octets" }, -{ VENDOR_CISCO_VSA_PRE_INPUT_PACKETS ,"Cisco Pre Input Packets" }, -{ VENDOR_CISCO_VSA_PRE_OUTPUT_PACKETS ,"Cisco Pre Output Packets" }, -{ VENDOR_CISCO_VSA_MAXIMUM_TIME ,"Cisco Maximum Time" }, -{ VENDOR_CISCO_VSA_DISCONNECT_CAUSE ,"Cisco Disconnect Cause" }, -{ VENDOR_CISCO_VSA_DATA_RATE ,"Cisco Data Rate" }, -{ VENDOR_CISCO_VSA_PRESESSION_TIME ,"Cisco PreSession Time" }, -{ VENDOR_CISCO_VSA_PW_LIFETIME ,"Cisco PW Lifetime" }, -{ VENDOR_CISCO_VSA_IP_DIRECT ,"Cisco IP Direct" }, -{ VENDOR_CISCO_VSA_PPP_VJ_SLOT_COMP ,"Cisco PPP VJ Slot Comp" }, -{ VENDOR_CISCO_VSA_PPP_ASYNC_MAP ,"Cisco PPP Async Map" }, -{ VENDOR_CISCO_VSA_IP_POOL_DEFINITION ,"Cisco IP Pool Definition" }, -{ VENDOR_CISCO_VSA_ASING_IP_POOL ,"Cisco Asing IP Pool" }, -{ VENDOR_CISCO_VSA_ROUTE_IP ,"Cisco Route IP" }, -{ VENDOR_CISCO_VSA_LINK_COMPRESSION ,"Cisco Link Compression" }, -{ VENDOR_CISCO_VSA_TARGET_UTIL ,"Cisco Target Util" }, -{ VENDOR_CISCO_VSA_MAXIMUM_CHANNELS ,"Cisco Maximum Channels" }, -{ VENDOR_CISCO_VSA_DATA_FILTER ,"Cisco Data Filter" }, -{ VENDOR_CISCO_VSA_CALL_FILTER ,"Cisco Call Filter" }, -{ VENDOR_CISCO_VSA_IDLE_LIMIT ,"Cisco Idle Limit" }, -{ VENDOR_CISCO_VSA_XMIT_RATE ,"Cisco Xmit Rate" }, -{0,NULL}}; - -static value_string radius_vendor_cisco_disconnect_cause_vals[]= -{{2, "Unknown"}, -{4, "CLID-Authentication-Failure"}, -{10, "No-Carrier"}, -{11, "Lost-Carrier"}, -{12, "No-Detected-Result-Codes"}, -{20, "User-Ends-Session"}, -{21, "Idle-Timeout"}, -{22, "Exit-Telnet-Session"}, -{23, "No-Remote-IP-Addr"}, -{24, "Exit-Raw-TCP"}, -{25, "Password-Fail"}, -{26, "Raw-TCP-Disabled"}, -{27, "Control-C-Detected"}, -{28, "EXEC-Program-Destroyed"}, -{40, "Timeout-PPP-LCP"}, -{41, "Failed-PPP-LCP-Negotiation"}, -{42, "Failed-PPP-PAP-Auth-Fail"}, -{43, "Failed-PPP-CHAP-Auth"}, -{44, "Failed-PPP-Remote-Auth"}, -{45, "PPP-Remote-Terminate"}, -{46, "PPP-Closed-Event"}, -{100, "Session-Timeout"}, -{101, "Session-Failed-Security"}, -{102, "Session-End-Callback"}, -{120, "Invalid-Protocol"}, -{0,NULL}}; - -#define VENDOR_MICROSOFT_VSA_CHAP_RESPONSE 1 -#define VENDOR_MICROSOFT_VSA_CHAP_ERROR 2 -#define VENDOR_MICROSOFT_VSA_CHAP_CPW_1 3 -#define VENDOR_MICROSOFT_VSA_CHAP_CPW_2 4 -#define VENDOR_MICROSOFT_VSA_CHAP_LM_ENC_PW 5 -#define VENDOR_MICROSOFT_VSA_CHAP_NT_ENC_PW 6 -#define VENDOR_MICROSOFT_VSA_MPPE_ENCRYPTION_POLICY 7 -#define VENDOR_MICROSOFT_VSA_MPPE_ENCRYPTION_TYPE 8 -#define VENDOR_MICROSOFT_VSA_RAS_VENDOR 9 -#define VENDOR_MICROSOFT_VSA_CHAP_DOMAIN 10 -#define VENDOR_MICROSOFT_VSA_CHAP_CHALLENGE 11 -#define VENDOR_MICROSOFT_VSA_CHAP_MPPE_KEYS 12 -#define VENDOR_MICROSOFT_VSA_BAP_USAGE 13 -#define VENDOR_MICROSOFT_VSA_LINK_UTILIZATION_THRESHOLD 14 -#define VENDOR_MICROSOFT_VSA_LINK_DROP_TIME_LIMIT 15 -#define VENDOR_MICROSOFT_VSA_MPPE_SEND_KEY 16 -#define VENDOR_MICROSOFT_VSA_MPPE_RECV_KEY 17 -#define VENDOR_MICROSOFT_VSA_RAS_VERSION 18 -#define VENDOR_MICROSOFT_VSA_OLD_ARAP_PASSWORD 19 -#define VENDOR_MICROSOFT_VSA_NEW_ARAP_PASSWORD 20 -#define VENDOR_MICROSOFT_VSA_ARAP_PW_CHANGE_REASON 21 -#define VENDOR_MICROSOFT_VSA_FILTER 22 -#define VENDOR_MICROSOFT_VSA_ACCT_AUTH_TYPE 23 -#define VENDOR_MICROSOFT_VSA_ACCT_EAP_TYPE 24 -#define VENDOR_MICROSOFT_VSA_CHAP2_RESPONSE 25 -#define VENDOR_MICROSOFT_VSA_CHAP2_SUCCESS 26 -#define VENDOR_MICROSOFT_VSA_CHAP2_CPW 27 -#define VENDOR_MICROSOFT_VSA_PRIMARY_DNS_SERVER 28 -#define VENDOR_MICROSOFT_VSA_SECONDARY_DNS_SERVER 29 -#define VENDOR_MICROSOFT_VSA_PRIMARY_NBNS_SERVER 30 -#define VENDOR_MICROSOFT_VSA_SECONDARY_NBNS_SERVER 31 - -static value_value_pair radius_vendor_microsoft_printinfo[] = { -{ VENDOR_MICROSOFT_VSA_CHAP_RESPONSE, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_ERROR, RADIUS_STRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_CPW_1, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_CPW_2, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_LM_ENC_PW, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_NT_ENC_PW, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_MPPE_ENCRYPTION_POLICY, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_MPPE_ENCRYPTION_TYPE, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_RAS_VENDOR, RADIUS_INTEGER4 }, -{ VENDOR_MICROSOFT_VSA_CHAP_DOMAIN, RADIUS_STRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_CHALLENGE, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP_MPPE_KEYS, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_BAP_USAGE, MICROSOFT_VSA_BAP_USAGE }, -{ VENDOR_MICROSOFT_VSA_LINK_UTILIZATION_THRESHOLD, RADIUS_INTEGER4 }, -{ VENDOR_MICROSOFT_VSA_LINK_DROP_TIME_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_MICROSOFT_VSA_MPPE_SEND_KEY, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_MPPE_RECV_KEY, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_RAS_VERSION, RADIUS_STRING }, -{ VENDOR_MICROSOFT_VSA_OLD_ARAP_PASSWORD, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_NEW_ARAP_PASSWORD, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_ARAP_PW_CHANGE_REASON, MICROSOFT_VSA_ARAP_PW_CHANGE_REASON }, -{ VENDOR_MICROSOFT_VSA_FILTER, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_ACCT_AUTH_TYPE, MICROSOFT_VSA_ACCT_AUTH_TYPE }, -{ VENDOR_MICROSOFT_VSA_ACCT_EAP_TYPE, MICROSOFT_VSA_ACCT_EAP_TYPE }, -{ VENDOR_MICROSOFT_VSA_CHAP2_RESPONSE, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP2_SUCCESS, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_CHAP2_CPW, RADIUS_BINSTRING }, -{ VENDOR_MICROSOFT_VSA_PRIMARY_DNS_SERVER, RADIUS_IP_ADDRESS }, -{ VENDOR_MICROSOFT_VSA_SECONDARY_DNS_SERVER, RADIUS_IP_ADDRESS }, -{ VENDOR_MICROSOFT_VSA_PRIMARY_NBNS_SERVER, RADIUS_IP_ADDRESS }, -{ VENDOR_MICROSOFT_VSA_SECONDARY_NBNS_SERVER, RADIUS_IP_ADDRESS }, -{0,0}, +static value_string radius_vendor_cisco_disconnect_cause_vals[] = +{ + {2, "Unknown"}, + {4, "CLID-Authentication-Failure"}, + {10, "No-Carrier"}, + {11, "Lost-Carrier"}, + {12, "No-Detected-Result-Codes"}, + {20, "User-Ends-Session"}, + {21, "Idle-Timeout"}, + {22, "Exit-Telnet-Session"}, + {23, "No-Remote-IP-Addr"}, + {24, "Exit-Raw-TCP"}, + {25, "Password-Fail"}, + {26, "Raw-TCP-Disabled"}, + {27, "Control-C-Detected"}, + {28, "EXEC-Program-Destroyed"}, + {40, "Timeout-PPP-LCP"}, + {41, "Failed-PPP-LCP-Negotiation"}, + {42, "Failed-PPP-PAP-Auth-Fail"}, + {43, "Failed-PPP-CHAP-Auth"}, + {44, "Failed-PPP-Remote-Auth"}, + {45, "PPP-Remote-Terminate"}, + {46, "PPP-Closed-Event"}, + {100, "Session-Timeout"}, + {101, "Session-Failed-Security"}, + {102, "Session-End-Callback"}, + {120, "Invalid-Protocol"}, + {0, NULL} }; -static value_string radius_vendor_microsoft_types[] = { -{ VENDOR_MICROSOFT_VSA_CHAP_RESPONSE, "MS CHAP Response" }, -{ VENDOR_MICROSOFT_VSA_CHAP_ERROR, "MS CHAP Error" }, -{ VENDOR_MICROSOFT_VSA_CHAP_CPW_1, "MS CHAP CPW 1" }, -{ VENDOR_MICROSOFT_VSA_CHAP_CPW_2, "MS CHAP CPW 2" }, -{ VENDOR_MICROSOFT_VSA_CHAP_LM_ENC_PW, "MS CHAP LM Enc PW" }, -{ VENDOR_MICROSOFT_VSA_CHAP_NT_ENC_PW, "MS CHAP NT Enc PW" }, -{ VENDOR_MICROSOFT_VSA_MPPE_ENCRYPTION_POLICY, "MS MPPE Encryption Policy" }, -{ VENDOR_MICROSOFT_VSA_MPPE_ENCRYPTION_TYPE, "MS MPPE Encryption Type" }, -{ VENDOR_MICROSOFT_VSA_RAS_VENDOR, "MS RAS Vendor" }, -{ VENDOR_MICROSOFT_VSA_CHAP_DOMAIN, "MS CHAP Domain" }, -{ VENDOR_MICROSOFT_VSA_CHAP_CHALLENGE, "MS CHAP Challenge" }, -{ VENDOR_MICROSOFT_VSA_CHAP_MPPE_KEYS, "MS CHAP MPPE Keys" }, -{ VENDOR_MICROSOFT_VSA_BAP_USAGE, "MS BAP Usage" }, -{ VENDOR_MICROSOFT_VSA_LINK_UTILIZATION_THRESHOLD, "MS Link Utilization Threshold" }, -{ VENDOR_MICROSOFT_VSA_LINK_DROP_TIME_LIMIT, "MS Link Drop Time Limit" }, -{ VENDOR_MICROSOFT_VSA_MPPE_SEND_KEY, "MS MPPE Send Key" }, -{ VENDOR_MICROSOFT_VSA_MPPE_RECV_KEY, "MS MPPE Recv Key" }, -{ VENDOR_MICROSOFT_VSA_RAS_VERSION, "MS RAS Version" }, -{ VENDOR_MICROSOFT_VSA_OLD_ARAP_PASSWORD, "MS Old ARAP Password" }, -{ VENDOR_MICROSOFT_VSA_NEW_ARAP_PASSWORD, "MS New ARAP Password" }, -{ VENDOR_MICROSOFT_VSA_ARAP_PW_CHANGE_REASON, "MS ARAP PW Change Reason" }, -{ VENDOR_MICROSOFT_VSA_FILTER, "MS Filter" }, -{ VENDOR_MICROSOFT_VSA_ACCT_AUTH_TYPE, "MS Acct Auth Type" }, -{ VENDOR_MICROSOFT_VSA_ACCT_EAP_TYPE, "MS Acct EAP Type" }, -{ VENDOR_MICROSOFT_VSA_CHAP2_RESPONSE, "MS CHAP2 Response" }, -{ VENDOR_MICROSOFT_VSA_CHAP2_SUCCESS, "MS CHAP2 Success" }, -{ VENDOR_MICROSOFT_VSA_CHAP2_CPW, "MS CHAP2 CPW" }, -{ VENDOR_MICROSOFT_VSA_PRIMARY_DNS_SERVER, "MS Primary DNS Server" }, -{ VENDOR_MICROSOFT_VSA_SECONDARY_DNS_SERVER, "MS Secondary DNS Server" }, -{ VENDOR_MICROSOFT_VSA_PRIMARY_NBNS_SERVER, "MS Primary NBNS Server" }, -{ VENDOR_MICROSOFT_VSA_SECONDARY_NBNS_SERVER, "MS Secondary NBNS Server" }, -{0,NULL}, +static value_value_string radius_vendor_microsoft_attrib[] = +{ + {1, RADIUS_BINSTRING, "MS CHAP Response"}, + {2, RADIUS_STRING, "MS CHAP Error"}, + {3, RADIUS_BINSTRING, "MS CHAP CPW 1"}, + {4, RADIUS_BINSTRING, "MS CHAP CPW 2"}, + {5, RADIUS_BINSTRING, "MS CHAP LM Enc PW"}, + {6, RADIUS_BINSTRING, "MS CHAP NT Enc PW"}, + {7, RADIUS_BINSTRING, "MS MPPE Encryption Policy"}, + {8, RADIUS_BINSTRING, "MS MPPE Encryption Type"}, + {9, RADIUS_INTEGER4, "MS RAS Vendor"}, + {10, RADIUS_STRING, "MS CHAP Domain"}, + {11, RADIUS_BINSTRING, "MS CHAP Challenge"}, + {12, RADIUS_BINSTRING, "MS CHAP MPPE Keys"}, + {13, MICROSOFT_BAP_USAGE, "MS BAP Usage"}, + {14, RADIUS_INTEGER4, "MS Link Utilization Threshold"}, + {15, RADIUS_INTEGER4, "MS Link Drop Time Limit"}, + {16, RADIUS_BINSTRING, "MS MPPE Send Key"}, + {17, RADIUS_BINSTRING, "MS MPPE Recv Key"}, + {18, RADIUS_STRING, "MS RAS Version"}, + {19, RADIUS_BINSTRING, "MS Old ARAP Password"}, + {20, RADIUS_BINSTRING, "MS New ARAP Password"}, + {21, MICROSOFT_ARAP_PW_CHANGE_REASON,"MS ARAP PW Change Reason"}, + {22, RADIUS_BINSTRING, "MS Filter"}, + {23, MICROSOFT_ACCT_AUTH_TYPE, "MS Acct Auth Type"}, + {24, MICROSOFT_ACCT_EAP_TYPE, "MS Acct EAP Type"}, + {25, RADIUS_BINSTRING, "MS CHAP2 Response"}, + {26, RADIUS_BINSTRING, "MS CHAP2 Success"}, + {27, RADIUS_BINSTRING, "MS CHAP2 CPW"}, + {28, RADIUS_IP_ADDRESS, "MS Primary DNS Server"}, + {29, RADIUS_IP_ADDRESS, "MS Secondary DNS Server"}, + {30, RADIUS_IP_ADDRESS, "MS Primary NBNS Server"}, + {31, RADIUS_IP_ADDRESS, "MS Secondary NBNS Server"}, + {0, 0, NULL} }; -static value_string radius_vendor_microsoft_bap_usage_vals[]= -{{0, "Not-Allowed"}, -{1, "Allowed"}, -{2, "Required"}, -{0,NULL}}; - -static value_string radius_vendor_microsoft_arap_pw_change_reason_vals[]= -{{1, "Just-Change-Password"}, -{2, "Expired-Password"}, -{3, "Admin-Required-Password-Change"}, -{4, "Password-Too-Short"}, -{0,NULL}}; - -static value_string radius_vendor_microsoft_acct_auth_type_vals[]= -{{1, "PAP"}, -{2, "CHAP"}, -{3, "MS-CHAP-1"}, -{4, "MS-CHAP-2"}, -{5, "EAP"}, -{0,NULL}}; - -static value_string radius_vendor_microsoft_acct_eap_type_vals[]= -{{4, "MD5"}, -{5, "OTP"}, -{6, "Generic-Token-Card"}, -{13, "TLS"}, -{0,NULL}}; - -#define VENDOR_ASCEND_VSA_UU_INFO 7 -#define VENDOR_ASCEND_VSA_CIR_TIMER 9 -#define VENDOR_ASCEND_VSA_FR_08_MODE 10 -#define VENDOR_ASCEND_VSA_DESTINATION_NAS_PORT 11 -#define VENDOR_ASCEND_VSA_FR_SVC_ADDR 12 -#define VENDOR_ASCEND_VSA_NAS_PORT_FORMAT 13 -#define VENDOR_ASCEND_VSA_ATM_FAULT_MANAGEMENT 14 -#define VENDOR_ASCEND_VSA_ATM_LOOPBACK_CELL_LOSS 15 -#define VENDOR_ASCEND_VSA_CKT_TYPE 16 -#define VENDOR_ASCEND_VSA_SVC_ENABLED 17 -#define VENDOR_ASCEND_VSA_SESSION_TYPE 18 -#define VENDOR_ASCEND_VSA_H323_GATEKEEPER 19 -#define VENDOR_ASCEND_VSA_GLOBAL_CALL_ID 20 -#define VENDOR_ASCEND_VSA_H323_CONFERENCE_ID 21 -#define VENDOR_ASCEND_VSA_H323_FEGW_ADDRESS 22 -#define VENDOR_ASCEND_VSA_H323_DIALED_TIME 23 -#define VENDOR_ASCEND_VSA_DIALED_NUMBER 24 -#define VENDOR_ASCEND_VSA_INTER_ARRIVAL_JITTER 25 -#define VENDOR_ASCEND_VSA_DROPPED_OCTETS 26 -#define VENDOR_ASCEND_VSA_DROPPED_PACKETS 27 -#define VENDOR_ASCEND_VSA_X25_PAD_X3_PROFILE 29 -#define VENDOR_ASCEND_VSA_X25_PAD_X3_PARAMETERS 30 -#define VENDOR_ASCEND_VSA_TUNNEL_VROUTER_NAME 31 -#define VENDOR_ASCEND_VSA_X25_REVERSE_CHARGING 32 -#define VENDOR_ASCEND_VSA_X25_NUI_PROMPT 33 -#define VENDOR_ASCEND_VSA_X25_NUI_PASSWORD_PROMPT 34 -#define VENDOR_ASCEND_VSA_X25_CUG 35 -#define VENDOR_ASCEND_VSA_X25_PAD_ALIAS_1 36 -#define VENDOR_ASCEND_VSA_X25_PAD_ALIAS_2 37 -#define VENDOR_ASCEND_VSA_X25_PAD_ALIAS_3 38 -#define VENDOR_ASCEND_VSA_X25_X121_ADDRESS 39 -#define VENDOR_ASCEND_VSA_X25_NUI 40 -#define VENDOR_ASCEND_VSA_X25_RPOA 41 -#define VENDOR_ASCEND_VSA_X25_PAD_PROMPT 42 -#define VENDOR_ASCEND_VSA_X25_PAD_BANNER 43 -#define VENDOR_ASCEND_VSA_X25_PROFILE_NAME 44 -#define VENDOR_ASCEND_VSA_RECV_NAME 45 -#define VENDOR_ASCEND_VSA_BI_DIRECTIONAL_AUTH 46 -#define VENDOR_ASCEND_VSA_MTU 47 -#define VENDOR_ASCEND_VSA_CALL_DIRECTION 48 -#define VENDOR_ASCEND_VSA_SERVICE_TYPE 49 -#define VENDOR_ASCEND_VSA_FILTER_REQUIRED 50 -#define VENDOR_ASCEND_VSA_TRAFFIC_SHAPER 51 -#define VENDOR_ASCEND_VSA_ACCESS_INTERCEPT_LEA 52 -#define VENDOR_ASCEND_VSA_ACCESS_INTERCEPT_LOG 53 -#define VENDOR_ASCEND_VSA_PRIVATE_ROUTE_TABLE_ID 54 -#define VENDOR_ASCEND_VSA_PRIVATE_ROUTE_REQUIRED 55 -#define VENDOR_ASCEND_VSA_CACHE_REFRESH 56 -#define VENDOR_ASCEND_VSA_CACHE_TIME 57 -#define VENDOR_ASCEND_VSA_EGRESS_ENABLED 58 -#define VENDOR_ASCEND_VSA_QOS_UPSTREAM 59 -#define VENDOR_ASCEND_VSA_QOS_DOWNSTREAM 60 -#define VENDOR_ASCEND_VSA_ATM_CONNECT_VPI 61 -#define VENDOR_ASCEND_VSA_ATM_CONNECT_VCI 62 -#define VENDOR_ASCEND_VSA_ATM_CONNECT_GROUP 63 -#define VENDOR_ASCEND_VSA_ATM_GROUP 64 -#define VENDOR_ASCEND_VSA_IPX_HEADER_COMPRESSION 65 -#define VENDOR_ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER 66 -#define VENDOR_ASCEND_VSA_CALLING_ID_NUMBERING_PLAN 67 -#define VENDOR_ASCEND_VSA_CALLING_ID_PRESENTATION 68 -#define VENDOR_ASCEND_VSA_CALLING_ID_SCREENING 69 -#define VENDOR_ASCEND_VSA_BIR_ENABLE 70 -#define VENDOR_ASCEND_VSA_BIR_PROXY 71 -#define VENDOR_ASCEND_VSA_BIR_BRIDGE_GROUP 72 -#define VENDOR_ASCEND_VSA_IPSEC_PROFILE 73 -#define VENDOR_ASCEND_VSA_PPPOE_ENABLE 74 -#define VENDOR_ASCEND_VSA_BRIDGE_NON_PPPOE 75 -#define VENDOR_ASCEND_VSA_ATM_DIRECT 76 -#define VENDOR_ASCEND_VSA_ATM_DIRECT_PROFILE 77 -#define VENDOR_ASCEND_VSA_CLIENT_PRIMARY_WINS 78 -#define VENDOR_ASCEND_VSA_CLIENT_SECONDARY_WINS 79 -#define VENDOR_ASCEND_VSA_CLIENT_ASSIGN_WINS 80 -#define VENDOR_ASCEND_VSA_AUTH_TYPE 81 -#define VENDOR_ASCEND_VSA_PORT_REDIR_PROTOCOL 82 -#define VENDOR_ASCEND_VSA_PORT_REDIR_PORTNUM 83 -#define VENDOR_ASCEND_VSA_PORT_REDIR_SERVER 84 -#define VENDOR_ASCEND_VSA_IP_POOL_CHAINING 85 -#define VENDOR_ASCEND_VSA_OWNER_IP_ADDR 86 -#define VENDOR_ASCEND_VSA_IP_TOS 87 -#define VENDOR_ASCEND_VSA_IP_TOS_PRECEDENCE 88 -#define VENDOR_ASCEND_VSA_IP_TOS_APPLY_TO 89 -#define VENDOR_ASCEND_VSA_FILTER 90 -#define VENDOR_ASCEND_VSA_TELNET_PROFILE 91 -#define VENDOR_ASCEND_VSA_DSL_RATE_TYPE 92 -#define VENDOR_ASCEND_VSA_REDIRECT_NUMBER 93 -#define VENDOR_ASCEND_VSA_ATM_VPI 94 -#define VENDOR_ASCEND_VSA_ATM_VCI 95 -#define VENDOR_ASCEND_VSA_SOURCE_IP_CHECK 96 -#define VENDOR_ASCEND_VSA_DSL_RATE_MODE 97 -#define VENDOR_ASCEND_VSA_DSL_UPSTREAM_LIMIT 98 -#define VENDOR_ASCEND_VSA_DSL_DOWNSTREAM_LIMIT 99 -#define VENDOR_ASCEND_VSA_DSL_CIR_RECV_LIMIT 100 -#define VENDOR_ASCEND_VSA_DSL_CIR_XMIT_LIMIT 101 -#define VENDOR_ASCEND_VSA_VROUTER_NAME 102 -#define VENDOR_ASCEND_VSA_SOURCE_AUTH 103 -#define VENDOR_ASCEND_VSA_PRIVATE_ROUTE 104 -#define VENDOR_ASCEND_VSA_NUMBERING_PLAN_ID 105 -#define VENDOR_ASCEND_VSA_FR_LINK_STATUS_DLCI 106 -#define VENDOR_ASCEND_VSA_CALLING_SUBADDRESS 107 -#define VENDOR_ASCEND_VSA_CALLBACK_DELAY 108 -#define VENDOR_ASCEND_VSA_ENDPOINT_DISC 109 -#define VENDOR_ASCEND_VSA_REMOTE_FW 110 -#define VENDOR_ASCEND_VSA_MULTICAST_GLEAVE_DELAY 111 -#define VENDOR_ASCEND_VSA_CBCP_ENABLE 112 -#define VENDOR_ASCEND_VSA_CBCP_MODE 113 -#define VENDOR_ASCEND_VSA_CBCP_DELAY 114 -#define VENDOR_ASCEND_VSA_CBCP_TRUNK_GROUP 115 -#define VENDOR_ASCEND_VSA_APPLETALK_ROUTE 116 -#define VENDOR_ASCEND_VSA_APPLETALK_PEER_MODE 117 -#define VENDOR_ASCEND_VSA_ROUTE_APPLETALK 118 -#define VENDOR_ASCEND_VSA_FCP_PARAMETER 119 -#define VENDOR_ASCEND_VSA_MODEM_PORTNO 120 -#define VENDOR_ASCEND_VSA_MODEM_SLOTNO 121 -#define VENDOR_ASCEND_VSA_MODEM_SHELFNO 122 -#define VENDOR_ASCEND_VSA_CALL_ATTEMPT_LIMIT 123 -#define VENDOR_ASCEND_VSA_CALL_BLOCK_DURATION 124 -#define VENDOR_ASCEND_VSA_MAXIMUM_CALL_DURATION 125 -#define VENDOR_ASCEND_VSA_TEMPORARY_RTES 126 -#define VENDOR_ASCEND_VSA_TUNNELING_PROTOCOL 127 -#define VENDOR_ASCEND_VSA_SHARED_PROFILE_ENABLE 128 -#define VENDOR_ASCEND_VSA_PRIMARY_HOME_AGENT 129 -#define VENDOR_ASCEND_VSA_SECONDARY_HOME_AGENT 130 -#define VENDOR_ASCEND_VSA_DIALOUT_ALLOWED 131 -#define VENDOR_ASCEND_VSA_CLIENT_GATEWAY 132 -#define VENDOR_ASCEND_VSA_BACP_ENABLE 133 -#define VENDOR_ASCEND_VSA_DHCP_MAXIMUM_LEASES 134 -#define VENDOR_ASCEND_VSA_CLIENT_PRIMARY_DNS 135 -#define VENDOR_ASCEND_VSA_CLIENT_SECONDARY_DNS 136 -#define VENDOR_ASCEND_VSA_CLIENT_ASSIGN_DNS 137 -#define VENDOR_ASCEND_VSA_USER_ACCT_TYPE 138 -#define VENDOR_ASCEND_VSA_USER_ACCT_HOST 139 -#define VENDOR_ASCEND_VSA_USER_ACCT_PORT 140 -#define VENDOR_ASCEND_VSA_USER_ACCT_KEY 141 -#define VENDOR_ASCEND_VSA_USER_ACCT_BASE 142 -#define VENDOR_ASCEND_VSA_USER_ACCT_TIME 143 -#define VENDOR_ASCEND_VSA_ASSIGN_IP_CLIENT 144 -#define VENDOR_ASCEND_VSA_ASSIGN_IP_SERVER 145 -#define VENDOR_ASCEND_VSA_ASSIGN_IP_GLOBAL_POOL 146 -#define VENDOR_ASCEND_VSA_DHCP_REPLY 147 -#define VENDOR_ASCEND_VSA_DHCP_POOL_NUMBER 148 -#define VENDOR_ASCEND_VSA_EXPECT_CALLBACK 149 -#define VENDOR_ASCEND_VSA_EVENT_TYPE 150 -#define VENDOR_ASCEND_VSA_SESSION_SVR_KEY 151 -#define VENDOR_ASCEND_VSA_MULTICAST_RATE_LIMIT 152 -#define VENDOR_ASCEND_VSA_IF_NETMASK 153 -#define VENDOR_ASCEND_VSA_REMOTE_ADDR 154 -#define VENDOR_ASCEND_VSA_MULTICAST_CLIENT 155 -#define VENDOR_ASCEND_VSA_FR_CIRCUIT_NAME 156 -#define VENDOR_ASCEND_VSA_FR_LINKUP 157 -#define VENDOR_ASCEND_VSA_FR_NAILED_GRP 158 -#define VENDOR_ASCEND_VSA_FR_TYPE 159 -#define VENDOR_ASCEND_VSA_FR_LINK_MGT 160 -#define VENDOR_ASCEND_VSA_FR_N391 161 -#define VENDOR_ASCEND_VSA_FR_DCE_N392 162 -#define VENDOR_ASCEND_VSA_FR_DTE_N392 163 -#define VENDOR_ASCEND_VSA_FR_DCE_N393 164 -#define VENDOR_ASCEND_VSA_FR_DTE_N393 165 -#define VENDOR_ASCEND_VSA_FR_T391 166 -#define VENDOR_ASCEND_VSA_FR_T392 167 -#define VENDOR_ASCEND_VSA_BRIDGE_ADDRESS 168 -#define VENDOR_ASCEND_VSA_TS_IDLE_LIMIT 169 -#define VENDOR_ASCEND_VSA_TS_IDLE_MODE 170 -#define VENDOR_ASCEND_VSA_DBA_MONITOR 171 -#define VENDOR_ASCEND_VSA_BASE_CHANNEL_COUNT 172 -#define VENDOR_ASCEND_VSA_MINIMUM_CHANNELS 173 -#define VENDOR_ASCEND_VSA_IPX_ROUTE 174 -#define VENDOR_ASCEND_VSA_FT1_CALLER 175 -#define VENDOR_ASCEND_VSA_BACKUP 176 -#define VENDOR_ASCEND_VSA_CALL_TYPE 177 -#define VENDOR_ASCEND_VSA_GROUP 178 -#define VENDOR_ASCEND_VSA_FR_DLCI 179 -#define VENDOR_ASCEND_VSA_FR_PROFILE_NAME 180 -#define VENDOR_ASCEND_VSA_ARA_PW 181 -#define VENDOR_ASCEND_VSA_IPX_NODE_ADDR 182 -#define VENDOR_ASCEND_VSA_HOME_AGENT_IP_ADDR 183 -#define VENDOR_ASCEND_VSA_HOME_AGENT_PASSWORD 184 -#define VENDOR_ASCEND_VSA_HOME_NETWORK_NAME 185 -#define VENDOR_ASCEND_VSA_HOME_AGENT_UDP_PORT 186 -#define VENDOR_ASCEND_VSA_MULTILINK_ID 187 -#define VENDOR_ASCEND_VSA_NUM_IN_MULTILINK 188 -#define VENDOR_ASCEND_VSA_FIRST_DEST 189 -#define VENDOR_ASCEND_VSA_PRE_INPUT_OCTETS 190 -#define VENDOR_ASCEND_VSA_PRE_OUTPUT_OCTETS 191 -#define VENDOR_ASCEND_VSA_PRE_INPUT_PACKETS 192 -#define VENDOR_ASCEND_VSA_PRE_OUTPUT_PACKETS 193 -#define VENDOR_ASCEND_VSA_MAXIMUM_TIME 194 -#define VENDOR_ASCEND_VSA_DISCONNECT_CAUSE 195 -#define VENDOR_ASCEND_VSA_CONNECT_PROGRESS 196 -#define VENDOR_ASCEND_VSA_DATA_RATE 197 -#define VENDOR_ASCEND_VSA_PRESESSION_TIME 198 -#define VENDOR_ASCEND_VSA_TOKEN_IDLE 199 -#define VENDOR_ASCEND_VSA_TOKEN_IMMEDIATE 200 -#define VENDOR_ASCEND_VSA_REQUIRE_AUTH 201 -#define VENDOR_ASCEND_VSA_NUMBER_SESSIONS 202 -#define VENDOR_ASCEND_VSA_AUTHEN_ALIAS 203 -#define VENDOR_ASCEND_VSA_TOKEN_EXPIRY 204 -#define VENDOR_ASCEND_VSA_MENU_SELECTOR 205 -#define VENDOR_ASCEND_VSA_MENU_ITEM 206 -#define VENDOR_ASCEND_VSA_PW_WARNTIME 207 -#define VENDOR_ASCEND_VSA_PW_LIFETIME 208 -#define VENDOR_ASCEND_VSA_IP_DIRECT 209 -#define VENDOR_ASCEND_VSA_PPP_VJ_SLOT_COMP 210 -#define VENDOR_ASCEND_VSA_PPP_VJ_1172 211 -#define VENDOR_ASCEND_VSA_PPP_ASYNC_MAP 212 -#define VENDOR_ASCEND_VSA_THIRD_PROMPT 213 -#define VENDOR_ASCEND_VSA_SEND_SECRET 214 -#define VENDOR_ASCEND_VSA_RECEIVE_SECRET 215 -#define VENDOR_ASCEND_VSA_IPX_PEER_MODE 216 -#define VENDOR_ASCEND_VSA_IP_POOL_DEFINITION 217 -#define VENDOR_ASCEND_VSA_ASSIGN_IP_POOL 218 -#define VENDOR_ASCEND_VSA_FR_DIRECT 219 -#define VENDOR_ASCEND_VSA_FR_DIRECT_PROFILE 220 -#define VENDOR_ASCEND_VSA_FR_DIRECT_DLCI 221 -#define VENDOR_ASCEND_VSA_HANDLE_IPX 222 -#define VENDOR_ASCEND_VSA_NETWARE_TIMEOUT 223 -#define VENDOR_ASCEND_VSA_IPX_ALIAS 224 -#define VENDOR_ASCEND_VSA_METRIC 225 -#define VENDOR_ASCEND_VSA_PRI_NUMBER_TYPE 226 -#define VENDOR_ASCEND_VSA_DIAL_NUMBER 227 -#define VENDOR_ASCEND_VSA_ROUTE_IP 228 -#define VENDOR_ASCEND_VSA_ROUTE_IPX 229 -#define VENDOR_ASCEND_VSA_BRIDGE 230 -#define VENDOR_ASCEND_VSA_SEND_AUTH 231 -#define VENDOR_ASCEND_VSA_SEND_PASSWD 232 -#define VENDOR_ASCEND_VSA_LINK_COMPRESSION 233 -#define VENDOR_ASCEND_VSA_TARGET_UTIL 234 -#define VENDOR_ASCEND_VSA_MAXIMUM_CHANNELS 235 -#define VENDOR_ASCEND_VSA_INC_CHANNEL_COUNT 236 -#define VENDOR_ASCEND_VSA_DEC_CHANNEL_COUNT 237 -#define VENDOR_ASCEND_VSA_SECONDS_OF_HISTORY 238 -#define VENDOR_ASCEND_VSA_HISTORY_WEIGH_TYPE 239 -#define VENDOR_ASCEND_VSA_ADD_SECONDS 240 -#define VENDOR_ASCEND_VSA_REMOVE_SECONDS 241 -#define VENDOR_ASCEND_VSA_DATA_FILTER 242 -#define VENDOR_ASCEND_VSA_CALL_FILTER 243 -#define VENDOR_ASCEND_VSA_IDLE_LIMIT 244 -#define VENDOR_ASCEND_VSA_PREEMPT_LIMIT 245 -#define VENDOR_ASCEND_VSA_CALLBACK 246 -#define VENDOR_ASCEND_VSA_DATA_SVC 247 -#define VENDOR_ASCEND_VSA_FORCE_56 248 -#define VENDOR_ASCEND_VSA_BILLING_NUMBER 249 -#define VENDOR_ASCEND_VSA_CALL_BY_CALL 250 -#define VENDOR_ASCEND_VSA_TRANSIT_NUMBER 251 -#define VENDOR_ASCEND_VSA_HOST_INFO 252 -#define VENDOR_ASCEND_VSA_PPP_ADDRESS 253 -#define VENDOR_ASCEND_VSA_MPP_IDLE_PERCENT 254 -#define VENDOR_ASCEND_VSA_XMIT_RATE 255 - -static value_value_pair radius_vendor_ascend_printinfo[] = { -{ VENDOR_ASCEND_VSA_UU_INFO, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_CIR_TIMER, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_08_MODE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DESTINATION_NAS_PORT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_SVC_ADDR, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_NAS_PORT_FORMAT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_FAULT_MANAGEMENT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_LOOPBACK_CELL_LOSS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CKT_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SVC_ENABLED, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SESSION_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_H323_GATEKEEPER, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_GLOBAL_CALL_ID, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_H323_CONFERENCE_ID, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_H323_FEGW_ADDRESS, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_H323_DIALED_TIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DIALED_NUMBER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_INTER_ARRIVAL_JITTER, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DROPPED_OCTETS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DROPPED_PACKETS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_X25_PAD_X3_PROFILE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_X25_PAD_X3_PARAMETERS, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_TUNNEL_VROUTER_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_REVERSE_CHARGING, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_X25_NUI_PROMPT, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_NUI_PASSWORD_PROMPT, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_CUG, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_PAD_ALIAS_1, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_PAD_ALIAS_2, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_PAD_ALIAS_3, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_X121_ADDRESS, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_NUI, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_RPOA, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_PAD_PROMPT, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_PAD_BANNER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_X25_PROFILE_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_RECV_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_BI_DIRECTIONAL_AUTH, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MTU, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CALL_DIRECTION, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SERVICE_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FILTER_REQUIRED, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TRAFFIC_SHAPER, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ACCESS_INTERCEPT_LEA, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_ACCESS_INTERCEPT_LOG, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_PRIVATE_ROUTE_TABLE_ID, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_PRIVATE_ROUTE_REQUIRED, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CACHE_REFRESH, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CACHE_TIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_EGRESS_ENABLED, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_QOS_UPSTREAM, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_QOS_DOWNSTREAM, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_ATM_CONNECT_VPI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_CONNECT_VCI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_CONNECT_GROUP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_GROUP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IPX_HEADER_COMPRESSION, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER, ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER }, -{ VENDOR_ASCEND_VSA_CALLING_ID_NUMBERING_PLAN, ASCEND_VSA_CALLING_ID_NUMBERING_PLAN }, -{ VENDOR_ASCEND_VSA_CALLING_ID_PRESENTATION, ASCEND_VSA_CALLING_ID_PRESENTATION }, -{ VENDOR_ASCEND_VSA_CALLING_ID_SCREENING, ASCEND_VSA_CALLING_ID_SCREENING }, -{ VENDOR_ASCEND_VSA_BIR_ENABLE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BIR_PROXY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BIR_BRIDGE_GROUP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IPSEC_PROFILE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_PPPOE_ENABLE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BRIDGE_NON_PPPOE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_DIRECT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_DIRECT_PROFILE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_CLIENT_PRIMARY_WINS, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_CLIENT_SECONDARY_WINS, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_CLIENT_ASSIGN_WINS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_AUTH_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PORT_REDIR_PROTOCOL, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PORT_REDIR_PORTNUM, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PORT_REDIR_SERVER, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_IP_POOL_CHAINING, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_OWNER_IP_ADDR, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_IP_TOS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IP_TOS_PRECEDENCE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IP_TOS_APPLY_TO, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FILTER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_TELNET_PROFILE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_DSL_RATE_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_REDIRECT_NUMBER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_ATM_VPI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ATM_VCI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SOURCE_IP_CHECK, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DSL_RATE_MODE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DSL_UPSTREAM_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DSL_DOWNSTREAM_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DSL_CIR_RECV_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DSL_CIR_XMIT_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_VROUTER_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_SOURCE_AUTH, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_PRIVATE_ROUTE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_NUMBERING_PLAN_ID, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_LINK_STATUS_DLCI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CALLING_SUBADDRESS, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_CALLBACK_DELAY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ENDPOINT_DISC, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_REMOTE_FW, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_MULTICAST_GLEAVE_DELAY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CBCP_ENABLE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CBCP_MODE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CBCP_DELAY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CBCP_TRUNK_GROUP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_APPLETALK_ROUTE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_APPLETALK_PEER_MODE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ROUTE_APPLETALK, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FCP_PARAMETER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_MODEM_PORTNO, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MODEM_SLOTNO, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MODEM_SHELFNO, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CALL_ATTEMPT_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CALL_BLOCK_DURATION, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MAXIMUM_CALL_DURATION, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TEMPORARY_RTES, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TUNNELING_PROTOCOL, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SHARED_PROFILE_ENABLE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PRIMARY_HOME_AGENT, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_SECONDARY_HOME_AGENT, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_DIALOUT_ALLOWED, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CLIENT_GATEWAY, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_BACP_ENABLE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DHCP_MAXIMUM_LEASES, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CLIENT_PRIMARY_DNS, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_CLIENT_SECONDARY_DNS, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_CLIENT_ASSIGN_DNS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_USER_ACCT_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_USER_ACCT_HOST, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_USER_ACCT_PORT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_USER_ACCT_KEY, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_USER_ACCT_BASE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_USER_ACCT_TIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_CLIENT, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_SERVER, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_GLOBAL_POOL, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_DHCP_REPLY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DHCP_POOL_NUMBER, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_EXPECT_CALLBACK, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_EVENT_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SESSION_SVR_KEY, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_MULTICAST_RATE_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IF_NETMASK, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_REMOTE_ADDR, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_MULTICAST_CLIENT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_CIRCUIT_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_FR_LINKUP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_NAILED_GRP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_LINK_MGT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_N391, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_DCE_N392, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_DTE_N392, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_DCE_N393, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_DTE_N393, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_T391, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_T392, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BRIDGE_ADDRESS, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_TS_IDLE_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TS_IDLE_MODE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DBA_MONITOR, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BASE_CHANNEL_COUNT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MINIMUM_CHANNELS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IPX_ROUTE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_FT1_CALLER, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BACKUP, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_CALL_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_GROUP, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_FR_DLCI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_PROFILE_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_ARA_PW, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_IPX_NODE_ADDR, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_HOME_AGENT_IP_ADDR, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_HOME_AGENT_PASSWORD, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_HOME_NETWORK_NAME, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_HOME_AGENT_UDP_PORT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MULTILINK_ID, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_NUM_IN_MULTILINK, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FIRST_DEST, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_PRE_INPUT_OCTETS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PRE_OUTPUT_OCTETS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PRE_INPUT_PACKETS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PRE_OUTPUT_PACKETS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MAXIMUM_TIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DISCONNECT_CAUSE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CONNECT_PROGRESS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DATA_RATE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PRESESSION_TIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TOKEN_IDLE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TOKEN_IMMEDIATE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_REQUIRE_AUTH, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_NUMBER_SESSIONS, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_AUTHEN_ALIAS, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_TOKEN_EXPIRY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MENU_SELECTOR, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_MENU_ITEM, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_PW_WARNTIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PW_LIFETIME, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IP_DIRECT, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_PPP_VJ_SLOT_COMP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PPP_VJ_1172, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PPP_ASYNC_MAP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_THIRD_PROMPT, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_SEND_SECRET, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_RECEIVE_SECRET, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_IPX_PEER_MODE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IP_POOL_DEFINITION, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_POOL, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_DIRECT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FR_DIRECT_PROFILE, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_FR_DIRECT_DLCI, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_HANDLE_IPX, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_NETWARE_TIMEOUT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_IPX_ALIAS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_METRIC, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PRI_NUMBER_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DIAL_NUMBER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_ROUTE_IP, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ROUTE_IPX, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BRIDGE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SEND_AUTH, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SEND_PASSWD, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_LINK_COMPRESSION, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TARGET_UTIL, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_MAXIMUM_CHANNELS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_INC_CHANNEL_COUNT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DEC_CHANNEL_COUNT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_SECONDS_OF_HISTORY, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_HISTORY_WEIGH_TYPE, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_ADD_SECONDS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_REMOVE_SECONDS, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DATA_FILTER, RADIUS_BINSTRING }, -{ VENDOR_ASCEND_VSA_CALL_FILTER, RADIUS_BINSTRING }, -{ VENDOR_ASCEND_VSA_IDLE_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_PREEMPT_LIMIT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_CALLBACK, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_DATA_SVC, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_FORCE_56, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_BILLING_NUMBER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_CALL_BY_CALL, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_TRANSIT_NUMBER, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_HOST_INFO, RADIUS_STRING }, -{ VENDOR_ASCEND_VSA_PPP_ADDRESS, RADIUS_IP_ADDRESS }, -{ VENDOR_ASCEND_VSA_MPP_IDLE_PERCENT, RADIUS_INTEGER4 }, -{ VENDOR_ASCEND_VSA_XMIT_RATE, RADIUS_INTEGER4 }, -{0,0}, +static value_string radius_vendor_microsoft_bap_usage_vals[] = +{ + {0, "Not-Allowed"}, + {1, "Allowed"}, + {2, "Required"}, + {0, NULL} }; -static value_string radius_vendor_ascend_types[] = { -{ VENDOR_ASCEND_VSA_UU_INFO, "Ascend UU Info" }, -{ VENDOR_ASCEND_VSA_CIR_TIMER, "Ascend CIR Timer" }, -{ VENDOR_ASCEND_VSA_FR_08_MODE, "Ascend FR 08 Mode" }, -{ VENDOR_ASCEND_VSA_DESTINATION_NAS_PORT, "Ascend Destination Nas Port" }, -{ VENDOR_ASCEND_VSA_FR_SVC_ADDR, "Ascend FR SVC Addr" }, -{ VENDOR_ASCEND_VSA_NAS_PORT_FORMAT, "Ascend NAS Port Format" }, -{ VENDOR_ASCEND_VSA_ATM_FAULT_MANAGEMENT, "Ascend ATM Fault Management" }, -{ VENDOR_ASCEND_VSA_ATM_LOOPBACK_CELL_LOSS, "Ascend ATM Loopback Cell Loss" }, -{ VENDOR_ASCEND_VSA_CKT_TYPE, "Ascend Ckt Type" }, -{ VENDOR_ASCEND_VSA_SVC_ENABLED, "Ascend SVC Enabled" }, -{ VENDOR_ASCEND_VSA_SESSION_TYPE, "Ascend Session Type" }, -{ VENDOR_ASCEND_VSA_H323_GATEKEEPER, "Ascend H323 Gatekeeper" }, -{ VENDOR_ASCEND_VSA_GLOBAL_CALL_ID, "Ascend Global Call Id" }, -{ VENDOR_ASCEND_VSA_H323_CONFERENCE_ID, "Ascend H323 Conference Id" }, -{ VENDOR_ASCEND_VSA_H323_FEGW_ADDRESS, "Ascend H323 Fegw Address" }, -{ VENDOR_ASCEND_VSA_H323_DIALED_TIME, "Ascend H323 Dialed Time" }, -{ VENDOR_ASCEND_VSA_DIALED_NUMBER, "Ascend Dialed Number" }, -{ VENDOR_ASCEND_VSA_INTER_ARRIVAL_JITTER, "Ascend Inter Arrival Jitter" }, -{ VENDOR_ASCEND_VSA_DROPPED_OCTETS, "Ascend Dropped Octets" }, -{ VENDOR_ASCEND_VSA_DROPPED_PACKETS, "Ascend Dropped Packets" }, -{ VENDOR_ASCEND_VSA_X25_PAD_X3_PROFILE, "Ascend X25 Pad X3 Profile" }, -{ VENDOR_ASCEND_VSA_X25_PAD_X3_PARAMETERS, "Ascend X25 Pad X3 Parameters" }, -{ VENDOR_ASCEND_VSA_TUNNEL_VROUTER_NAME, "Ascend Tunnel VRouter Name" }, -{ VENDOR_ASCEND_VSA_X25_REVERSE_CHARGING, "Ascend X25 Reverse Charging" }, -{ VENDOR_ASCEND_VSA_X25_NUI_PROMPT, "Ascend X25 Nui Prompt" }, -{ VENDOR_ASCEND_VSA_X25_NUI_PASSWORD_PROMPT, "Ascend X25 Nui Password Prompt" }, -{ VENDOR_ASCEND_VSA_X25_CUG, "Ascend X25 Cug" }, -{ VENDOR_ASCEND_VSA_X25_PAD_ALIAS_1, "Ascend X25 Pad Alias 1" }, -{ VENDOR_ASCEND_VSA_X25_PAD_ALIAS_2, "Ascend X25 Pad Alias 2" }, -{ VENDOR_ASCEND_VSA_X25_PAD_ALIAS_3, "Ascend X25 Pad Alias 3" }, -{ VENDOR_ASCEND_VSA_X25_X121_ADDRESS, "Ascend X25 X121 Address" }, -{ VENDOR_ASCEND_VSA_X25_NUI, "Ascend X25 Nui" }, -{ VENDOR_ASCEND_VSA_X25_RPOA, "Ascend X25 Rpoa" }, -{ VENDOR_ASCEND_VSA_X25_PAD_PROMPT, "Ascend X25 Pad Prompt" }, -{ VENDOR_ASCEND_VSA_X25_PAD_BANNER, "Ascend X25 Pad Banner" }, -{ VENDOR_ASCEND_VSA_X25_PROFILE_NAME, "Ascend X25 Profile Name" }, -{ VENDOR_ASCEND_VSA_RECV_NAME, "Ascend Recv Name" }, -{ VENDOR_ASCEND_VSA_BI_DIRECTIONAL_AUTH, "Ascend Bi Directional Auth" }, -{ VENDOR_ASCEND_VSA_MTU, "Ascend MTU" }, -{ VENDOR_ASCEND_VSA_CALL_DIRECTION, "Ascend Call Direction" }, -{ VENDOR_ASCEND_VSA_SERVICE_TYPE, "Ascend Service Type" }, -{ VENDOR_ASCEND_VSA_FILTER_REQUIRED, "Ascend Filter Required" }, -{ VENDOR_ASCEND_VSA_TRAFFIC_SHAPER, "Ascend Traffic Shaper" }, -{ VENDOR_ASCEND_VSA_ACCESS_INTERCEPT_LEA, "Ascend Access Intercept LEA" }, -{ VENDOR_ASCEND_VSA_ACCESS_INTERCEPT_LOG, "Ascend Access Intercept Log" }, -{ VENDOR_ASCEND_VSA_PRIVATE_ROUTE_TABLE_ID, "Ascend Private Route Table ID" }, -{ VENDOR_ASCEND_VSA_PRIVATE_ROUTE_REQUIRED, "Ascend Private Route Required" }, -{ VENDOR_ASCEND_VSA_CACHE_REFRESH, "Ascend Cache Refresh" }, -{ VENDOR_ASCEND_VSA_CACHE_TIME, "Ascend Cache Time" }, -{ VENDOR_ASCEND_VSA_EGRESS_ENABLED, "Ascend Egress Enabled" }, -{ VENDOR_ASCEND_VSA_QOS_UPSTREAM, "Ascend QOS Upstream" }, -{ VENDOR_ASCEND_VSA_QOS_DOWNSTREAM, "Ascend QOS Downstream" }, -{ VENDOR_ASCEND_VSA_ATM_CONNECT_VPI, "Ascend ATM Connect Vpi" }, -{ VENDOR_ASCEND_VSA_ATM_CONNECT_VCI, "Ascend ATM Connect Vci" }, -{ VENDOR_ASCEND_VSA_ATM_CONNECT_GROUP, "Ascend ATM Connect Group" }, -{ VENDOR_ASCEND_VSA_ATM_GROUP, "Ascend ATM Group" }, -{ VENDOR_ASCEND_VSA_IPX_HEADER_COMPRESSION, "Ascend IPX Header Compression" }, -{ VENDOR_ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER, "Ascend Calling Id Type Of Number" }, -{ VENDOR_ASCEND_VSA_CALLING_ID_NUMBERING_PLAN, "Ascend Calling Id Numbering Plan" }, -{ VENDOR_ASCEND_VSA_CALLING_ID_PRESENTATION, "Ascend Calling Id Presentation" }, -{ VENDOR_ASCEND_VSA_CALLING_ID_SCREENING, "Ascend Calling Id Screening" }, -{ VENDOR_ASCEND_VSA_BIR_ENABLE, "Ascend BIR Enable" }, -{ VENDOR_ASCEND_VSA_BIR_PROXY, "Ascend BIR Proxy" }, -{ VENDOR_ASCEND_VSA_BIR_BRIDGE_GROUP, "Ascend BIR Bridge Group" }, -{ VENDOR_ASCEND_VSA_IPSEC_PROFILE, "Ascend IPSEC Profile" }, -{ VENDOR_ASCEND_VSA_PPPOE_ENABLE, "Ascend PPPoE Enable" }, -{ VENDOR_ASCEND_VSA_BRIDGE_NON_PPPOE, "Ascend Bridge Non PPPoE" }, -{ VENDOR_ASCEND_VSA_ATM_DIRECT, "Ascend ATM Direct" }, -{ VENDOR_ASCEND_VSA_ATM_DIRECT_PROFILE, "Ascend ATM Direct Profile" }, -{ VENDOR_ASCEND_VSA_CLIENT_PRIMARY_WINS, "Ascend Client Primary WINS" }, -{ VENDOR_ASCEND_VSA_CLIENT_SECONDARY_WINS, "Ascend Client Secondary WINS" }, -{ VENDOR_ASCEND_VSA_CLIENT_ASSIGN_WINS, "Ascend Client Assign WINS" }, -{ VENDOR_ASCEND_VSA_AUTH_TYPE, "Ascend Auth Type" }, -{ VENDOR_ASCEND_VSA_PORT_REDIR_PROTOCOL, "Ascend Port Redir Protocol" }, -{ VENDOR_ASCEND_VSA_PORT_REDIR_PORTNUM, "Ascend Port Redir Portnum" }, -{ VENDOR_ASCEND_VSA_PORT_REDIR_SERVER, "Ascend Port Redir Server" }, -{ VENDOR_ASCEND_VSA_IP_POOL_CHAINING, "Ascend IP Pool Chaining" }, -{ VENDOR_ASCEND_VSA_OWNER_IP_ADDR, "Ascend Owner IP Addr" }, -{ VENDOR_ASCEND_VSA_IP_TOS, "Ascend IP TOS" }, -{ VENDOR_ASCEND_VSA_IP_TOS_PRECEDENCE, "Ascend IP TOS Precedence" }, -{ VENDOR_ASCEND_VSA_IP_TOS_APPLY_TO, "Ascend IP TOS Apply To" }, -{ VENDOR_ASCEND_VSA_FILTER, "Ascend Filter" }, -{ VENDOR_ASCEND_VSA_TELNET_PROFILE, "Ascend Telnet Profile" }, -{ VENDOR_ASCEND_VSA_DSL_RATE_TYPE, "Ascend Dsl Rate Type" }, -{ VENDOR_ASCEND_VSA_REDIRECT_NUMBER, "Ascend Redirect Number" }, -{ VENDOR_ASCEND_VSA_ATM_VPI, "Ascend ATM Vpi" }, -{ VENDOR_ASCEND_VSA_ATM_VCI, "Ascend ATM Vci" }, -{ VENDOR_ASCEND_VSA_SOURCE_IP_CHECK, "Ascend Source IP Check" }, -{ VENDOR_ASCEND_VSA_DSL_RATE_MODE, "Ascend Dsl Rate Mode" }, -{ VENDOR_ASCEND_VSA_DSL_UPSTREAM_LIMIT, "Ascend Dsl Upstream Limit" }, -{ VENDOR_ASCEND_VSA_DSL_DOWNSTREAM_LIMIT, "Ascend Dsl Downstream Limit" }, -{ VENDOR_ASCEND_VSA_DSL_CIR_RECV_LIMIT, "Ascend Dsl CIR Recv Limit" }, -{ VENDOR_ASCEND_VSA_DSL_CIR_XMIT_LIMIT, "Ascend Dsl CIR Xmit Limit" }, -{ VENDOR_ASCEND_VSA_VROUTER_NAME, "Ascend VRouter Name" }, -{ VENDOR_ASCEND_VSA_SOURCE_AUTH, "Ascend Source Auth" }, -{ VENDOR_ASCEND_VSA_PRIVATE_ROUTE, "Ascend Private Route" }, -{ VENDOR_ASCEND_VSA_NUMBERING_PLAN_ID, "Ascend Numbering Plan ID" }, -{ VENDOR_ASCEND_VSA_FR_LINK_STATUS_DLCI, "Ascend FR Link Status DLCI" }, -{ VENDOR_ASCEND_VSA_CALLING_SUBADDRESS, "Ascend Calling Subaddress" }, -{ VENDOR_ASCEND_VSA_CALLBACK_DELAY, "Ascend Callback Delay" }, -{ VENDOR_ASCEND_VSA_ENDPOINT_DISC, "Ascend Endpoint Disc" }, -{ VENDOR_ASCEND_VSA_REMOTE_FW, "Ascend Remote FW" }, -{ VENDOR_ASCEND_VSA_MULTICAST_GLEAVE_DELAY, "Ascend Multicast GLeave Delay" }, -{ VENDOR_ASCEND_VSA_CBCP_ENABLE, "Ascend CBCP Enable" }, -{ VENDOR_ASCEND_VSA_CBCP_MODE, "Ascend CBCP Mode" }, -{ VENDOR_ASCEND_VSA_CBCP_DELAY, "Ascend CBCP Delay" }, -{ VENDOR_ASCEND_VSA_CBCP_TRUNK_GROUP, "Ascend CBCP Trunk Group" }, -{ VENDOR_ASCEND_VSA_APPLETALK_ROUTE, "Ascend Appletalk Route" }, -{ VENDOR_ASCEND_VSA_APPLETALK_PEER_MODE, "Ascend Appletalk Peer Mode" }, -{ VENDOR_ASCEND_VSA_ROUTE_APPLETALK, "Ascend Route Appletalk" }, -{ VENDOR_ASCEND_VSA_FCP_PARAMETER, "Ascend FCP Parameter" }, -{ VENDOR_ASCEND_VSA_MODEM_PORTNO, "Ascend Modem Port No" }, -{ VENDOR_ASCEND_VSA_MODEM_SLOTNO, "Ascend Modem Slot No" }, -{ VENDOR_ASCEND_VSA_MODEM_SHELFNO, "Ascend Modem Shelf No" }, -{ VENDOR_ASCEND_VSA_CALL_ATTEMPT_LIMIT, "Ascend Call Attempt Limit" }, -{ VENDOR_ASCEND_VSA_CALL_BLOCK_DURATION, "Ascend Call Block Duration" }, -{ VENDOR_ASCEND_VSA_MAXIMUM_CALL_DURATION, "Ascend Maximum Call Duration" }, -{ VENDOR_ASCEND_VSA_TEMPORARY_RTES, "Ascend Temporary Rtes" }, -{ VENDOR_ASCEND_VSA_TUNNELING_PROTOCOL, "Ascend Tunneling Protocol" }, -{ VENDOR_ASCEND_VSA_SHARED_PROFILE_ENABLE, "Ascend Shared Profile Enable" }, -{ VENDOR_ASCEND_VSA_PRIMARY_HOME_AGENT, "Ascend Primary Home Agent" }, -{ VENDOR_ASCEND_VSA_SECONDARY_HOME_AGENT, "Ascend Secondary Home Agent" }, -{ VENDOR_ASCEND_VSA_DIALOUT_ALLOWED, "Ascend Dialout Allowed" }, -{ VENDOR_ASCEND_VSA_CLIENT_GATEWAY, "Ascend Client Gateway" }, -{ VENDOR_ASCEND_VSA_BACP_ENABLE, "Ascend BACP Enable" }, -{ VENDOR_ASCEND_VSA_DHCP_MAXIMUM_LEASES, "Ascend DHCP Maximum Leases" }, -{ VENDOR_ASCEND_VSA_CLIENT_PRIMARY_DNS, "Ascend Client Primary DNS" }, -{ VENDOR_ASCEND_VSA_CLIENT_SECONDARY_DNS, "Ascend Client Secondary DNS" }, -{ VENDOR_ASCEND_VSA_CLIENT_ASSIGN_DNS, "Ascend Client Assign DNS" }, -{ VENDOR_ASCEND_VSA_USER_ACCT_TYPE, "Ascend User Acct Type" }, -{ VENDOR_ASCEND_VSA_USER_ACCT_HOST, "Ascend User Acct Host" }, -{ VENDOR_ASCEND_VSA_USER_ACCT_PORT, "Ascend User Acct Port" }, -{ VENDOR_ASCEND_VSA_USER_ACCT_KEY, "Ascend User Acct Key" }, -{ VENDOR_ASCEND_VSA_USER_ACCT_BASE, "Ascend User Acct Base" }, -{ VENDOR_ASCEND_VSA_USER_ACCT_TIME, "Ascend User Acct Time" }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_CLIENT, "Ascend Assign IP Client" }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_SERVER, "Ascend Assign IP Server" }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_GLOBAL_POOL, "Ascend Assign IP Global Pool" }, -{ VENDOR_ASCEND_VSA_DHCP_REPLY, "Ascend DHCP Reply" }, -{ VENDOR_ASCEND_VSA_DHCP_POOL_NUMBER, "Ascend DHCP Pool Number" }, -{ VENDOR_ASCEND_VSA_EXPECT_CALLBACK, "Ascend Expect Callback" }, -{ VENDOR_ASCEND_VSA_EVENT_TYPE, "Ascend Event Type" }, -{ VENDOR_ASCEND_VSA_SESSION_SVR_KEY, "Ascend Session Svr Key" }, -{ VENDOR_ASCEND_VSA_MULTICAST_RATE_LIMIT, "Ascend Multicast Rate Limit" }, -{ VENDOR_ASCEND_VSA_IF_NETMASK, "Ascend IF Netmask" }, -{ VENDOR_ASCEND_VSA_REMOTE_ADDR, "Ascend Remote Addr" }, -{ VENDOR_ASCEND_VSA_MULTICAST_CLIENT, "Ascend Multicast Client" }, -{ VENDOR_ASCEND_VSA_FR_CIRCUIT_NAME, "Ascend FR Circuit Name" }, -{ VENDOR_ASCEND_VSA_FR_LINKUP, "Ascend FR LinkUp" }, -{ VENDOR_ASCEND_VSA_FR_NAILED_GRP, "Ascend FR Nailed Grp" }, -{ VENDOR_ASCEND_VSA_FR_TYPE, "Ascend FR Type" }, -{ VENDOR_ASCEND_VSA_FR_LINK_MGT, "Ascend FR Link Mgt" }, -{ VENDOR_ASCEND_VSA_FR_N391, "Ascend FR N391" }, -{ VENDOR_ASCEND_VSA_FR_DCE_N392, "Ascend FR DCE N392" }, -{ VENDOR_ASCEND_VSA_FR_DTE_N392, "Ascend FR DTE N392" }, -{ VENDOR_ASCEND_VSA_FR_DCE_N393, "Ascend FR DCE N393" }, -{ VENDOR_ASCEND_VSA_FR_DTE_N393, "Ascend FR DTE N393" }, -{ VENDOR_ASCEND_VSA_FR_T391, "Ascend FR T391" }, -{ VENDOR_ASCEND_VSA_FR_T392, "Ascend FR T392" }, -{ VENDOR_ASCEND_VSA_BRIDGE_ADDRESS, "Ascend Bridge Address" }, -{ VENDOR_ASCEND_VSA_TS_IDLE_LIMIT, "Ascend TS Idle Limit" }, -{ VENDOR_ASCEND_VSA_TS_IDLE_MODE, "Ascend TS Idle Mode" }, -{ VENDOR_ASCEND_VSA_DBA_MONITOR, "Ascend DBA Monitor" }, -{ VENDOR_ASCEND_VSA_BASE_CHANNEL_COUNT, "Ascend Base Channel Count" }, -{ VENDOR_ASCEND_VSA_MINIMUM_CHANNELS, "Ascend Minimum Channels" }, -{ VENDOR_ASCEND_VSA_IPX_ROUTE, "Ascend IPX Route" }, -{ VENDOR_ASCEND_VSA_FT1_CALLER, "Ascend FT1 Caller" }, -{ VENDOR_ASCEND_VSA_BACKUP, "Ascend Backup" }, -{ VENDOR_ASCEND_VSA_CALL_TYPE, "Ascend Call Type" }, -{ VENDOR_ASCEND_VSA_GROUP, "Ascend Group" }, -{ VENDOR_ASCEND_VSA_FR_DLCI, "Ascend FR DLCI" }, -{ VENDOR_ASCEND_VSA_FR_PROFILE_NAME, "Ascend FR Profile Name" }, -{ VENDOR_ASCEND_VSA_ARA_PW, "Ascend Ara PW" }, -{ VENDOR_ASCEND_VSA_IPX_NODE_ADDR, "Ascend IPX Node Addr" }, -{ VENDOR_ASCEND_VSA_HOME_AGENT_IP_ADDR, "Ascend Home Agent IP Addr" }, -{ VENDOR_ASCEND_VSA_HOME_AGENT_PASSWORD, "Ascend Home Agent Password" }, -{ VENDOR_ASCEND_VSA_HOME_NETWORK_NAME, "Ascend Home Network Name" }, -{ VENDOR_ASCEND_VSA_HOME_AGENT_UDP_PORT, "Ascend Home Agent UDP Port" }, -{ VENDOR_ASCEND_VSA_MULTILINK_ID, "Ascend Multilink ID" }, -{ VENDOR_ASCEND_VSA_NUM_IN_MULTILINK, "Ascend Num In Multilink" }, -{ VENDOR_ASCEND_VSA_FIRST_DEST, "Ascend First Dest" }, -{ VENDOR_ASCEND_VSA_PRE_INPUT_OCTETS, "Ascend Pre Input Octets" }, -{ VENDOR_ASCEND_VSA_PRE_OUTPUT_OCTETS, "Ascend Pre Output Octets" }, -{ VENDOR_ASCEND_VSA_PRE_INPUT_PACKETS, "Ascend Pre Input Packets" }, -{ VENDOR_ASCEND_VSA_PRE_OUTPUT_PACKETS, "Ascend Pre Output Packets" }, -{ VENDOR_ASCEND_VSA_MAXIMUM_TIME, "Ascend Maximum Time" }, -{ VENDOR_ASCEND_VSA_DISCONNECT_CAUSE, "Ascend Disconnect Cause" }, -{ VENDOR_ASCEND_VSA_CONNECT_PROGRESS, "Ascend Connect Progress" }, -{ VENDOR_ASCEND_VSA_DATA_RATE, "Ascend Data Rate" }, -{ VENDOR_ASCEND_VSA_PRESESSION_TIME, "Ascend PreSession Time" }, -{ VENDOR_ASCEND_VSA_TOKEN_IDLE, "Ascend Token Idle" }, -{ VENDOR_ASCEND_VSA_TOKEN_IMMEDIATE, "Ascend Token Immediate" }, -{ VENDOR_ASCEND_VSA_REQUIRE_AUTH, "Ascend Require Auth" }, -{ VENDOR_ASCEND_VSA_NUMBER_SESSIONS, "Ascend Number Sessions" }, -{ VENDOR_ASCEND_VSA_AUTHEN_ALIAS, "Ascend Authen Alias" }, -{ VENDOR_ASCEND_VSA_TOKEN_EXPIRY, "Ascend Token Expiry" }, -{ VENDOR_ASCEND_VSA_MENU_SELECTOR, "Ascend Menu Selector" }, -{ VENDOR_ASCEND_VSA_MENU_ITEM, "Ascend Menu Item" }, -{ VENDOR_ASCEND_VSA_PW_WARNTIME, "Ascend PW Warntime" }, -{ VENDOR_ASCEND_VSA_PW_LIFETIME, "Ascend PW Lifetime" }, -{ VENDOR_ASCEND_VSA_IP_DIRECT, "Ascend IP Direct" }, -{ VENDOR_ASCEND_VSA_PPP_VJ_SLOT_COMP, "Ascend PPP VJ Slot Comp" }, -{ VENDOR_ASCEND_VSA_PPP_VJ_1172, "Ascend PPP VJ 1172" }, -{ VENDOR_ASCEND_VSA_PPP_ASYNC_MAP, "Ascend PPP Async Map" }, -{ VENDOR_ASCEND_VSA_THIRD_PROMPT, "Ascend Third Prompt" }, -{ VENDOR_ASCEND_VSA_SEND_SECRET, "Ascend Send Secret" }, -{ VENDOR_ASCEND_VSA_RECEIVE_SECRET, "Ascend Receive Secret" }, -{ VENDOR_ASCEND_VSA_IPX_PEER_MODE, "Ascend IPX Peer Mode" }, -{ VENDOR_ASCEND_VSA_IP_POOL_DEFINITION, "Ascend IP Pool Definition" }, -{ VENDOR_ASCEND_VSA_ASSIGN_IP_POOL, "Ascend Assign IP Pool" }, -{ VENDOR_ASCEND_VSA_FR_DIRECT, "Ascend FR Direct" }, -{ VENDOR_ASCEND_VSA_FR_DIRECT_PROFILE, "Ascend FR Direct Profile" }, -{ VENDOR_ASCEND_VSA_FR_DIRECT_DLCI, "Ascend FR Direct DLCI" }, -{ VENDOR_ASCEND_VSA_HANDLE_IPX, "Ascend Handle IPX" }, -{ VENDOR_ASCEND_VSA_NETWARE_TIMEOUT, "Ascend Netware timeout" }, -{ VENDOR_ASCEND_VSA_IPX_ALIAS, "Ascend IPX Alias" }, -{ VENDOR_ASCEND_VSA_METRIC, "Ascend Metric" }, -{ VENDOR_ASCEND_VSA_PRI_NUMBER_TYPE, "Ascend PRI Number Type" }, -{ VENDOR_ASCEND_VSA_DIAL_NUMBER, "Ascend Dial Number" }, -{ VENDOR_ASCEND_VSA_ROUTE_IP, "Ascend Route IP" }, -{ VENDOR_ASCEND_VSA_ROUTE_IPX, "Ascend Route IPX" }, -{ VENDOR_ASCEND_VSA_BRIDGE, "Ascend Bridge" }, -{ VENDOR_ASCEND_VSA_SEND_AUTH, "Ascend Send Auth" }, -{ VENDOR_ASCEND_VSA_SEND_PASSWD, "Ascend Send Passwd" }, -{ VENDOR_ASCEND_VSA_LINK_COMPRESSION, "Ascend Link Compression" }, -{ VENDOR_ASCEND_VSA_TARGET_UTIL, "Ascend Target Util" }, -{ VENDOR_ASCEND_VSA_MAXIMUM_CHANNELS, "Ascend Maximum Channels" }, -{ VENDOR_ASCEND_VSA_INC_CHANNEL_COUNT, "Ascend Inc Channel Count" }, -{ VENDOR_ASCEND_VSA_DEC_CHANNEL_COUNT, "Ascend Dec Channel Count" }, -{ VENDOR_ASCEND_VSA_SECONDS_OF_HISTORY, "Ascend Seconds Of History" }, -{ VENDOR_ASCEND_VSA_HISTORY_WEIGH_TYPE, "Ascend History Weigh Type" }, -{ VENDOR_ASCEND_VSA_ADD_SECONDS, "Ascend Add Seconds" }, -{ VENDOR_ASCEND_VSA_REMOVE_SECONDS, "Ascend Remove Seconds" }, -{ VENDOR_ASCEND_VSA_DATA_FILTER, "Ascend Data Filter" }, -{ VENDOR_ASCEND_VSA_CALL_FILTER, "Ascend Call Filter" }, -{ VENDOR_ASCEND_VSA_IDLE_LIMIT, "Ascend Idle Limit" }, -{ VENDOR_ASCEND_VSA_PREEMPT_LIMIT, "Ascend Preempt Limit" }, -{ VENDOR_ASCEND_VSA_CALLBACK, "Ascend Callback" }, -{ VENDOR_ASCEND_VSA_DATA_SVC, "Ascend Data Svc" }, -{ VENDOR_ASCEND_VSA_FORCE_56, "Ascend Force 56" }, -{ VENDOR_ASCEND_VSA_BILLING_NUMBER, "Ascend Billing Number" }, -{ VENDOR_ASCEND_VSA_CALL_BY_CALL, "Ascend Call By Call" }, -{ VENDOR_ASCEND_VSA_TRANSIT_NUMBER, "Ascend Transit Number" }, -{ VENDOR_ASCEND_VSA_HOST_INFO, "Ascend Host Info" }, -{ VENDOR_ASCEND_VSA_PPP_ADDRESS, "Ascend PPP Address" }, -{ VENDOR_ASCEND_VSA_MPP_IDLE_PERCENT, "Ascend MPP Idle Percent" }, -{ VENDOR_ASCEND_VSA_XMIT_RATE, "Ascend Xmit Rate" }, -{0,NULL}, +static value_string radius_vendor_microsoft_arap_pw_change_reason_vals[] = +{ + {1, "Just-Change-Password"}, + {2, "Expired-Password"}, + {3, "Admin-Required-Password-Change"}, + {4, "Password-Too-Short"}, + {0, NULL} }; -static value_string radius_vendor_ascend_calling_id_type_of_number_vals[]= -{{0, "Unknown"}, -{1, "International Number"}, -{2, "National Number"}, -{3, "Network Specific"}, -{4, "Subscriber Number"}, -{6, "Abbreviated Number"}, -{0,NULL}}; - -static value_string radius_vendor_ascend_calling_id_numbering_plan_vals[]= -{{0, "Unknown"}, -{1, "ISDN Telephony"}, -{3, "Data"}, -{4, "Telex"}, -{8, "National"}, -{9, "Private"}, -{0,NULL}}; - -static value_string radius_vendor_ascend_calling_id_presentation_vals[]= -{{0, "Allowed"}, -{1, "Restricted"}, -{2, "Number Not Available"}, -{0,NULL}}; - -static value_string radius_vendor_ascend_calling_id_screening_vals[]= -{{0, "User Not Screened"}, -{1, "User Provided Passed"}, -{2, "User Provided Failed"}, -{3, "Network Provided"}, -{0,NULL}}; - -#define VENDOR_COSINE_VSA_CONNECTION_PROFILE_NAME 1 -#define VENDOR_COSINE_VSA_ENTERPRISE_ID 2 -#define VENDOR_COSINE_VSA_ADDRESS_POOL_NAME 3 -#define VENDOR_COSINE_VSA_DS_BYTE 4 -#define VENDOR_COSINE_VSA_VPI_VCI 5 -#define VENDOR_COSINE_VSA_DLCI 6 -#define VENDOR_COSINE_VSA_LNS_IP_ADDRESS 7 -#define VENDOR_COSINE_VSA_CLI_USER_PERMISSION_ID 8 - -static value_value_pair radius_vendor_cosine_printinfo[] = { -{ VENDOR_COSINE_VSA_CONNECTION_PROFILE_NAME, RADIUS_STRING }, -{ VENDOR_COSINE_VSA_ENTERPRISE_ID, RADIUS_STRING }, -{ VENDOR_COSINE_VSA_ADDRESS_POOL_NAME, RADIUS_STRING }, -{ VENDOR_COSINE_VSA_DS_BYTE, RADIUS_INTEGER4 }, -{ VENDOR_COSINE_VSA_VPI_VCI, COSINE_VSA_VPI_VCI }, -{ VENDOR_COSINE_VSA_DLCI, RADIUS_INTEGER4 }, -{ VENDOR_COSINE_VSA_LNS_IP_ADDRESS, RADIUS_IP_ADDRESS }, -{ VENDOR_COSINE_VSA_CLI_USER_PERMISSION_ID, RADIUS_STRING }, -{0,0}, +static value_string radius_vendor_microsoft_acct_auth_type_vals[] = +{ + {1, "PAP"}, + {2, "CHAP"}, + {3, "MS-CHAP-1"}, + {4, "MS-CHAP-2"}, + {5, "EAP"}, + {0, NULL} }; -static value_string radius_vendor_cosine_types[]= -{{VENDOR_COSINE_VSA_CONNECTION_PROFILE_NAME,"Connection Profile Name"}, -{VENDOR_COSINE_VSA_ENTERPRISE_ID,"Enterprise ID"}, -{VENDOR_COSINE_VSA_ADDRESS_POOL_NAME,"Address Pool Name"}, -{VENDOR_COSINE_VSA_DS_BYTE,"DS Byte"}, -{VENDOR_COSINE_VSA_VPI_VCI,"VPI/VCI"}, -{VENDOR_COSINE_VSA_DLCI,"DLCI"}, -{VENDOR_COSINE_VSA_LNS_IP_ADDRESS,"LNS IP Address"}, -{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_value_pair radius_vendor_issanni_printinfo[]= -{{VENDOR_ISSANNI_VSA_SOFTFLOW_TEMPLATE,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_NAT_POOL_NAME,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_VRD,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_TUNNEL_NAME,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_IP_POOL_NAME,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_PPPOE_URL,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_PPPOE_MOTM,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_SERVICE,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_PRI_DNS,RADIUS_IP_ADDRESS}, -{VENDOR_ISSANNI_VSA_SEC_DNS,RADIUS_IP_ADDRESS}, -{VENDOR_ISSANNI_VSA_PRI_NBNS,RADIUS_IP_ADDRESS}, -{VENDOR_ISSANNI_VSA_SEC_NBNS,RADIUS_IP_ADDRESS}, -{VENDOR_ISSANNI_VSA_TRAFFIC_CLASS,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_TUNNEL_TYPE,RADIUS_INTEGER4}, -{VENDOR_ISSANNI_VSA_NAT_TYPE,RADIUS_INTEGER4}, -{VENDOR_ISSANNI_VSA_QOS_CLASS,RADIUS_STRING}, -{VENDOR_ISSANNI_VSA_IFACE_NAME,RADIUS_STRING}, -{0,0}}; - -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"}, -{3, "Appletalk Remote Access Protocol (ARAP)"}, -{4, "Gandalf proprietary Singlelink/Multilink Protocol"}, -{5, "Xylogics proprietary IPX/SLIP"}, -{6, "X.75 Synchronous"}, -{255, "Ascend ARA"}, -{256, "Ascend MPP"}, -{257, "Ascend EURAW"}, -{258, "Ascend EUUI"}, -{259, "Ascend X25"}, -{260, "Ascend COMB"}, -{261, "Ascend FR"}, -{262, "Ascend MP"}, -{263, "Ascend FR-CIR"}, -{264, "Ascend ATM-1483"}, -{265, "Ascend ATM-FR-CIR"}, -{0,NULL}}; - -static value_string radius_framed_routing_vals[]= -{{1, "Send Routing Packets"}, -{2, "Listen for routing packets"}, -{3, "Send and Listen"}, -{0,"None"}, -{0,NULL}}; - -static value_string radius_framed_compression_vals[]= -{{1, "VJ TCP/IP Header Compression"}, -{2, "IPX Header Compression"}, -{3, "Stac-LZS compression"}, -{0, "None"}, -{0,NULL}}; - -static value_string radius_login_service_vals[]= -{{1, "Rlogin"}, -{2, "TCP Clear"}, -{3, "Portmaster"}, -{4, "LAT"}, -{5, "X.25-PAD"}, -{6, "X.25T3POS"}, -{8, "TCP Clear Quit"}, -{0, "Telnet"}, -{0,NULL}}; - -static value_string radius_terminating_action_vals[]= -{{1, "RADIUS-Request"}, -{0, "Default"}, -{0,NULL}}; - -static value_string radius_accounting_status_type_vals[]= -{{1, "Start"}, -{2, "Stop"}, -{3, "Interim-Update"}, -{7,"Accounting-On"}, -{8,"Accounting-Off"}, -{9, "Tunnel-Start"}, /* Tunnel accounting */ -{10, "Tunnel-Stop"}, /* Tunnel accounting */ -{11, "Tunnel-Reject"}, /* Tunnel accounting */ -{12, "Tunnel-Link-Start"}, /* Tunnel accounting */ -{13, "Tunnel-Link-Stop"}, /* Tunnel accounting */ -{14, "Tunnel-Link-Reject"}, /* Tunnel accounting */ -{0,NULL}}; - -static value_string radius_accounting_authentication_vals[]= -{{1, "Radius"}, -{2, "Local"}, -{3,"Remote"}, -/* RFC 2866 says 3 is Remote. Is 7 a mistake? */ -{7,"Remote"}, -{0,NULL}}; - -static value_string radius_acct_terminate_cause_vals[]= -{{1, "User Request"}, -{2, "Lost Carrier"}, -{3,"Lost Service"}, -{4, "Idle Timeout"}, -{5,"Session Timeout"}, -{6, "Admin Reset"}, -{7, "Admin Reboot"}, -{8, "Port Error"}, -{9, "NAS Error"}, -{10, "NAS Request"}, -{11,"NAS Reboot"}, -{12, "Port Unneeded"}, -{13, "Port Preempted"}, -{14,"Port Suspended"}, -{15,"Service Unavailable"}, -{16,"Callback"}, -{17, "User Error"}, -{18,"Host Request"}, -{0,NULL}}; - -static value_string radius_tunnel_type_vals[]= -{{1,"PPTP"}, -{2,"L2F"}, -{3,"L2TP"}, -{4,"ATMP"}, -{5,"VTP"}, -{6,"AH"}, -{7,"IP-IP-Encap"}, -{8,"MIN-IP-IP"}, -{9,"ESP"}, -{10,"GRE"}, -{11,"DVS"}, -{12,"IP-IP"}, -{0,NULL}}; - -static value_string radius_tunnel_medium_type_vals[]= -{{1,"IPv4"}, -{2,"IPv6"}, -{3,"NSAP"}, -{4,"HDLC"}, -{5,"BBN"}, -{6,"IEEE-802"}, -{7,"E-163"}, -{8,"E-164"}, -{9,"F-69"}, -{10,"X-121"}, -{11,"IPX"}, -{12,"Appletalk"}, -{13,"Decnet4"}, -{14,"Vines"}, -{15,"E-164-NSAP"}, -{0,NULL}}; - -static value_string radius_nas_port_type_vals[]= -{{0, "Async"}, -{1, "Sync"}, -{2,"ISDN Sync"}, -{3, "ISDN Async V.120"}, -{4,"ISDN Async V.110"}, -{5, "Virtual"}, -{6, "PIAFS"}, -{7, "HDLC Clear Channel"}, -{8, "X.25"}, -{9,"X.75"}, -{10, "G.3 Fax"}, -{11,"SDSL"}, -{12, "ADSL-CAP"}, -{13, "ADSL-DMT"}, -{14,"IDSL - ISDN"}, -{15,"Ethernet"}, -{16,"xDSL"}, -{17,"Cable"}, -{18,"Wireless Other"}, -{19,"Wireless IEEE 802.11"}, -{0,NULL}}; +static value_string radius_vendor_microsoft_acct_eap_type_vals[] = +{ + {4, "MD5"}, + {5, "OTP"}, + {6, "Generic-Token-Card"}, + {13, "TLS"}, + {0, NULL} +}; -/* - * XXX - should these be read from files, such as FreeRadius dictionary - * files? For example, its "dictionary" file has - * - * ATTRIBUTE User-Name 1 string - * - * for RD_TP_USER_NAME. - * - * "string" -> RADIUS_STRING - * "octets" -> RADIUS_BINSTRING - * "integer" -> RADIUS_INTEGER4 - * "ipaddr" -> RADIUS_IP_ADDRESS - * - * Entries such as - * - * VALUE Service-Type Login-User 1 - * - * handle translation of integral values to strings, e.g. that one for - * "Service-Type". - */ -static value_value_pair radius_printinfo[] = { -{ RD_TP_USER_NAME, RADIUS_STRING }, -{ RD_TP_USER_PASSWORD,RADIUS_BINSTRING }, -{ RD_TP_CHAP_PASSWORD, RADIUS_BINSTRING }, -{ RD_TP_NAS_IP_ADDRESS, RADIUS_IP_ADDRESS }, -{ RD_TP_NAS_PORT, RADIUS_INTEGER4}, -{ RD_TP_SERVICE_TYPE, RADIUS_SERVICE_TYPE}, -{ RD_TP_FRAMED_PROTOCOL, RADIUS_FRAMED_PROTOCOL}, -{ RD_TP_FRAMED_IP_ADDRESS, RADIUS_IP_ADDRESS}, -{ RD_TP_FRAMED_IP_NETMASK, RADIUS_IP_ADDRESS}, -{ RD_TP_FRAMED_ROUTING, RADIUS_FRAMED_ROUTING}, -{ RD_TP_FILTER_ID, RADIUS_STRING}, -{ RD_TP_FRAMED_MTU, RADIUS_INTEGER4}, -{ RD_TP_FRAMED_COMPRESSION, RADIUS_FRAMED_COMPRESSION}, -{ RD_TP_LOGIN_IP_HOST, RADIUS_IP_ADDRESS}, -{ RD_TP_LOGIN_SERVICE, RADIUS_LOGIN_SERVICE}, -{ RD_TP_LOGIN_TCP_PORT, RADIUS_INTEGER4}, -{ RD_TP_UNASSIGNED, RADIUS_UNKNOWN}, -{ RD_TP_REPLY_MESSAGE, RADIUS_STRING}, -{ RD_TP_CALLBACK_NUMBER, RADIUS_BINSTRING}, -{ RD_TP_CALLBACK_ID, RADIUS_BINSTRING}, -{ RD_TP_UNASSIGNED2, RADIUS_UNKNOWN}, -{ RD_TP_FRAMED_ROUTE, RADIUS_STRING}, -{ RD_TP_FRAMED_IPX_NETWORK, RADIUS_IPX_ADDRESS}, -{ RD_TP_STATE, RADIUS_BINSTRING}, -{ RD_TP_CLASS, RADIUS_STRING}, -{ RD_TP_VENDOR_SPECIFIC, RADIUS_VENDOR_SPECIFIC}, -{ RD_TP_SESSION_TIMEOUT, RADIUS_INTEGER4}, -{ RD_TP_IDLE_TIMEOUT, RADIUS_INTEGER4}, -{ RD_TP_TERMINATING_ACTION, RADIUS_TERMINATING_ACTION}, -{ RD_TP_CALLED_STATION_ID, RADIUS_STRING}, -{ RD_TP_CALLING_STATION_ID, RADIUS_STRING}, -{ RD_TP_NAS_IDENTIFIER, RADIUS_STRING}, -{ RD_TP_PROXY_STATE, RADIUS_BINSTRING}, -{ RD_TP_LOGIN_LAT_SERVICE, RADIUS_BINSTRING}, -{ RD_TP_LOGIN_LAT_NODE, RADIUS_BINSTRING}, -{ RD_TP_LOGIN_LAT_GROUP, RADIUS_BINSTRING}, -{ RD_TP_FRAMED_APPLETALK_LINK, RADIUS_INTEGER4}, -{ RD_TP_FRAMED_APPLETALK_NETWORK, RADIUS_INTEGER4}, -{ RD_TP_FRAMED_APPLETALK_ZONE, RADIUS_BINSTRING}, -{ RD_TP_ACCT_STATUS_TYPE, RADIUS_ACCOUNTING_STATUS_TYPE}, -{ RD_TP_ACCT_DELAY_TIME, RADIUS_INTEGER4}, -{ RD_TP_ACCT_INPUT_OCTETS, RADIUS_INTEGER4}, -{ RD_TP_ACCT_OUTPUT_OCTETS, RADIUS_INTEGER4}, -{ RD_TP_ACCT_SESSION_ID, RADIUS_STRING}, -{ RD_TP_ACCT_AUTHENTIC, RADIUS_ACCT_AUTHENTIC}, -{ RD_TP_ACCT_SESSION_TIME, RADIUS_INTEGER4}, -{ RD_TP_ACCT_INPUT_PACKETS, RADIUS_INTEGER4}, -{ RD_TP_ACCT_OUTPUT_PACKETS, RADIUS_INTEGER4}, -{ RD_TP_ACCT_TERMINATE_CAUSE, RADIUS_ACCT_TERMINATE_CAUSE}, -{ RD_TP_ACCT_MULTI_SESSION_ID, RADIUS_STRING}, -{ RD_TP_ACCT_LINK_COUNT, RADIUS_INTEGER4}, -{ RD_TP_ACCT_INPUT_GIGAWORDS, RADIUS_INTEGER4}, -{ RD_TP_ACCT_OUTPUT_GIGAWORDS, RADIUS_INTEGER4}, -{ RD_TP_EVENT_TIMESTAMP, RADIUS_TIMESTAMP}, -{ RD_TP_CHAP_CHALLENGE, RADIUS_BINSTRING}, -{ RD_TP_NAS_PORT_TYPE, RADIUS_NAS_PORT_TYPE}, -{ RD_TP_PORT_LIMIT, RADIUS_INTEGER4}, -{ RD_TP_LOGIN_LAT_PORT, RADIUS_BINSTRING}, -{ RD_TP_TUNNEL_TYPE, RADIUS_TUNNEL_TYPE}, -{ RD_TP_TUNNEL_MEDIUM_TYPE, RADIUS_TUNNEL_MEDIUM_TYPE}, -{ RD_TP_TUNNEL_CLIENT_ENDPOINT, RADIUS_STRING_TAGGED}, -{ RD_TP_TUNNEL_SERVER_ENDPOINT, RADIUS_STRING_TAGGED}, -{ RD_TP_TUNNEL_CONNECTION, RADIUS_BINSTRING}, -{ RD_TP_TUNNEL_PASSWORD, RADIUS_STRING_TAGGED}, -{ RD_TP_ARAP_PASSWORD, RADIUS_BINSTRING}, -{ RD_TP_ARAP_FEATURES, RADIUS_BINSTRING}, -{ RD_TP_ARAP_ZONE_ACCESS, RADIUS_BINSTRING}, -{ RD_TP_ARAP_SECURITY, RADIUS_BINSTRING}, -{ RD_TP_ARAP_SECURITY_DATA, RADIUS_BINSTRING}, -{ RD_TP_PASSWORD_RETRY, RADIUS_BINSTRING}, -{ RD_TP_PROMPT, RADIUS_BINSTRING}, -{ RD_TP_CONNECT_INFO, RADIUS_STRING}, -{ RD_TP_CONFIGURATION_TOKEN, RADIUS_BINSTRING}, -{ RD_TP_EAP_MESSAGE, RADIUS_BINSTRING}, -{ RD_TP_MESSAGE_AUTHENTICATOR, RADIUS_BINSTRING}, -{ RD_TP_TUNNEL_PRIVATE_GROUP_ID, RADIUS_STRING_TAGGED}, -{ RD_TP_TUNNEL_ASSIGNMENT_ID, RADIUS_STRING_TAGGED}, -{ RD_TP_TUNNEL_TUNNEL_PREFERENCE, RADIUS_INTEGER4_TAGGED}, -{ RD_TP_TUNNEL_PACKETS_LOST, RADIUS_INTEGER4}, -{ RD_TP_NAS_PORT_ID, RADIUS_STRING}, -{ RD_TP_TUNNEL_CLIENT_AUTH_ID, RADIUS_STRING_TAGGED}, -{ RD_TP_TUNNEL_SERVER_AUTH_ID, RADIUS_STRING_TAGGED}, -{ RD_TP_ASCEND_MODEM_PORTNO, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_MODEM_SLOTNO, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_MULTILINK_ID, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_NUM_IN_MULTILINK, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_FIRST_DEST, RADIUS_IP_ADDRESS}, -{ RD_TP_ASCEND_PRE_INPUT_OCTETS, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_PRE_OUTPUT_OCTETS, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_PRE_INPUT_PACKETS, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_PRE_OUTPUT_PACKETS, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_MAXIMUM_TIME, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_DISCONNECT_CAUSE, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_CONNECT_PROGRESS, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_DATA_RATE, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_PRESESSION_TIME, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_ASSIGN_IP_POOL, RADIUS_INTEGER4}, -{ RD_TP_ASCEND_XMIT_RATE, RADIUS_INTEGER4}, -{0,0}, +static value_value_string radius_vendor_ascend_attrib[] = +{ + {7, RADIUS_STRING, "Ascend UU Info"}, + {9, RADIUS_INTEGER4, "Ascend CIR Timer"}, + {10, RADIUS_INTEGER4, "Ascend FR 08 Mode"}, + {11, RADIUS_INTEGER4, "Ascend Destination Nas Port"}, + {12, RADIUS_STRING, "Ascend FR SVC Addr"}, + {13, RADIUS_INTEGER4, "Ascend NAS Port Format"}, + {14, RADIUS_INTEGER4, "Ascend ATM Fault Management"}, + {15, RADIUS_INTEGER4, "Ascend ATM Loopback Cell Loss"}, + {16, RADIUS_INTEGER4, "Ascend Ckt Type"}, + {17, RADIUS_INTEGER4, "Ascend SVC Enabled"}, + {18, RADIUS_INTEGER4, "Ascend Session Type"}, + {19, RADIUS_IP_ADDRESS, "Ascend H323 Gatekeeper"}, + {20, RADIUS_STRING, "Ascend Global Call Id"}, + {21, RADIUS_INTEGER4, "Ascend H323 Conference Id"}, + {22, RADIUS_IP_ADDRESS, "Ascend H323 Fegw Address"}, + {23, RADIUS_INTEGER4, "Ascend H323 Dialed Time"}, + {24, RADIUS_STRING, "Ascend Dialed Number"}, + {25, RADIUS_INTEGER4, "Ascend Inter Arrival Jitter"}, + {26, RADIUS_INTEGER4, "Ascend Dropped Octets"}, + {27, RADIUS_INTEGER4, "Ascend Dropped Packets"}, + {29, RADIUS_INTEGER4, "Ascend X25 Pad X3 Profile"}, + {30, RADIUS_STRING, "Ascend X25 Pad X3 Parameters"}, + {31, RADIUS_STRING, "Ascend Tunnel VRouter Name"}, + {32, RADIUS_INTEGER4, "Ascend X25 Reverse Charging"}, + {33, RADIUS_STRING, "Ascend X25 Nui Prompt"}, + {34, RADIUS_STRING, "Ascend X25 Nui Password Prompt"}, + {35, RADIUS_STRING, "Ascend X25 Cug"}, + {36, RADIUS_STRING, "Ascend X25 Pad Alias 1"}, + {37, RADIUS_STRING, "Ascend X25 Pad Alias 2"}, + {38, RADIUS_STRING, "Ascend X25 Pad Alias 3"}, + {39, RADIUS_STRING, "Ascend X25 X121 Address"}, + {40, RADIUS_STRING, "Ascend X25 Nui"}, + {41, RADIUS_STRING, "Ascend X25 Rpoa"}, + {42, RADIUS_STRING, "Ascend X25 Pad Prompt"}, + {43, RADIUS_STRING, "Ascend X25 Pad Banner"}, + {44, RADIUS_STRING, "Ascend X25 Profile Name"}, + {45, RADIUS_STRING, "Ascend Recv Name"}, + {46, RADIUS_INTEGER4, "Ascend Bi Directional Auth"}, + {47, RADIUS_INTEGER4, "Ascend MTU"}, + {48, RADIUS_INTEGER4, "Ascend Call Direction"}, + {49, RADIUS_INTEGER4, "Ascend Service Type"}, + {50, RADIUS_INTEGER4, "Ascend Filter Required"}, + {51, RADIUS_INTEGER4, "Ascend Traffic Shaper"}, + {52, RADIUS_STRING, "Ascend Access Intercept LEA"}, + {53, RADIUS_STRING, "Ascend Access Intercept Log"}, + {54, RADIUS_STRING, "Ascend Private Route Table ID"}, + {55, RADIUS_INTEGER4, "Ascend Private Route Required"}, + {56, RADIUS_INTEGER4, "Ascend Cache Refresh"}, + {57, RADIUS_INTEGER4, "Ascend Cache Time"}, + {58, RADIUS_INTEGER4, "Ascend Egress Enabled"}, + {59, RADIUS_STRING, "Ascend QOS Upstream"}, + {60, RADIUS_STRING, "Ascend QOS Downstream"}, + {61, RADIUS_INTEGER4, "Ascend ATM Connect Vpi"}, + {62, RADIUS_INTEGER4, "Ascend ATM Connect Vci"}, + {63, RADIUS_INTEGER4, "Ascend ATM Connect Group"}, + {64, RADIUS_INTEGER4, "Ascend ATM Group"}, + {65, RADIUS_INTEGER4, "Ascend IPX Header Compression"}, + {66, ASCEND_CALLING_ID_TYPE_OF_NUMBER, "Ascend Calling Id Type Of Number"}, + {67, ASCEND_CALLING_ID_NUMBERING_PLAN, "Ascend Calling Id Numbering Plan"}, + {68, ASCEND_CALLING_ID_PRESENTATION, "Ascend Calling Id Presentation"}, + {69, ASCEND_CALLING_ID_SCREENING, "Ascend Calling Id Screening"}, + {70, RADIUS_INTEGER4, "Ascend BIR Enable"}, + {71, RADIUS_INTEGER4, "Ascend BIR Proxy"}, + {72, RADIUS_INTEGER4, "Ascend BIR Bridge Group"}, + {73, RADIUS_STRING, "Ascend IPSEC Profile"}, + {74, RADIUS_INTEGER4, "Ascend PPPoE Enable"}, + {75, RADIUS_INTEGER4, "Ascend Bridge Non PPPoE"}, + {76, RADIUS_INTEGER4, "Ascend ATM Direct"}, + {77, RADIUS_STRING, "Ascend ATM Direct Profile"}, + {78, RADIUS_IP_ADDRESS, "Ascend Client Primary WINS"}, + {79, RADIUS_IP_ADDRESS, "Ascend Client Secondary WINS"}, + {80, RADIUS_INTEGER4, "Ascend Client Assign WINS"}, + {81, RADIUS_INTEGER4, "Ascend Auth Type"}, + {82, RADIUS_INTEGER4, "Ascend Port Redir Protocol"}, + {83, RADIUS_INTEGER4, "Ascend Port Redir Portnum"}, + {84, RADIUS_IP_ADDRESS, "Ascend Port Redir Server"}, + {85, RADIUS_INTEGER4, "Ascend IP Pool Chaining"}, + {86, RADIUS_IP_ADDRESS, "Ascend Owner IP Addr"}, + {87, RADIUS_INTEGER4, "Ascend IP TOS"}, + {88, RADIUS_INTEGER4, "Ascend IP TOS Precedence"}, + {89, RADIUS_INTEGER4, "Ascend IP TOS Apply To"}, + {90, RADIUS_STRING, "Ascend Filter"}, + {91, RADIUS_STRING, "Ascend Telnet Profile"}, + {92, RADIUS_INTEGER4, "Ascend Dsl Rate Type"}, + {93, RADIUS_STRING, "Ascend Redirect Number"}, + {94, RADIUS_INTEGER4, "Ascend ATM Vpi"}, + {95, RADIUS_INTEGER4, "Ascend ATM Vci"}, + {96, RADIUS_INTEGER4, "Ascend Source IP Check"}, + {97, RADIUS_INTEGER4, "Ascend Dsl Rate Mode"}, + {98, RADIUS_INTEGER4, "Ascend Dsl Upstream Limit"}, + {99, RADIUS_INTEGER4, "Ascend Dsl Downstream Limit"}, + {100, RADIUS_INTEGER4, "Ascend Dsl CIR Recv Limit"}, + {101, RADIUS_INTEGER4, "Ascend Dsl CIR Xmit Limit"}, + {102, RADIUS_STRING, "Ascend VRouter Name"}, + {103, RADIUS_STRING, "Ascend Source Auth"}, + {104, RADIUS_STRING, "Ascend Private Route"}, + {105, RADIUS_INTEGER4, "Ascend Numbering Plan ID"}, + {106, RADIUS_INTEGER4, "Ascend FR Link Status DLCI"}, + {107, RADIUS_STRING, "Ascend Calling Subaddress"}, + {108, RADIUS_INTEGER4, "Ascend Callback Delay"}, + {109, RADIUS_STRING, "Ascend Endpoint Disc"}, + {110, RADIUS_STRING, "Ascend Remote FW"}, + {111, RADIUS_INTEGER4, "Ascend Multicast GLeave Delay"}, + {112, RADIUS_INTEGER4, "Ascend CBCP Enable"}, + {113, RADIUS_INTEGER4, "Ascend CBCP Mode"}, + {114, RADIUS_INTEGER4, "Ascend CBCP Delay"}, + {115, RADIUS_INTEGER4, "Ascend CBCP Trunk Group"}, + {116, RADIUS_STRING, "Ascend Appletalk Route"}, + {117, RADIUS_INTEGER4, "Ascend Appletalk Peer Mode"}, + {118, RADIUS_INTEGER4, "Ascend Route Appletalk"}, + {119, RADIUS_STRING, "Ascend FCP Parameter"}, + {120, RADIUS_INTEGER4, "Ascend Modem Port No"}, + {121, RADIUS_INTEGER4, "Ascend Modem Slot No"}, + {122, RADIUS_INTEGER4, "Ascend Modem Shelf No"}, + {123, RADIUS_INTEGER4, "Ascend Call Attempt Limit"}, + {124, RADIUS_INTEGER4, "Ascend Call Block Duration"}, + {125, RADIUS_INTEGER4, "Ascend Maximum Call Duration"}, + {126, RADIUS_INTEGER4, "Ascend Temporary Rtes"}, + {127, RADIUS_INTEGER4, "Ascend Tunneling Protocol"}, + {128, RADIUS_INTEGER4, "Ascend Shared Profile Enable"}, + {129, RADIUS_STRING, "Ascend Primary Home Agent"}, + {130, RADIUS_STRING, "Ascend Secondary Home Agent"}, + {131, RADIUS_INTEGER4, "Ascend Dialout Allowed"}, + {132, RADIUS_IP_ADDRESS, "Ascend Client Gateway"}, + {133, RADIUS_INTEGER4, "Ascend BACP Enable"}, + {134, RADIUS_INTEGER4, "Ascend DHCP Maximum Leases"}, + {135, RADIUS_IP_ADDRESS, "Ascend Client Primary DNS"}, + {136, RADIUS_IP_ADDRESS, "Ascend Client Secondary DNS"}, + {137, RADIUS_INTEGER4, "Ascend Client Assign DNS"}, + {138, RADIUS_INTEGER4, "Ascend User Acct Type"}, + {139, RADIUS_IP_ADDRESS, "Ascend User Acct Host"}, + {140, RADIUS_INTEGER4, "Ascend User Acct Port"}, + {141, RADIUS_STRING, "Ascend User Acct Key"}, + {142, RADIUS_INTEGER4, "Ascend User Acct Base"}, + {143, RADIUS_INTEGER4, "Ascend User Acct Time"}, + {144, RADIUS_IP_ADDRESS, "Ascend Assign IP Client"}, + {145, RADIUS_IP_ADDRESS, "Ascend Assign IP Server"}, + {146, RADIUS_STRING, "Ascend Assign IP Global Pool"}, + {147, RADIUS_INTEGER4, "Ascend DHCP Reply"}, + {148, RADIUS_INTEGER4, "Ascend DHCP Pool Number"}, + {149, RADIUS_INTEGER4, "Ascend Expect Callback"}, + {150, RADIUS_INTEGER4, "Ascend Event Type"}, + {151, RADIUS_STRING, "Ascend Session Svr Key"}, + {152, RADIUS_INTEGER4, "Ascend Multicast Rate Limit"}, + {153, RADIUS_IP_ADDRESS, "Ascend IF Netmask"}, + {154, RADIUS_IP_ADDRESS, "Ascend Remote Addr"}, + {155, RADIUS_INTEGER4, "Ascend Multicast Client"}, + {156, RADIUS_STRING, "Ascend FR Circuit Name"}, + {157, RADIUS_INTEGER4, "Ascend FR LinkUp"}, + {158, RADIUS_INTEGER4, "Ascend FR Nailed Grp"}, + {159, RADIUS_INTEGER4, "Ascend FR Type"}, + {160, RADIUS_INTEGER4, "Ascend FR Link Mgt"}, + {161, RADIUS_INTEGER4, "Ascend FR N391"}, + {162, RADIUS_INTEGER4, "Ascend FR DCE N392"}, + {163, RADIUS_INTEGER4, "Ascend FR DTE N392"}, + {164, RADIUS_INTEGER4, "Ascend FR DCE N393"}, + {165, RADIUS_INTEGER4, "Ascend FR DTE N393"}, + {166, RADIUS_INTEGER4, "Ascend FR T391"}, + {167, RADIUS_INTEGER4, "Ascend FR T392"}, + {168, RADIUS_STRING, "Ascend Bridge Address"}, + {169, RADIUS_INTEGER4, "Ascend TS Idle Limit"}, + {170, RADIUS_INTEGER4, "Ascend TS Idle Mode"}, + {171, RADIUS_INTEGER4, "Ascend DBA Monitor"}, + {172, RADIUS_INTEGER4, "Ascend Base Channel Count"}, + {173, RADIUS_INTEGER4, "Ascend Minimum Channels"}, + {174, RADIUS_STRING, "Ascend IPX Route"}, + {175, RADIUS_INTEGER4, "Ascend FT1 Caller"}, + {176, RADIUS_STRING, "Ascend Backup"}, + {177, RADIUS_INTEGER4, "Ascend Call Type"}, + {178, RADIUS_STRING, "Ascend Group"}, + {179, RADIUS_INTEGER4, "Ascend FR DLCI"}, + {180, RADIUS_STRING, "Ascend FR Profile Name"}, + {181, RADIUS_STRING, "Ascend Ara PW"}, + {182, RADIUS_STRING, "Ascend IPX Node Addr"}, + {183, RADIUS_IP_ADDRESS, "Ascend Home Agent IP Addr"}, + {184, RADIUS_STRING, "Ascend Home Agent Password"}, + {185, RADIUS_STRING, "Ascend Home Network Name"}, + {186, RADIUS_INTEGER4, "Ascend Home Agent UDP Port"}, + {187, RADIUS_INTEGER4, "Ascend Multilink ID"}, + {188, RADIUS_INTEGER4, "Ascend Num In Multilink"}, + {189, RADIUS_IP_ADDRESS, "Ascend First Dest"}, + {190, RADIUS_INTEGER4, "Ascend Pre Input Octets"}, + {191, RADIUS_INTEGER4, "Ascend Pre Output Octets"}, + {192, RADIUS_INTEGER4, "Ascend Pre Input Packets"}, + {193, RADIUS_INTEGER4, "Ascend Pre Output Packets"}, + {194, RADIUS_INTEGER4, "Ascend Maximum Time"}, + {195, RADIUS_INTEGER4, "Ascend Disconnect Cause"}, + {196, RADIUS_INTEGER4, "Ascend Connect Progress"}, + {197, RADIUS_INTEGER4, "Ascend Data Rate"}, + {198, RADIUS_INTEGER4, "Ascend PreSession Time"}, + {199, RADIUS_INTEGER4, "Ascend Token Idle"}, + {200, RADIUS_INTEGER4, "Ascend Token Immediate"}, + {201, RADIUS_INTEGER4, "Ascend Require Auth"}, + {202, RADIUS_STRING, "Ascend Number Sessions"}, + {203, RADIUS_STRING, "Ascend Authen Alias"}, + {204, RADIUS_INTEGER4, "Ascend Token Expiry"}, + {205, RADIUS_STRING, "Ascend Menu Selector"}, + {206, RADIUS_STRING, "Ascend Menu Item"}, + {207, RADIUS_INTEGER4, "Ascend PW Warntime"}, + {208, RADIUS_INTEGER4, "Ascend PW Lifetime"}, + {209, RADIUS_IP_ADDRESS, "Ascend IP Direct"}, + {210, RADIUS_INTEGER4, "Ascend PPP VJ Slot Comp"}, + {211, RADIUS_INTEGER4, "Ascend PPP VJ 1172"}, + {212, RADIUS_INTEGER4, "Ascend PPP Async Map"}, + {213, RADIUS_STRING, "Ascend Third Prompt"}, + {214, RADIUS_STRING, "Ascend Send Secret"}, + {215, RADIUS_STRING, "Ascend Receive Secret"}, + {216, RADIUS_INTEGER4, "Ascend IPX Peer Mode"}, + {217, RADIUS_STRING, "Ascend IP Pool Definition"}, + {218, RADIUS_INTEGER4, "Ascend Assign IP Pool"}, + {219, RADIUS_INTEGER4, "Ascend FR Direct"}, + {220, RADIUS_STRING, "Ascend FR Direct Profile"}, + {221, RADIUS_INTEGER4, "Ascend FR Direct DLCI"}, + {222, RADIUS_INTEGER4, "Ascend Handle IPX"}, + {223, RADIUS_INTEGER4, "Ascend Netware timeout"}, + {224, RADIUS_INTEGER4, "Ascend IPX Alias"}, + {225, RADIUS_INTEGER4, "Ascend Metric"}, + {226, RADIUS_INTEGER4, "Ascend PRI Number Type"}, + {227, RADIUS_STRING, "Ascend Dial Number"}, + {228, RADIUS_INTEGER4, "Ascend Route IP"}, + {229, RADIUS_INTEGER4, "Ascend Route IPX"}, + {230, RADIUS_INTEGER4, "Ascend Bridge"}, + {231, RADIUS_INTEGER4, "Ascend Send Auth"}, + {232, RADIUS_STRING, "Ascend Send Passwd"}, + {233, RADIUS_INTEGER4, "Ascend Link Compression"}, + {234, RADIUS_INTEGER4, "Ascend Target Util"}, + {235, RADIUS_INTEGER4, "Ascend Maximum Channels"}, + {236, RADIUS_INTEGER4, "Ascend Inc Channel Count"}, + {237, RADIUS_INTEGER4, "Ascend Dec Channel Count"}, + {238, RADIUS_INTEGER4, "Ascend Seconds Of History"}, + {239, RADIUS_INTEGER4, "Ascend History Weigh Type"}, + {240, RADIUS_INTEGER4, "Ascend Add Seconds"}, + {241, RADIUS_INTEGER4, "Ascend Remove Seconds"}, + {242, RADIUS_BINSTRING, "Ascend Data Filter"}, + {243, RADIUS_BINSTRING, "Ascend Call Filter"}, + {244, RADIUS_INTEGER4, "Ascend Idle Limit"}, + {245, RADIUS_INTEGER4, "Ascend Preempt Limit"}, + {246, RADIUS_INTEGER4, "Ascend Callback"}, + {247, RADIUS_INTEGER4, "Ascend Data Svc"}, + {248, RADIUS_INTEGER4, "Ascend Force 56"}, + {249, RADIUS_STRING, "Ascend Billing Number"}, + {250, RADIUS_INTEGER4, "Ascend Call By Call"}, + {251, RADIUS_STRING, "Ascend Transit Number"}, + {252, RADIUS_STRING, "Ascend Host Info"}, + {253, RADIUS_IP_ADDRESS, "Ascend PPP Address"}, + {254, RADIUS_INTEGER4, "Ascend MPP Idle Percent"}, + {255, RADIUS_INTEGER4, "Ascend Xmit Rate"}, + {0, 0, NULL} }; -static value_string radius_attrib_type_vals[] = { -{ RD_TP_USER_NAME, "User Name"}, -{ RD_TP_USER_PASSWORD, "User Password"}, -{ RD_TP_CHAP_PASSWORD, "Chap Password"}, -{ RD_TP_NAS_IP_ADDRESS, "NAS IP Address"}, -{ RD_TP_NAS_PORT, "NAS Port"}, -{ RD_TP_SERVICE_TYPE, "Service Type"}, -{ RD_TP_FRAMED_PROTOCOL, "Framed Protocol"}, -{ RD_TP_FRAMED_IP_ADDRESS, "Framed IP Address"}, -{ RD_TP_FRAMED_IP_NETMASK, "Framed IP Netmask"}, -{ RD_TP_FRAMED_ROUTING, "Framed Routing"}, -{ RD_TP_FILTER_ID, "Filter Id"}, -{ RD_TP_FRAMED_MTU, "Framed MTU"}, -{ RD_TP_FRAMED_COMPRESSION, "Framed Compression"}, -{ RD_TP_LOGIN_IP_HOST, "Login IP Host"}, -{ RD_TP_LOGIN_SERVICE, "Login Service"}, -{ RD_TP_LOGIN_TCP_PORT, "Login TCP Port"}, -{ RD_TP_UNASSIGNED, "Unassigned"}, -{ RD_TP_REPLY_MESSAGE, "Reply Message"}, -{ RD_TP_CALLBACK_NUMBER, "Callback Number"}, -{ RD_TP_CALLBACK_ID, "Callback Id"}, -{ RD_TP_UNASSIGNED2, "Unassigned"}, -{ RD_TP_FRAMED_ROUTE, "Framed Route"}, -{ RD_TP_FRAMED_IPX_NETWORK, "Framed IPX network"}, -{ RD_TP_STATE, "State"}, -{ RD_TP_CLASS, "Class"}, -{ RD_TP_VENDOR_SPECIFIC, "Vendor Specific" }, -{ RD_TP_SESSION_TIMEOUT, "Session Timeout"}, -{ RD_TP_IDLE_TIMEOUT, "Idle Timeout"}, -{ RD_TP_TERMINATING_ACTION, "Terminating Action"}, -{ RD_TP_CALLED_STATION_ID, "Called Station Id"}, -{ RD_TP_CALLING_STATION_ID, "Calling Station Id"}, -{ RD_TP_NAS_IDENTIFIER, "NAS identifier"}, -{ RD_TP_PROXY_STATE, "Proxy State"}, -{ RD_TP_LOGIN_LAT_SERVICE, "Login LAT Service"}, -{ RD_TP_LOGIN_LAT_NODE, "Login LAT Node"}, -{ RD_TP_LOGIN_LAT_GROUP, "Login LAT Group"}, -{ RD_TP_FRAMED_APPLETALK_LINK, "Framed Appletalk Link"}, -{ RD_TP_FRAMED_APPLETALK_NETWORK, "Framed Appletalk Network"}, -{ RD_TP_FRAMED_APPLETALK_ZONE, "Framed Appletalk Zone"}, -{ RD_TP_ACCT_STATUS_TYPE, "Acct Status Type"}, -{ RD_TP_ACCT_DELAY_TIME, "Acct Delay Time"}, -{ RD_TP_ACCT_INPUT_OCTETS, "Acct Input Octets"}, -{ RD_TP_ACCT_OUTPUT_OCTETS, "Acct Output Octets"}, -{ RD_TP_ACCT_SESSION_ID, "Acct Session Id"}, -{ RD_TP_ACCT_AUTHENTIC, "Acct Authentic"}, -{ RD_TP_ACCT_SESSION_TIME, "Acct Session Time"}, -{ RD_TP_ACCT_INPUT_PACKETS, "Acct Input Packets"}, -{ RD_TP_ACCT_OUTPUT_PACKETS, "Acct Output Packets"}, -{ RD_TP_ACCT_TERMINATE_CAUSE, "Acct Terminate Cause"}, -{ RD_TP_ACCT_MULTI_SESSION_ID, "Acct Multi Session Id"}, -{ RD_TP_ACCT_LINK_COUNT, "Acct Link Count"}, -{ RD_TP_ACCT_INPUT_GIGAWORDS, "Acct Input Gigawords"}, -{ RD_TP_ACCT_OUTPUT_GIGAWORDS, "Acct Output Gigawords"}, -{ RD_TP_EVENT_TIMESTAMP, "Event Timestamp"}, -{ RD_TP_CHAP_CHALLENGE, "Chap Challenge"}, -{ RD_TP_NAS_PORT_TYPE, "NAS Port Type"}, -{ RD_TP_PORT_LIMIT, "Port Limit"}, -{ RD_TP_LOGIN_LAT_PORT, "Login LAT Port"}, -{ RD_TP_TUNNEL_TYPE, "Tunnel Type"}, -{ RD_TP_TUNNEL_MEDIUM_TYPE, "Tunnel Medium Type"}, -{ RD_TP_TUNNEL_CLIENT_ENDPOINT, "Tunnel Client Endpoint"}, -{ RD_TP_TUNNEL_SERVER_ENDPOINT, "Tunnel Server Endpoint"}, -{ RD_TP_TUNNEL_CONNECTION, "Tunnel Connection"}, -{ RD_TP_TUNNEL_PASSWORD, "Tunnel Password"}, -{ RD_TP_ARAP_PASSWORD, "ARAP-Password"}, -{ RD_TP_ARAP_FEATURES, "ARAP-Features"}, -{ RD_TP_ARAP_ZONE_ACCESS, "ARAP-Zone-Access"}, -{ RD_TP_ARAP_SECURITY, "ARAP-Security"}, -{ RD_TP_ARAP_SECURITY_DATA, "ARAP-Security-Data"}, -{ RD_TP_PASSWORD_RETRY, "Password-Retry"}, -{ RD_TP_PROMPT, "Prompt"}, -{ RD_TP_CONNECT_INFO, "Connect-Info"}, -{ RD_TP_CONFIGURATION_TOKEN, "Configuration-Token"}, -{ RD_TP_EAP_MESSAGE, "EAP-Message"}, -{ RD_TP_MESSAGE_AUTHENTICATOR, "Message Authenticator"}, -{ RD_TP_TUNNEL_PRIVATE_GROUP_ID, "Tunnel Private Group ID"}, -{ RD_TP_TUNNEL_ASSIGNMENT_ID, "Tunnel Assignment ID"}, -{ RD_TP_TUNNEL_TUNNEL_PREFERENCE, "Tunnel Preference"}, -{ RD_TP_TUNNEL_PACKETS_LOST, "Tunnel Packets Lost"}, -{ RD_TP_NAS_PORT_ID, "NAS Port ID"}, -{ RD_TP_TUNNEL_CLIENT_AUTH_ID, "Tunnel Client Auth ID"}, -{ RD_TP_TUNNEL_SERVER_AUTH_ID, "Tunnel Server Auth ID"}, -{ RD_TP_ASCEND_MODEM_PORTNO, "Ascend Modem Port No"}, -{ RD_TP_ASCEND_MODEM_SLOTNO, "Ascend Modem Slot No"}, -{ RD_TP_ASCEND_MULTILINK_ID, "Ascend Multilink ID"}, -{ RD_TP_ASCEND_NUM_IN_MULTILINK, "Ascend Num In Multilink"}, -{ RD_TP_ASCEND_FIRST_DEST, "Ascend First Dest"}, -{ RD_TP_ASCEND_PRE_INPUT_OCTETS, "Ascend Pre Input Octets"}, -{ RD_TP_ASCEND_PRE_OUTPUT_OCTETS, "Ascend Pre Output Octets"}, -{ RD_TP_ASCEND_PRE_INPUT_PACKETS, "Ascend Pre Input Packets"}, -{ RD_TP_ASCEND_PRE_OUTPUT_PACKETS, "Ascend Pre Output Packets"}, -{ RD_TP_ASCEND_MAXIMUM_TIME, "Ascend Maximum Time"}, -{ RD_TP_ASCEND_DISCONNECT_CAUSE, "Ascend Disconnect Cause"}, -{ RD_TP_ASCEND_CONNECT_PROGRESS, "Ascend Connect Progress"}, -{ RD_TP_ASCEND_DATA_RATE, "Ascend Data Rate"}, -{ RD_TP_ASCEND_PRESESSION_TIME, "Ascend PreSession Time"}, -{ RD_TP_ASCEND_ASSIGN_IP_POOL, "Ascend Assign IP Pool"}, -{ RD_TP_ASCEND_XMIT_RATE, "Ascend Xmit Rate"}, -{0,NULL}, +static value_string radius_vendor_ascend_calling_id_type_of_number_vals[] = +{ + {0, "Unknown"}, + {1, "International Number"}, + {2, "National Number"}, + {3, "Network Specific"}, + {4, "Subscriber Number"}, + {6, "Abbreviated Number"}, + {0, NULL} }; -static rd_vsa_table radius_vsa_table[] = { -{ VENDOR_CISCO, radius_vendor_cisco_printinfo, radius_vendor_cisco_types }, -{ VENDOR_MICROSOFT, radius_vendor_microsoft_printinfo, radius_vendor_microsoft_types }, -{ VENDOR_ASCEND, radius_vendor_ascend_printinfo, radius_vendor_ascend_types }, -{ VENDOR_COSINE, radius_vendor_cosine_printinfo, radius_vendor_cosine_types }, -{ VENDOR_ISSANNI, radius_vendor_issanni_printinfo, radius_vendor_issanni_types }, -{0,NULL,NULL}, +static value_string radius_vendor_ascend_calling_id_numbering_plan_vals[] = +{ + {0, "Unknown"}, + {1, "ISDN Telephony"}, + {3, "Data"}, + {4, "Telex"}, + {8, "National"}, + {9, "Private"}, + {0, NULL} }; -static rd_valstr_table valstr_table[] = { -{ RADIUS_SERVICE_TYPE, radius_service_type_vals }, -{ RADIUS_FRAMED_PROTOCOL, radius_framed_protocol_vals }, -{ RADIUS_FRAMED_ROUTING, radius_framed_routing_vals }, -{ RADIUS_FRAMED_COMPRESSION, radius_framed_compression_vals }, -{ RADIUS_LOGIN_SERVICE, radius_login_service_vals }, -{ RADIUS_TERMINATING_ACTION, radius_terminating_action_vals }, -{ RADIUS_ACCOUNTING_STATUS_TYPE, radius_accounting_status_type_vals }, -{ RADIUS_ACCT_AUTHENTIC, radius_accounting_authentication_vals }, -{ RADIUS_ACCT_TERMINATE_CAUSE, radius_acct_terminate_cause_vals }, -{ RADIUS_NAS_PORT_TYPE, radius_nas_port_type_vals }, -{ CISCO_VSA_DISCONNECT_CAUSE, radius_vendor_cisco_disconnect_cause_vals }, -{ MICROSOFT_VSA_BAP_USAGE, radius_vendor_microsoft_bap_usage_vals }, -{ MICROSOFT_VSA_ARAP_PW_CHANGE_REASON, radius_vendor_microsoft_arap_pw_change_reason_vals }, -{ MICROSOFT_VSA_ACCT_AUTH_TYPE, radius_vendor_microsoft_acct_auth_type_vals }, -{ MICROSOFT_VSA_ACCT_EAP_TYPE, radius_vendor_microsoft_acct_eap_type_vals }, -{ ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER, radius_vendor_ascend_calling_id_type_of_number_vals }, -{ ASCEND_VSA_CALLING_ID_NUMBERING_PLAN, radius_vendor_ascend_calling_id_numbering_plan_vals }, -{ ASCEND_VSA_CALLING_ID_PRESENTATION, radius_vendor_ascend_calling_id_presentation_vals }, -{ ASCEND_VSA_CALLING_ID_SCREENING, radius_vendor_ascend_calling_id_screening_vals }, -{0,NULL} +static value_string radius_vendor_ascend_calling_id_presentation_vals[] = +{ + {0, "Allowed"}, + {1, "Restricted"}, + {2, "Number Not Available"}, + {0, NULL} }; -static rd_vsa_table *get_vsa_table(guint32 type) +static value_string radius_vendor_ascend_calling_id_screening_vals[] = { - guint32 i = 0; + {0, "User Not Screened"}, + {1, "User Provided Passed"}, + {2, "User Provided Failed"}, + {3, "Network Provided"}, + {0, NULL} +}; - while (radius_vsa_table[i].type) { - if (radius_vsa_table[i].type == type) +static value_value_string radius_vendor_cosine_attrib[] = +{ + {1, RADIUS_STRING, "Connection Profile Name"}, + {2, RADIUS_STRING, "Enterprise ID"}, + {3, RADIUS_STRING, "Address Pool Name"}, + {4, RADIUS_INTEGER4, "DS Byte"}, + {5, COSINE_VPI_VCI, "VPI/VCI"}, + {6, RADIUS_INTEGER4, "DLCI"}, + {7, RADIUS_IP_ADDRESS, "LNS IP Address"}, + {8, RADIUS_STRING, "CLI User Permission ID"}, + {0, 0, NULL} +}; + +static value_value_string radius_vendor_issanni_attrib[] = +{ + {1, RADIUS_STRING, "Softflow Template"}, + {2, RADIUS_STRING, "NAT Pool"}, + {3, RADIUS_STRING, "Virtual Routing Domain"}, + {4, RADIUS_STRING, "Tunnel Name"}, + {5, RADIUS_STRING, "IP Pool Name"}, + {6, RADIUS_STRING, "PPPoE URL"}, + {7, RADIUS_STRING, "PPPoE MOTM"}, + {8, RADIUS_STRING, "PPPoE Service"}, + {9, RADIUS_IP_ADDRESS, "Primary DNS"}, + {10, RADIUS_IP_ADDRESS, "Secondary DNS"}, + {11, RADIUS_IP_ADDRESS, "Primary NBNS"}, + {12, RADIUS_IP_ADDRESS, "Secondary NBNS"}, + {13, RADIUS_STRING, "Policing Traffic Class"}, + {14, RADIUS_INTEGER4, "Tunnel Type"}, + {15, RADIUS_INTEGER4, "NAT Type"}, + {16, RADIUS_STRING, "QoS Traffic Class"}, + {17, RADIUS_STRING, "Interface Name"}, + {0, 0, NULL} +}; + +static rd_vsa_table radius_vsa_table[] = +{ + {VENDOR_CISCO, radius_vendor_cisco_attrib}, + {VENDOR_MICROSOFT, radius_vendor_microsoft_attrib}, + {VENDOR_ASCEND, radius_vendor_ascend_attrib}, + {VENDOR_COSINE, radius_vendor_cosine_attrib}, + {VENDOR_ISSANNI, radius_vendor_issanni_attrib}, + {0, NULL}, +}; + +/* + * XXX - should these be read from files, such as FreeRadius dictionary + * files? For example, its "dictionary" file has entries such as + * + * VALUE Service-Type Login-User 1 + * + * to handle translation of integral values to strings. + */ +static rd_valstr_table valstr_table[] = +{ + {RADIUS_SERVICE_TYPE, radius_service_type_vals}, + {RADIUS_FRAMED_PROTOCOL, radius_framed_protocol_vals}, + {RADIUS_FRAMED_ROUTING, radius_framed_routing_vals}, + {RADIUS_FRAMED_COMPRESSION, radius_framed_compression_vals}, + {RADIUS_LOGIN_SERVICE, radius_login_service_vals}, + {RADIUS_TERMINATING_ACTION, radius_terminating_action_vals}, + {RADIUS_ACCOUNTING_STATUS_TYPE, radius_accounting_status_type_vals}, + {RADIUS_ACCT_AUTHENTIC, radius_accounting_authentication_vals}, + {RADIUS_ACCT_TERMINATE_CAUSE, radius_acct_terminate_cause_vals}, + {RADIUS_NAS_PORT_TYPE, radius_nas_port_type_vals}, + {CISCO_DISCONNECT_CAUSE, radius_vendor_cisco_disconnect_cause_vals}, + {MICROSOFT_BAP_USAGE, radius_vendor_microsoft_bap_usage_vals}, + {MICROSOFT_ARAP_PW_CHANGE_REASON, radius_vendor_microsoft_arap_pw_change_reason_vals}, + {MICROSOFT_ACCT_AUTH_TYPE, radius_vendor_microsoft_acct_auth_type_vals}, + {MICROSOFT_ACCT_EAP_TYPE, radius_vendor_microsoft_acct_eap_type_vals}, + {ASCEND_CALLING_ID_TYPE_OF_NUMBER, radius_vendor_ascend_calling_id_type_of_number_vals}, + {ASCEND_CALLING_ID_NUMBERING_PLAN, radius_vendor_ascend_calling_id_numbering_plan_vals}, + {ASCEND_CALLING_ID_PRESENTATION, radius_vendor_ascend_calling_id_presentation_vals}, + {ASCEND_CALLING_ID_SCREENING, radius_vendor_ascend_calling_id_screening_vals}, + {0, NULL} +}; + +static rd_vsa_table *get_vsa_table(guint32 vendor) +{ + guint32 i; + + for (i = 0; radius_vsa_table[i].vendor; i++) + if (radius_vsa_table[i].vendor == vendor) return(&radius_vsa_table[i]); - i++; - } - return(0); + + return(NULL); } -static guint32 match_numval(guint32 val, const value_value_pair *vs) +static guint32 match_numval(guint32 val, const value_value_string *vvs) { guint32 i = 0; - while (vs[i].val1) { - if (vs[i].val1 == val) - return(vs[i].val2); + while (vvs[i].val1) { + if (vvs[i].val1 == val) + return(vvs[i].val2); i++; } @@ -2100,26 +1204,41 @@ rdconvertbufftobinstr(gchar *dest, tvbuff_t *tvb, int offset, int length) } static gchar *rd_match_strval(guint32 val, const value_string *vs) { - return val_to_str(val, vs, "Undefined (%u)"); + return val_to_str(val, vs, "Undefined(%u)"); } -static gchar *rdconvertinttostr(gchar *dest, int print_type, guint32 intval) +static gchar *rd_match_strval_attrib(guint32 val, const value_value_string *vvs) { - guint32 i = 0; + guint32 i; + + for (i = 0; vvs[i].val1; i++) + if (vvs[i].val1 == val) + return(vvs[i].str); + + return("Unknown Type"); +} - while (valstr_table[i].type) { - if (valstr_table[i].type == print_type) { - sprintf(dest,"%s(%d)", - rd_match_strval(intval,valstr_table[i].str),intval); +static gchar *rdconvertinttostr(gchar *dest, int print_type, guint32 val) +{ + guint32 i; + value_string *vs = null_vals; + + for (i = 0; valstr_table[i].print_type; i++) + { + if (valstr_table[i].print_type == print_type) + { + vs = valstr_table[i].valstr; break; } - i++; } + sprintf(dest, "%s(%u)", val_to_str(val, vs, "Undefined"), val); + return dest; + } static gchar *rd_value_to_str_2(gchar *dest, e_avphdr *avph, tvbuff_t *tvb, - int offset, const value_value_pair *vvp) + int offset, const value_value_string *vvs) { int print_type; gchar *cont; @@ -2137,7 +1256,7 @@ static gchar *rd_value_to_str_2(gchar *dest, e_avphdr *avph, tvbuff_t *tvb, e_avphdr *vsa_avph; /* prints the values of the attribute value pairs into a text buffer */ - print_type=match_numval(avph->avp_type,vvp); + print_type = match_numval(avph->avp_type, vvs); /* Default begin */ strcpy(dest, "Value:"); @@ -2199,31 +1318,30 @@ static gchar *rd_value_to_str_2(gchar *dest, e_avphdr *avph, tvbuff_t *tvb, break; case ( RADIUS_VENDOR_SPECIFIC ): vsa_index = 1; - valstrarr=radius_vendor_specific_vendors; + valstrarr = radius_vendor_specific_vendors; sprintf(dest,"Vendor:%s", rd_match_strval(tvb_get_ntohl(tvb,offset+2),valstrarr)); - cont=&dest[strlen(dest)]; - vsa_rvt=get_vsa_table(tvb_get_ntohl(tvb,offset+2)); - if (vsa_rvt) { + cont = &dest[strlen(dest)]; + vsa_rvt = get_vsa_table(tvb_get_ntohl(tvb,offset+2)); vsa_attrlen = avph->avp_length; vsa_len = 6; - do { - vsa_avph=(e_avphdr*)tvb_get_ptr(tvb,offset+vsa_len,avph->avp_length-vsa_len); - cont=&cont[strlen(cont)+1]; - vsabuffer[vsa_index].valstr = cont; + do + { + vsa_avph = (e_avphdr*)tvb_get_ptr(tvb, offset+vsa_len, avph->avp_length-vsa_len); + cont = &cont[strlen(cont)+1]; + vsabuffer[vsa_index].str = cont; vsabuffer[vsa_index].offset = offset+vsa_len; vsabuffer[vsa_index].length = vsa_avph->avp_length; - sprintf(cont, "t:%s(%d) l:%d, ", - match_strval(vsa_avph->avp_type, vsa_rvt->types), - vsa_avph->avp_type,vsa_avph->avp_length); - cont=&cont[strlen(cont)]; - rd_value_to_str_2(cont,vsa_avph,tvb,offset+vsa_len,vsa_rvt->printinfo); - vsa_len+=vsa_avph->avp_length; + sprintf(cont, "t:%s(%u) l:%u, ", + rd_match_strval_attrib(vsa_avph->avp_type, + (vsa_rvt ? vsa_rvt->attrib : null_attrib)), + vsa_avph->avp_type, vsa_avph->avp_length); + cont = &cont[strlen(cont)]; + rd_value_to_str_2(cont,vsa_avph, tvb, offset+vsa_len, + (vsa_rvt ? vsa_rvt->attrib : null_attrib)); + vsa_len += vsa_avph->avp_length; vsa_index++; } while (vsa_attrlen > vsa_len && vsa_index < VSABUFFER); - } - else - rdconvertbufftostr(cont,tvb,offset+6,avph->avp_length-6); break; case( RADIUS_SERVICE_TYPE ): case( RADIUS_FRAMED_PROTOCOL ): @@ -2235,13 +1353,13 @@ static gchar *rd_value_to_str_2(gchar *dest, e_avphdr *avph, tvbuff_t *tvb, case( RADIUS_ACCT_AUTHENTIC ): case( RADIUS_ACCT_TERMINATE_CAUSE ): case( RADIUS_NAS_PORT_TYPE ): - case( ASCEND_VSA_CALLING_ID_TYPE_OF_NUMBER ): - case( ASCEND_VSA_CALLING_ID_NUMBERING_PLAN ): - case( ASCEND_VSA_CALLING_ID_PRESENTATION ): - case( ASCEND_VSA_CALLING_ID_SCREENING ): + case( ASCEND_CALLING_ID_TYPE_OF_NUMBER ): + case( ASCEND_CALLING_ID_NUMBERING_PLAN ): + case( ASCEND_CALLING_ID_PRESENTATION ): + case( ASCEND_CALLING_ID_SCREENING ): rdconvertinttostr(cont, print_type,tvb_get_ntohl(tvb,offset+2)); break; - case( COSINE_VSA_VPI_VCI ): + case( COSINE_VPI_VCI ): sprintf(cont,"%u/%u", tvb_get_ntohs(tvb,offset+2), tvb_get_ntohs(tvb,offset+4)); @@ -2279,9 +1397,9 @@ static gchar *rd_value_to_str(e_avphdr *avph, tvbuff_t *tvb, int offset) { int i; for (i = 0; i < VSABUFFER; i++) - vsabuffer[i].valstr = 0; - vsabuffer[0].valstr = textbuffer; - rd_value_to_str_2(textbuffer,avph,tvb,offset,radius_printinfo); + vsabuffer[i].str = 0; + vsabuffer[0].str = textbuffer; + rd_value_to_str_2(textbuffer, avph, tvb, offset, radius_attrib); return textbuffer; } @@ -2314,9 +1432,7 @@ dissect_attribute_value_pairs(tvbuff_t *tvb, int offset,proto_tree *tree, while (avplength > 0) { tvb_memcpy(tvb,(guint8 *)&avph,offset,sizeof(e_avphdr)); - avptpstrval = match_strval(avph.avp_type, radius_attrib_type_vals); - if (avptpstrval == NULL) - avptpstrval = "Unknown Type"; + avptpstrval = rd_match_strval_attrib(avph.avp_type, radius_attrib); if (avph.avp_length < 2) { /* * This AVP is bogus - the length includes the type and length @@ -2330,7 +1446,7 @@ dissect_attribute_value_pairs(tvbuff_t *tvb, int offset,proto_tree *tree, break; } - if (avph.avp_type == RD_TP_EAP_MESSAGE) { + if (avph.avp_type == 79) { /* RD_TP_EAP_MESSAGE */ proto_item *ti; proto_tree *eap_tree = NULL; gint tvb_len; @@ -2443,14 +1559,17 @@ dissect_attribute_value_pairs(tvbuff_t *tvb, int offset,proto_tree *tree, } } else { if (tree) { + proto_item *ti; + proto_tree *vsa_tree = NULL; valstr = rd_value_to_str(&avph, tvb, offset); - proto_tree_add_text(tree, tvb, offset, avph.avp_length, + ti = proto_tree_add_text(tree, tvb, offset, avph.avp_length, "t:%s(%u) l:%u, %s", avptpstrval, avph.avp_type, avph.avp_length, valstr); - for (i = 1; vsabuffer[i].valstr && i < VSABUFFER; i++) - proto_tree_add_text(tree, tvb, vsabuffer[i].offset, vsabuffer[i].length, - " %s", vsabuffer[i].valstr); + vsa_tree = proto_item_add_subtree(ti, ett_radius_vsa); + for (i = 1; vsabuffer[i].str && i < VSABUFFER; i++) + proto_tree_add_text(vsa_tree, tvb, vsabuffer[i].offset, vsabuffer[i].length, + "%s", vsabuffer[i].str); } } @@ -2555,6 +1674,7 @@ proto_register_radius(void) &ett_radius, &ett_radius_avp, &ett_radius_eap, + &ett_radius_vsa, }; proto_radius = proto_register_protocol("Radius Protocol", "RADIUS", |