# HG changeset patch # User Luke Mewburn # Date 1585197114 -39600 # Node ID 8232878f292d27357ef2b553e4a5364dbf6a36d9 # Parent c9e9f8a71946cdc4a5206f5f286ae6d3c89f47d5 dict_dcca_3gpp: fix types of OMA AVPs Fix AVP types per OMA-DDS-Charging_Data-V1_0-20110201-A.pdf and 3GPP TS 29.230 V15.7.0 (2019-12): - Application-Service-Type (2102) corrected from UTF8String to Enumerated. - Application?Session?Id (2103) corrected from UTF8String to Unsigned32. diff -r c9e9f8a71946 -r 8232878f292d extensions/dict_dcca_3gpp/dict_dcca_3gpp.c --- a/extensions/dict_dcca_3gpp/dict_dcca_3gpp.c Thu Mar 26 15:26:18 2020 +1100 +++ b/extensions/dict_dcca_3gpp/dict_dcca_3gpp.c Thu Mar 26 15:31:54 2020 +1100 @@ -14604,6 +14604,7 @@ /*==================================================================*/ /* OMA DDS Charging_Data V1.0 20110201-A */ + /* From OMA OMA-DDS-Charging_Data-V1_0-20110201-A.pdf */ /*==================================================================*/ /* Application-Server-Id, UTF8String, code 2101, section 8.4 */ @@ -14619,7 +14620,8 @@ CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL); }; - /* Application-Service-Type, UTF8String, code 2102, section 8.4 */ + /* Note: Application-Service-Type (2102) corrected from UTF8String to Enumerated. */ + /* Application-Service-Type, Enumerated, code 2102, section 8.4 */ { struct dict_avp_data data = { 2102, /* Code */ @@ -14627,12 +14629,16 @@ "Application-Service-Type", /* 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, UTF8String_type, NULL); - }; - - /* Application-Session-Id, UTF8String, code 2103, section 8.4 */ + AVP_TYPE_INTEGER32 /* base type of data */ + }; + struct dict_object *type; + struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Application-Service-Type)", NULL, NULL, NULL }; + CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); + CHECK_dict_new(DICT_AVP, &data, type, NULL); + }; + + /* Note: Application–Session–Id (2103) corrected from UTF8String to Unsigned32. */ + /* Application-Session-Id, Unsigned32, code 2103, section 8.4 */ { struct dict_avp_data data = { 2103, /* Code */ @@ -14640,9 +14646,9 @@ "Application-Session-Id", /* 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, UTF8String_type, NULL); + AVP_TYPE_UNSIGNED32 /* base type of data */ + }; + CHECK_dict_new(DICT_AVP, &data, NULL, NULL); }; /* Content-ID, UTF8String, code 2116, section 8.4 */ diff -r c9e9f8a71946 -r 8232878f292d extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv --- a/extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv Thu Mar 26 15:26:18 2020 +1100 +++ b/extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv Thu Mar 26 15:31:54 2020 +1100 @@ -1270,11 +1270,14 @@ @standard,OMA DDS Charging Data,,,,,,, #=,,,,,,,, # OMA DDS Charging_Data V1.0 20110201-A,,,,,,,, +# From OMA OMA-DDS-Charging_Data-V1_0-20110201-A.pdf,,,,,,,, #=,,,,,,,, #,,,,,,,, Application-Server-Id,2101,8.4,UTF8String,"M,V",,,,Y -Application-Service-Type,2102,8.4,UTF8String,"M,V",,,,Y -Application-Session-Id,2103,8.4,UTF8String,"M,V",,,,Y +# Note: Application-Service-Type (2102) corrected from UTF8String to Enumerated.,,,,,,,, +Application-Service-Type,2102,8.4,Enumerated,"M,V",,,,Y +# Note: Application–Session–Id (2103) corrected from UTF8String to Unsigned32.,,,,,,,, +Application-Session-Id,2103,8.4,Unsigned32,"M,V",,,,Y Content-ID,2116,8.4,UTF8String,"M,V",,,,Y Content-provider-ID,2117,8.4,UTF8String,"M,V",,,,Y DCD-Information,2115,8.5.5,Grouped,"M,V",,,,Y