diff options
-rw-r--r-- | diameter/dictionary.xml | 58 | ||||
-rw-r--r-- | epan/dissectors/packet-diameter-defs.h | 102 | ||||
-rw-r--r-- | radius/dictionary.3gpp | 35 |
3 files changed, 134 insertions, 61 deletions
diff --git a/diameter/dictionary.xml b/diameter/dictionary.xml index e109ad20b3..d6b2a05031 100644 --- a/diameter/dictionary.xml +++ b/diameter/dictionary.xml @@ -1102,6 +1102,7 @@ <enum name="DIAMETER_ERROR_START_INDICATION" code="5120"/> <enum name="DIAMETER_ERROR_STOP_INDICATION" code="5121"/> <enum name="DIAMETER_ERROR_UNKNOWN_MBMS_BEARER_SERVICE" code="5122"/> + <enum name="DIAMETER_ERROR_SERVICE_AREA" code="5123"/> <enum name="DIAMETER_ERROR_INITIAL_PARAMETERS" code="5140"/> <enum name="DIAMETER_ERROR_TRIGGER_EVENT" code="5141"/> </avp> @@ -1495,6 +1496,63 @@ <gavp name="Originator"/> </grouped> </avp> + + <!-- 3GPP TS 29.061 version 6.5.0 Release 6 --> + + <avp name="TMGI" code="900" mandatory="must"> + <type type-name="OctetString"/> + </avp> + + <avp name="Required-MBMSBearer-Capabilities" code="901" mandatory="must"> + <type type-name="UTF8String"/> + </avp> + + <avp name="MBMS-StartStop-Indication" code="902" mandatory="must"> + <type type-name="Enumerated"/> + <enum name="START" code="0"/> + <enum name="STOP" code="1"/> + </avp> + + <avp name="MBMS-Service-Area" code="903" mandatory="must"> + <type type-name="OctetString"/> + </avp> + + <avp name="MBMS-Session-Duration" code="904" mandatory="must"> + <type type-name="Unsigned32"/> + </avp> + + <avp name="Alternative-APN" code="905" mandatory="must"> + <type type-name="UTF8String"/> + </avp> + + <avp name="MBMS-Service-Type" code="906" mandatory="must"> + <type type-name="Enumerated"/> + <enum name="MULTICAST" code="0"/> + <enum name="BROADCAST" code="1"/> + </avp> + + <avp name="MBMS-2G-3G-Indicator AVP" code="907" mandatory="must"> + <type type-name="Enumerated"/> + <enum name="2G" code="0"/> + <enum name="3G" code="1"/> + <enum name="2G-AND-3G" code="2"/> + </avp> + + <avp name="RAI" code="909" mandatory="must"> + <type type-name="UTF8String"/> + </avp> + + <avp name="Additional-MBMS-Trace-Info" code="910" mandatory="must"> + <type type-name="OctetString"/> + </avp> + + <avp name="MBMS-Time-To-Data-Transfer" code="911" mandatory="must"> + <type type-name="OctetString"/> + </avp> + + <avp name="MBMS-Session-Identity-Repetition-Number " code="912" mandatory="must"> + <type type-name="Unsigned32"/> + </avp> </base> diff --git a/epan/dissectors/packet-diameter-defs.h b/epan/dissectors/packet-diameter-defs.h index c1a0e2e0a3..0a9d88a76b 100644 --- a/epan/dissectors/packet-diameter-defs.h +++ b/epan/dissectors/packet-diameter-defs.h @@ -552,7 +552,8 @@ static const value_string diameter_application_id_vals[] = { {2, "Diameter Mobile IPv4 Application"}, {3, "Diameter Base Accounting"}, {4, "Diameter Credit-Control Application"}, /* draft-ietf-aaa-diameter-cc-06 */ - {5, "Diameter EAP"}, /* [RFC-ietf-aaa-eap-10.txt] */ + {5, "Diameter EAP"}, /* [RFC-ietf-aaa-eap-10.txt] */ + {6, "Diameter Session Initiation Protocol (SIP) Application"}, /* [RFC-ietf-aaa-diameter-sip-app-12.txt] */ {16777216, "3GPP Cx"}, /* 3GPP TS 29.228 and 29.229 */ {16777217, "3GPP Sh"}, /* 3GPP TS 29.328 and 29.329 */ {16777218, "3GPP Re/Rf"}, /* 3GPP TS 32.225 */ @@ -561,6 +562,17 @@ static const value_string diameter_application_id_vals[] = { {16777221, "3GPP Zh"}, /* 3GPP TS 29.109 */ {16777222, "3GPP Gq"}, /* 3GPP TS 29.209 */ {16777223, "3GPP Gmb"}, /* 3GPP TS 29.061 */ + {16777224, "3GPP Gx"}, /* 3GPP TS 29.210 */ + {16777225, "3GPP Gx over Gy"}, /* 3GPP TS 29.210 */ + {16777226, "3GPP MM10 "}, /* 3GPP TS 29.140 */ + {16777227, "Ericsson MSI"}, /* Blanco */ + {16777228, "Ericsson Zx"}, /* Blanco */ + {16777229, "3GPP Rx"}, /* 3GPP TS 29.211 */ + {16777230, "3GPP Pr"}, /* 3GPP TS 29.234 */ + {16777231, "ETSI e4"}, /* ETSI ES 283 034 */ + {16777232, "Ericsson Charging-CIP"}, /* Almen */ + {16777233, "Ericsson Mm"}, /* Blanco */ + {16777234, "Vodafone Gx+"}, /* Oertel */ {4294967295U, "Relay Application"}, {0, NULL} @@ -568,7 +580,6 @@ static const value_string diameter_application_id_vals[] = { /* Diameter Session Initiation Protocol (SIP) Application value strings */ -/* Remove comment when IANA assigned values are avalable static const value_string SIP_reason_code_vals[] = { {0, "PERMANENT_TERMINATION"}, @@ -579,8 +590,6 @@ static const value_string SIP_reason_code_vals[] = { }; -Remove comment when IANA assigned values are avalable */ - /* Used both in Diameter Session Initiation Protocol (SIP) Application and 3GPP Vendor * Specific AVP:s TS 29 299 5.7.0 */ static const value_string SIP_server_assignment_type_vals[] ={ @@ -681,16 +690,14 @@ static const value_string diameter_result_code_vals[] = { */ {2001, "DIAMETER_SUCCESS"}, {2002, "DIAMETER_LIMITED_SUCCESS"}, - /* draft-ietf-aaa-diameter-sip-app-01.txt numbers not yet allocated by IANA - {2xx1, "DIAMETER_FIRST_REGISTRATION"}, - {2xx2, "DIAMETER_SUBSEQUENT_REGISTRATION "}, - {2xx3, "DIAMETER_UNREGISTERED_SERVICE "}, - {2xx4, "DIAMETER_SUCCESS_SERVER_NAME_NOT_STORED "}, - {2xx5, "DIAMETER_SERVER_SELECTION"}, - {2xx6, "DIAMETER_SUCCESS_AUTH_SENT_SERVER_NOT_STORED"}, - {2xx7, "DIAMETER_SUCCESS_SERVER_NOT_STORED"}, + /* RFC-ietf-aaa-diameter-sip-app-12.txt */ + {2003, "DIAMETER_FIRST_REGISTRATION"}, + {2004, "DIAMETER_SUBSEQUENT_REGISTRATION "}, + {2005, "DIAMETER_UNREGISTERED_SERVICE "}, + {2006, "DIAMETER_SUCCESS_SERVER_NAME_NOT_STORED "}, + {2007, "DIAMETER_SERVER_SELECTION"}, + {2008, "DIAMETER_SUCCESS_AUTH_SENT_SERVER_NOT_STORED"}, - */ /* Protocol errors */ {3001, "DIAMETER_COMMAND_UNSUPPORTED"}, @@ -716,10 +723,8 @@ static const value_string diameter_result_code_vals[] = { {4010, "DIAMETER_END_USER_SERVICE_DENIED"}, {4011, "DIAMETER_CREDIT_CONTROL_NOT_APPLICABLE"}, {4012, "DIAMETER_CREDIT_LIMIT_REACHED"}, - /* draft-ietf-aaa-diameter-sip-app-01.txt numbers not yet allocated by IANA - - {4xx1, "DIAMETER_USER_NAME_REQUIRED"}, - */ + /* draft-ietf-aaa-diameter-sip-app-12.txt */ + {4013, "DIAMETER_USER_NAME_REQUIRED"}, /* Permanent Failures */ {5001, "DIAMETER_AVP_UNSUPPORTED"}, {5002, "DIAMETER_UNKNOWN_SESSION_ID"}, @@ -745,18 +750,17 @@ static const value_string diameter_result_code_vals[] = { {5030, "DIAMETER_USER_UNKNOWN"}, {5031, "DIAMETER_RATING_FAILED"}, - /* draft-ietf-aaa-diameter-sip-app-01.txt numbers not yet allocated by IANA - - {5xx1, "DIAMETER_ERROR_USER_UNKNOWN"}, - {5xx2, "DIAMETER_ERROR_IDENTITIES_DONT_MATCH"}, - {5xx3, "DIAMETER_ERROR_IDENTITY_NOT_REGISTERED"}, - {5xx4, "DIAMETER_ERROR_ROAMING_NOT_ALLOWED"}, - {5xx5, "DIAMETER_ERROR_IDENTITY_ALREADY_REGISTERED"}, - {5xx6, "DIAMETER_ERROR_USER_UNKNOWN"}, - {5xx7, "DIAMETER_ERROR_IN_ASSIGNMENT_TYPE"}, - {5xx8, "DIAMETER_ERROR_TOO_MUCH_DATA"}, - {5xx9, "DIAMETER_ERROR_NOT_SUPPORTED_USER_DATA"}, - */ + /* draft-ietf-aaa-diameter-sip-app-12.txt */ + + {5032, "DIAMETER_ERROR_USER_UNKNOWN"}, + {5033, "DIAMETER_ERROR_IDENTITIES_DONT_MATCH"}, + {5034, "DIAMETER_ERROR_IDENTITY_NOT_REGISTERED"}, + {5035, "DIAMETER_ERROR_ROAMING_NOT_ALLOWED"}, + {5036, "DIAMETER_ERROR_IDENTITY_ALREADY_REGISTERED"}, + {5037, "DIAMETER_ERROR_AUTH_SCHEME_NOT_SUPPORTED"}, + {5038, "DIAMETER_ERROR_IN_ASSIGNMENT_TYPE"}, + {5039, "DIAMETER_ERROR_TOO_MUCH_DATA"}, + {5040, "DIAMETER_ERROR_NOT_SUPPORTED_USER_DATA"}, {0, NULL} }; /* TS 29.229 6.4.0 */ @@ -1029,10 +1033,10 @@ static struct old_avp_info old_diameter_avps[] = { { 487, "Accounting-Sub-Session-Id", DIAMETER_ENUMERATED, (value_string *)NULL}, -/* draft-ietf-aaa-diameter-sip-app-01.txt AVP codes to be allocated - { xx01, "SIP-Visited-Network-Id", DIAMETER_UTF8STRING, (value_string *)NULL}, +/* draft-ietf-aaa-diameter-sip-app-12.txt + { 386, "SIP-Visited-Network-Id", DIAMETER_UTF8STRING, (value_string *)NULL}, { xx02, "SIP-AOR", DIAMETER_UTF8STRING, (value_string *)NULL}, - { xx03, "SIP-Server-URI", DIAMETER_UTF8STRING, (value_string *)NULL}, + { 371, "SIP-Server-URI", DIAMETER_UTF8STRING, (value_string *)NULL}, { xx04, "SIP-Server-Capabilities", DIAMETER_GROUPED, (value_string *)NULL}, { xx05, "SIP-Mandatory-Capability", DIAMETER_UNSIGNED32, (value_string *)NULL}, { xx06, "SIP-Optional-Capability", DIAMETER_UNSIGNED32, (value_string *)NULL}, @@ -1049,7 +1053,7 @@ static struct old_avp_info old_diameter_avps[] = { { xx17, "SIP-Integrity-Key", DIAMETER_OCTET_STRING, (value_string *)NULL}, { xx18, "SIP-Server-Assignment-Type", DIAMETER_ENUMERATED, SIP_server_assignment_type_vals}, { xx19, "SIP-Deregistration-Reason", DIAMETER_GROUPED, (value_string *)NULL}, - { xx20, "SIP-Reason-Code", DIAMETER_ENUMERATED, SIP_reason_code_vals}, + { 384, "SIP-Reason-Code", DIAMETER_ENUMERATED, SIP_reason_code_vals}, { xx21, "SIP-Reason-Info", DIAMETER_UTF8STRING, (value_string *)NULL}, { xx22, "SIP-Accouting-Information", DIAMETER_GROUPED, (value_string *)NULL}, { xx23, "SIP-Accounting-Server-URI", DIAMETER_UTF8STRING, (value_string *)NULL}, @@ -1146,16 +1150,26 @@ static const value_string diameter_command_code_vals[] = { /* Base Protocol */ {257, "Capabilities-Exchange"}, {258, "Re-Auth"}, - {260, "AA-Mobile-Node"}, /* [RFC-ietf-aaa-diameter-mobileip-20.txt] */ - {262, "Home-Agent-MIP"}, /* [RFC-ietf-aaa-diameter-mobileip-20.txt] */ - {265, "AAR / AAA"}, /* [RFC-ietf-aaa-diameter-nasreq-17.txt] */ - {265, "DER / DEA"}, /* [RFC-ietf-aaa-eap-10.txt] */ - {271, "Accounting"}, - {272, "Credit-Control"}, /* [RFC-ietf-aaa-diameter-cc-06.txt] */ - {274, "Abort-Session"}, + {260, "AA-Mobile-Node"}, /* RFC4004 */ + {262, "Home-Agent-MIP"}, /* RFC4004 */ + {265, "AAR / AAA"}, /* RFC4005 */ + {268, "DER / DEA"}, /* RFC4072 */ + {271, "Accounting"}, /* RFC4005 */ + {272, "Credit-Control"}, /* RFC4006 */ + /* 273 Unallocated (IETF Consensus) */ + {274, "Abort-Session"}, /* RFC3588 */ {275, "Session-Termination"}, + /* 276-279 Unallocated (IETF Consensus) */ {280, "Device-Watchdog"}, {282, "Disconnect-Peer"}, /* [RFC3588] */ + /* Session Initiation Protocol (SIP) Application */ + {283, "User-Authorization"}, + {284, "Server-Assignment"}, + {285, "Location-Info"}, + {286, "Multimedia-Auth"}, + {287, "Registration-Termination"}, + {288, "Push-Profile"}, + /* 289-299 Unallocated (IETF Consensus) */ /* 300-313 Allocated for 3GPP (TS 29.229 6.40)*/ {300, "User-Authorization"}, {301, "Server-Assignment"}, @@ -1167,14 +1181,6 @@ static const value_string diameter_command_code_vals[] = { {16777214, "Experimental code"}, {16777215, "Experimental code"}, - /* Session Initiation Protocol (SIP) Application, numbers not yet assigned by IANA - {aaa, "User-Authorization"}, - {bbb, "Server-Assignment"}, - {ccc, "Location-Info"}, - {ddd, "Multimedia-Auth"}, - {eee, "Registration-Termination"}, - {fff, "Push-Profile"}, - */ {0, (char *)NULL} }; diff --git a/radius/dictionary.3gpp b/radius/dictionary.3gpp index c0d8f4e5e2..2dbf4d73b0 100644 --- a/radius/dictionary.3gpp +++ b/radius/dictionary.3gpp @@ -14,22 +14,31 @@ BEGIN-VENDOR 3GPP # Maybe we want a UTF-8 'type' in the server... # ATTRIBUTE 3GPP-IMSI 1 string -ATTRIBUTE 3GPP-Charging-ID 2 integer +ATTRIBUTE 3GPP-Charging-ID 2 integer ATTRIBUTE 3GPP-PDP-Type 3 integer -ATTRIBUTE 3GPP-Charging-Gateway-Address 4 ipaddr -ATTRIBUTE 3GPP-GPRS-Negotiated-QoS-profile 5 string -ATTRIBUTE 3GPP-SGSN-Address 6 ipaddr -ATTRIBUTE 3GPP-GGSN-Address 7 ipaddr -ATTRIBUTE 3GPP-IMSI-MCC-MNC 8 string -ATTRIBUTE 3GPP-GGSN-MCC-MNC 9 string +ATTRIBUTE 3GPP-Charging-Gateway-Address 4 ipaddr +ATTRIBUTE 3GPP-GPRS-Negotiated-QoS-profile 5 string +ATTRIBUTE 3GPP-SGSN-Address 6 ipaddr +ATTRIBUTE 3GPP-GGSN-Address 7 ipaddr +ATTRIBUTE 3GPP-IMSI-MCC-MNC 8 string +ATTRIBUTE 3GPP-GGSN-MCC-MNC 9 string ATTRIBUTE 3GPP-NSAPI 10 string -ATTRIBUTE 3GPP-Session-Stop-Indicator 11 octets +ATTRIBUTE 3GPP-Session-Stop-Indicator 11 octets ATTRIBUTE 3GPP-Selection-Mode 12 string -ATTRIBUTE 3GPP-Charging-Characteristics 13 string -ATTRIBUTE 3GPP-Charging-Gateway-IPv6-Address 14 ipv6addr -ATTRIBUTE 3GPP-SGSN-IPv6-Address 15 ipv6addr -ATTRIBUTE 3GPP-GGSN-IPv6-Address 16 ipv6addr - +ATTRIBUTE 3GPP-Charging-Characteristics 13 string +ATTRIBUTE 3GPP-Charging-Gateway-IPv6-Address 14 ipv6addr +ATTRIBUTE 3GPP-SGSN-IPv6-Address 15 ipv6addr +ATTRIBUTE 3GPP-GGSN-IPv6-Address 16 ipv6addr +ATTRIBUTE 3GPP-IPv6-DNS-Servers 17 ipv6addr +ATTRIBUTE 3GPP-SGSN MCC-MNC 18 string +ATTRIBUTE 3GPP-Teardown Indicator 19 octets +ATTRIBUTE 3GGP- IMEISV 20 octets +ATTRIBUTE 3GPP-RAT-Type 21 octets +ATTRIBUTE 3GPP-User-Location-Info 22 octets +ATTRIBUTE 3GPP-MS-TimeZone 23 octets +ATTRIBUTE 3GPP-Camel-Charging-Info 24 octets +ATTRIBUTE 3GPP-Packet-Filter 25 octets +ATTRIBUTE 3GPP-Negotiated-DSCP 26 string # # This attribute is really an array of IPv6 addresses. |