Mercurial > hg > freeDiameter
comparison extensions/dict_dcca_3gpp/dict_dcca_3gpp.c @ 1482:8232878f292d
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.
author | Luke Mewburn <luke@mewburn.net> |
---|---|
date | Thu, 26 Mar 2020 15:31:54 +1100 |
parents | c9e9f8a71946 |
children | 900d11ff9d17 |
comparison
equal
deleted
inserted
replaced
1481:c9e9f8a71946 | 1482:8232878f292d |
---|---|
14602 CHECK_dict_new(DICT_AVP, &data, Address_type, NULL); | 14602 CHECK_dict_new(DICT_AVP, &data, Address_type, NULL); |
14603 }; | 14603 }; |
14604 | 14604 |
14605 /*==================================================================*/ | 14605 /*==================================================================*/ |
14606 /* OMA DDS Charging_Data V1.0 20110201-A */ | 14606 /* OMA DDS Charging_Data V1.0 20110201-A */ |
14607 /* From OMA OMA-DDS-Charging_Data-V1_0-20110201-A.pdf */ | |
14607 /*==================================================================*/ | 14608 /*==================================================================*/ |
14608 | 14609 |
14609 /* Application-Server-Id, UTF8String, code 2101, section 8.4 */ | 14610 /* Application-Server-Id, UTF8String, code 2101, section 8.4 */ |
14610 { | 14611 { |
14611 struct dict_avp_data data = { | 14612 struct dict_avp_data data = { |
14617 AVP_TYPE_OCTETSTRING /* base type of data */ | 14618 AVP_TYPE_OCTETSTRING /* base type of data */ |
14618 }; | 14619 }; |
14619 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL); | 14620 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL); |
14620 }; | 14621 }; |
14621 | 14622 |
14622 /* Application-Service-Type, UTF8String, code 2102, section 8.4 */ | 14623 /* Note: Application-Service-Type (2102) corrected from UTF8String to Enumerated. */ |
14624 /* Application-Service-Type, Enumerated, code 2102, section 8.4 */ | |
14623 { | 14625 { |
14624 struct dict_avp_data data = { | 14626 struct dict_avp_data data = { |
14625 2102, /* Code */ | 14627 2102, /* Code */ |
14626 10415, /* Vendor */ | 14628 10415, /* Vendor */ |
14627 "Application-Service-Type", /* Name */ | 14629 "Application-Service-Type", /* Name */ |
14628 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | 14630 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ |
14629 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | 14631 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ |
14630 AVP_TYPE_OCTETSTRING /* base type of data */ | 14632 AVP_TYPE_INTEGER32 /* base type of data */ |
14631 }; | 14633 }; |
14632 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL); | 14634 struct dict_object *type; |
14633 }; | 14635 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Application-Service-Type)", NULL, NULL, NULL }; |
14634 | 14636 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); |
14635 /* Application-Session-Id, UTF8String, code 2103, section 8.4 */ | 14637 CHECK_dict_new(DICT_AVP, &data, type, NULL); |
14638 }; | |
14639 | |
14640 /* Note: Application–Session–Id (2103) corrected from UTF8String to Unsigned32. */ | |
14641 /* Application-Session-Id, Unsigned32, code 2103, section 8.4 */ | |
14636 { | 14642 { |
14637 struct dict_avp_data data = { | 14643 struct dict_avp_data data = { |
14638 2103, /* Code */ | 14644 2103, /* Code */ |
14639 10415, /* Vendor */ | 14645 10415, /* Vendor */ |
14640 "Application-Session-Id", /* Name */ | 14646 "Application-Session-Id", /* Name */ |
14641 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | 14647 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ |
14642 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | 14648 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ |
14643 AVP_TYPE_OCTETSTRING /* base type of data */ | 14649 AVP_TYPE_UNSIGNED32 /* base type of data */ |
14644 }; | 14650 }; |
14645 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL); | 14651 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); |
14646 }; | 14652 }; |
14647 | 14653 |
14648 /* Content-ID, UTF8String, code 2116, section 8.4 */ | 14654 /* Content-ID, UTF8String, code 2116, section 8.4 */ |
14649 { | 14655 { |
14650 struct dict_avp_data data = { | 14656 struct dict_avp_data data = { |