# HG changeset patch # User Luke Mewburn # Date 1585523611 -39600 # Node ID 48a552fbb1aae4a6852b2987e018f3071300bb3d # Parent 0210b996b8fa51b12970c05a0a3c829d66dd3716 Add 3GPP TS 29.338 V15.1.0 (2018-12) Add AVPs from 3GPP TS 29.338: - SM-RP-MTI, Enumerated, code 3308, section 5.3.3.2 - SM-RP-SMEA, OctetString, code 3309, section 5.3.3.3 - SRR-Flags, Unsigned32, code 3310, section 5.3.3.4 - SM-Delivery-Not-Intended, Enumerated, code 3311, section 5.3.3.5 - MWD-Status, Unsigned32, code 3312, section 5.3.3.8 - MME-Absent-User-Diagnostic-SM, Unsigned32, code 3313, section 5.3.3.9 - MSC-Absent-User-Diagnostic-SM, Unsigned32, code 3314, section 5.3.3.10 - SGSN-Absent-User-Diagnostic-SM, Unsigned32, code 3315, section 5.3.3.11 - SM-Delivery-Outcome, Grouped, code 3316, section 5.3.3.14 - MME-SM-Delivery-Outcome, Grouped, code 3317, section 5.3.3.15 - MSC-SM-Delivery-Outcome, Grouped, code 3318, section 5.3.3.16 - SGSN-SM-Delivery-Outcome, Grouped, code 3319, section 5.3.3.17 - IP-SM-GW-SM-Delivery-Outcome, Grouped, code 3320, section 5.3.3.18 - SM-Delivery-Cause, Enumerated, code 3321, section 5.3.3.19 - Absent-User-Diagnostic-SM, Unsigned32, code 3322, section 5.3.3.20 - RDR-Flags, Unsigned32, code 3323, section 5.3.3.21 - Maximum-UE-Availability-Time, Time, code 3329, section 5.3.3.22 - SMS-GMSC-Alert-Event, Unsigned32, code 3333, section 5.3.3.23 diff -r 0210b996b8fa -r 48a552fbb1aa extensions/dict_dcca_3gpp/dict_dcca_3gpp.c --- a/extensions/dict_dcca_3gpp/dict_dcca_3gpp.c Mon Mar 30 09:49:33 2020 +1100 +++ b/extensions/dict_dcca_3gpp/dict_dcca_3gpp.c Mon Mar 30 10:13:31 2020 +1100 @@ -10631,6 +10631,258 @@ }; /*==================================================================*/ + /* 3GPP TS 29.338 V15.1.0 (2018-12) */ + /* From 3GPP 29338-f10.docx */ + /*==================================================================*/ + + /*==================================================================*/ + /* 3GPP TS 29.338 Table 5.3.3.1/1: S6c specific Diameter AVPs */ + /*==================================================================*/ + + /* SM-RP-MTI, Enumerated, code 3308, section 5.3.3.2 */ + { + struct dict_avp_data data = { + 3308, /* Code */ + 10415, /* Vendor */ + "SM-RP-MTI", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_INTEGER32 /* base type of data */ + }; + struct dict_object *type; + struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/SM-RP-MTI)", NULL, NULL, NULL }; + CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); + CHECK_dict_new(DICT_AVP, &data, type, NULL); + }; + + /* SM-RP-SMEA, OctetString, code 3309, section 5.3.3.3 */ + { + struct dict_avp_data data = { + 3309, /* Code */ + 10415, /* Vendor */ + "SM-RP-SMEA", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_OCTETSTRING /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* SRR-Flags, Unsigned32, code 3310, section 5.3.3.4 */ + { + struct dict_avp_data data = { + 3310, /* Code */ + 10415, /* Vendor */ + "SRR-Flags", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* SM-Delivery-Not-Intended, Enumerated, code 3311, section 5.3.3.5 */ + { + struct dict_avp_data data = { + 3311, /* Code */ + 10415, /* Vendor */ + "SM-Delivery-Not-Intended", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_INTEGER32 /* base type of data */ + }; + struct dict_object *type; + struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/SM-Delivery-Not-Intended)", NULL, NULL, NULL }; + CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); + CHECK_dict_new(DICT_AVP, &data, type, NULL); + }; + + /* MWD-Status, Unsigned32, code 3312, section 5.3.3.8 */ + { + struct dict_avp_data data = { + 3312, /* Code */ + 10415, /* Vendor */ + "MWD-Status", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* MME-Absent-User-Diagnostic-SM, Unsigned32, code 3313, section 5.3.3.9 */ + { + struct dict_avp_data data = { + 3313, /* Code */ + 10415, /* Vendor */ + "MME-Absent-User-Diagnostic-SM", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* MSC-Absent-User-Diagnostic-SM, Unsigned32, code 3314, section 5.3.3.10 */ + { + struct dict_avp_data data = { + 3314, /* Code */ + 10415, /* Vendor */ + "MSC-Absent-User-Diagnostic-SM", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* SGSN-Absent-User-Diagnostic-SM, Unsigned32, code 3315, section 5.3.3.11 */ + { + struct dict_avp_data data = { + 3315, /* Code */ + 10415, /* Vendor */ + "SGSN-Absent-User-Diagnostic-SM", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* SM-Delivery-Outcome, Grouped, code 3316, section 5.3.3.14 */ + { + struct dict_avp_data data = { + 3316, /* Code */ + 10415, /* Vendor */ + "SM-Delivery-Outcome", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_GROUPED /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* MME-SM-Delivery-Outcome, Grouped, code 3317, section 5.3.3.15 */ + { + struct dict_avp_data data = { + 3317, /* Code */ + 10415, /* Vendor */ + "MME-SM-Delivery-Outcome", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_GROUPED /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* MSC-SM-Delivery-Outcome, Grouped, code 3318, section 5.3.3.16 */ + { + struct dict_avp_data data = { + 3318, /* Code */ + 10415, /* Vendor */ + "MSC-SM-Delivery-Outcome", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_GROUPED /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* SGSN-SM-Delivery-Outcome, Grouped, code 3319, section 5.3.3.17 */ + { + struct dict_avp_data data = { + 3319, /* Code */ + 10415, /* Vendor */ + "SGSN-SM-Delivery-Outcome", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_GROUPED /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* IP-SM-GW-SM-Delivery-Outcome, Grouped, code 3320, section 5.3.3.18 */ + { + struct dict_avp_data data = { + 3320, /* Code */ + 10415, /* Vendor */ + "IP-SM-GW-SM-Delivery-Outcome", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_GROUPED /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* SM-Delivery-Cause, Enumerated, code 3321, section 5.3.3.19 */ + { + struct dict_avp_data data = { + 3321, /* Code */ + 10415, /* Vendor */ + "SM-Delivery-Cause", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_INTEGER32 /* base type of data */ + }; + struct dict_object *type; + struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/SM-Delivery-Cause)", NULL, NULL, NULL }; + CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); + CHECK_dict_new(DICT_AVP, &data, type, NULL); + }; + + /* Absent-User-Diagnostic-SM, Unsigned32, code 3322, section 5.3.3.20 */ + { + struct dict_avp_data data = { + 3322, /* Code */ + 10415, /* Vendor */ + "Absent-User-Diagnostic-SM", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* RDR-Flags, Unsigned32, code 3323, section 5.3.3.21 */ + { + struct dict_avp_data data = { + 3323, /* Code */ + 10415, /* Vendor */ + "RDR-Flags", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /* Maximum-UE-Availability-Time, Time, code 3329, section 5.3.3.22 */ + { + struct dict_avp_data data = { + 3329, /* Code */ + 10415, /* Vendor */ + "Maximum-UE-Availability-Time", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR, /* Fixed flag values */ + AVP_TYPE_OCTETSTRING /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, Time_type, NULL); + }; + + /* SMS-GMSC-Alert-Event, Unsigned32, code 3333, section 5.3.3.23 */ + { + struct dict_avp_data data = { + 3333, /* Code */ + 10415, /* Vendor */ + "SMS-GMSC-Alert-Event", /* Name */ + AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ + AVP_FLAG_VENDOR, /* Fixed flag values */ + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); + }; + + /*==================================================================*/ /* 3GPP TS 32.299 V15.7.0 (2019-06) */ /* From 3GPP 32299-f70.doc */ /*==================================================================*/ diff -r 0210b996b8fa -r 48a552fbb1aa extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv --- a/extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv Mon Mar 30 09:49:33 2020 +1100 +++ b/extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv Mon Mar 30 10:13:31 2020 +1100 @@ -1043,6 +1043,35 @@ MTC-Provider-Info,3178,8.4.74,Grouped,V,,,M,No MTC-Provider-ID,3179,8.4.75,UTF8String,V,,,M,No ,,,,,,,, +@standard,3GPP TS 29.338,,,,,,, +#=,,,,,,,, +# 3GPP TS 29.338 V15.1.0 (2018-12),,,,,,,, +# From 3GPP 29338-f10.docx,,,,,,,, +#=,,,,,,,, +#,,,,,,,, +#=,,,,,,,, +# 3GPP TS 29.338 Table 5.3.3.1/1: S6c specific Diameter AVPs,,,,,,,, +#=,,,,,,,, +#,,,,,,,, +SM-RP-MTI,3308,5.3.3.2,Enumerated,"M, V",,,,No +SM-RP-SMEA,3309,5.3.3.3 ,OctetString,"M, V",,,,No +SRR-Flags,3310,5.3.3.4,Unsigned32,"M, V",,,,No +SM-Delivery-Not-Intended,3311,5.3.3.5,Enumerated,"M, V",,,,No +MWD-Status,3312,5.3.3.8,Unsigned32,"M, V",,,,No +MME-Absent-User-Diagnostic-SM,3313,5.3.3.9,Unsigned32,"M, V",,,,No +MSC-Absent-User-Diagnostic-SM,3314,5.3.3.10,Unsigned32,"M, V",,,,No +SGSN-Absent-User-Diagnostic-SM,3315,5.3.3.11,Unsigned32,"M, V",,,,No +SM-Delivery-Outcome,3316,5.3.3.14,Grouped,"M, V",,,,No +MME-SM-Delivery-Outcome,3317,5.3.3.15,Grouped,"M, V",,,,No +MSC-SM-Delivery-Outcome,3318,5.3.3.16,Grouped,"M, V",,,,No +SGSN-SM-Delivery-Outcome,3319,5.3.3.17,Grouped,"M, V",,,,No +IP-SM-GW-SM-Delivery-Outcome,3320,5.3.3.18,Grouped,"M, V",,,,No +SM-Delivery-Cause,3321,5.3.3.19,Enumerated,"M, V",,,,No +Absent-User-Diagnostic-SM,3322,5.3.3.20,Unsigned32,"M, V",,,,No +RDR-Flags,3323,5.3.3.21,Unsigned32,V,,,M,No +Maximum-UE-Availability-Time,3329,5.3.3.22,Time,V,,,M,No +SMS-GMSC-Alert-Event,3333,5.3.3.23,Unsigned32,V,,,M,No +,,,,,,,, @standard,3GPP TS 32.299,,,,,,, #=,,,,,,,, # 3GPP TS 32.299 V15.7.0 (2019-06),,,,,,,,