Mercurial > hg > freeDiameter
diff extensions/dict_dcca_3gpp/dict_dcca_3gpp.c @ 1484:3bf80555f00a
dict_dcca_3gpp: change External-Identifier code
3GPP TS 29.061 table 9a does not define
External-Identifier (28) for Diameter.
3GPP TS 29.061 table 9b refers to 3GPP TS 29.336
for External-Identifier (3111).
External-Identifier (28) OctetString replaced by
External-Identifier (3111) UTF8String,
from 3GPP TS 29.336 Table 6.4.1/1 and clause 6.4.11.
author | Luke Mewburn <luke@mewburn.net> |
---|---|
date | Fri, 27 Mar 2020 09:55:33 +1100 |
parents | 900d11ff9d17 |
children | a0ca9ac32a3a |
line wrap: on
line diff
--- a/extensions/dict_dcca_3gpp/dict_dcca_3gpp.c Thu Mar 26 15:52:18 2020 +1100 +++ b/extensions/dict_dcca_3gpp/dict_dcca_3gpp.c Fri Mar 27 09:55:33 2020 +1100 @@ -72,10 +72,9 @@ * 1. It would be good if 29.061 was reviewed to check for each AVP if * it is Mandatory or not. The data currently in the document does not * match what was in the previous version of the freeDiameter - * extension (the one that existedbefore I rewrote it) or what I saw + * extension (the one that existed before I rewrote it) or what I saw * so far. IIRC, even the table and the document contradict each - * other. The AVP table is also missing an entry for - * "External-Identifier", 28. + * other. * * 2. 29.140 has conflicting AVP names with other documents: * - Sequence-Number is also in 32.329 @@ -737,19 +736,13 @@ CHECK_dict_new(DICT_AVP, &data, NULL, NULL); }; - /* added manually, missing in AVP table */ - /* External-Identifier, OctetString, code 28, section 16.4.7 */ - { - struct dict_avp_data data = { - 28, /* Code */ - 10415, /* Vendor */ - "External-Identifier", /* 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, NULL, NULL); - }; + /* Note: 3GPP TS 29.061 table 9a does not define */ + /* External-Identifier (28) for Diameter. */ + /* 3GPP TS 29.061 table 9b refers to 3GPP TS 29.336 */ + /* for External-Identifier (3111). */ + /* */ + /* External-Identifier (28) OctetString replaced by */ + /* External-Identifier (3111) UTF8String. */ /* TMGI, OctetString, code 900, section 17.07.02 */ { @@ -8771,6 +8764,30 @@ }; /*==================================================================*/ + /* 3GPP TS 29.336 V15.7.0 (2019-09) */ + /* From 3GPP 29336-f70.docx */ + /*==================================================================*/ + + /*==================================================================*/ + /* 3GPP TS 29.336 Table 6.4.1/1: S6m/S6n specific Diameter AVPs */ + /* */ + /* Note: This is incomplete. */ + /*==================================================================*/ + + /* External-Identifier, UTF8String, code 3111, section 6.4.11 */ + { + struct dict_avp_data data = { + 3111, /* Code */ + 10415, /* Vendor */ + "External-Identifier", /* 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); + }; + + /*==================================================================*/ /* 3GPP TS 32.299 V15.7.0 (2019-06) */ /* From 3GPP 32299-f70.doc */ /*==================================================================*/