Navigation


Changeset 1477:81d8d83a38a0 in freeDiameter


Ignore:
Timestamp:
Mar 25, 2020, 2:55:36 PM (4 years ago)
Author:
Luke Mewburn <luke@mewburn.net>
Branch:
default
Phase:
public
committer:
Luke Mewburn <luke@mewburn.net> 1585178392 -39600
Message:

Update to 3GPP TS 29.229 V15.2.0 (2019-09)

Add Initial-CSeq-Sequence-Number, Unsigned32, code 654, section 6.3.62
Add SAR-Flags, Unsigned32, code 655, section 6.3.63
Add Allowed-WAF-WWSF-Identities, Grouped, code 656, section 6.3.64
Add WebRTC-Authentication-Function-Name, UTF8String, code 657, section 6.3.65
Add WebRTC-Web-Server-Function-Name, UTF8String, code 658, section 6.3.66
Add RTR-Flags, Unsigned32, code 659, section 6.3.69

Add User-Data-Request-Type,627,6.3.25,Enumerated,"M, V"No
Removed in 3GPP TS 29.229 V6.5.0 (2005-06).

Add Wildcarded-IMPU,636,6.3.43,UTF8String,V,M,N
Present in section 6.3.43 but missing in table 6.3.1.
(Now commented out in 29.329 definitions.)

Order changed to AVP Code per table 6.3.1.

Location:
extensions/dict_dcca_3gpp
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • extensions/dict_dcca_3gpp/dict_dcca_3gpp.c

    r1476 r1477  
    48804880
    48814881        /*==================================================================*/
    4882         /* 3GPP 29.229-b20 (11.2.0 2012.12.21)                              */
     4882        /* 3GPP TS 29.229 V15.2.0 (2019-09)                                 */
     4883        /* From 3GPP 29229-f20.doc                                          */
    48834884        /*==================================================================*/
    48844885
    4885         /* Associated-Identities, Grouped, code 632, section 6.3.33         */
    4886         {
    4887                 struct dict_avp_data data = {
    4888                         632,    /* Code */
    4889                         10415,  /* Vendor */
    4890                         "Associated-Identities",        /* Name */
    4891                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4892                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    4893                         AVP_TYPE_GROUPED        /* base type of data */
    4894                 };
    4895                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    4896         };
    4897 
    4898         /* Associated-Registered-Identities, Grouped, code 647, section 6.3.50 */
    4899         {
    4900                 struct dict_avp_data data = {
    4901                         647,    /* Code */
    4902                         10415,  /* Vendor */
    4903                         "Associated-Registered-Identities",     /* Name */
    4904                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4905                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    4906                         AVP_TYPE_GROUPED        /* base type of data */
    4907                 };
    4908                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    4909         };
    4910 
    4911         /* Call-ID-SIP-Header, OctetString, code 643, section 6.3.49.1      */
    4912         {
    4913                 struct dict_avp_data data = {
    4914                         643,    /* Code */
    4915                         10415,  /* Vendor */
    4916                         "Call-ID-SIP-Header",   /* Name */
    4917                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4918                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    4919                         AVP_TYPE_OCTETSTRING    /* base type of data */
    4920                 };
    4921                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4886        /*==================================================================*/
     4887        /* 3GPP TS 29.229 Table 6.3.1: Diameter Multimedia Application AVPs */
     4888        /*==================================================================*/
     4889
     4890        /* Visited-Network-Identifier, OctetString, code 600, section 6.3.1 */
     4891        {
     4892                struct dict_avp_data data = {
     4893                        600,    /* Code */
     4894                        10415,  /* Vendor */
     4895                        "Visited-Network-Identifier",   /* Name */
     4896                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4897                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4898                        AVP_TYPE_OCTETSTRING    /* base type of data */
     4899                };
     4900                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4901        };
     4902
     4903        /* Public-Identity, UTF8String, code 601, section 6.3.2             */
     4904        {
     4905                struct dict_avp_data data = {
     4906                        601,    /* Code */
     4907                        10415,  /* Vendor */
     4908                        "Public-Identity",      /* Name */
     4909                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4910                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4911                        AVP_TYPE_OCTETSTRING    /* base type of data */
     4912                };
     4913                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     4914        };
     4915
     4916        /* Server-Name, UTF8String, code 602, section 6.3.3                 */
     4917        {
     4918                struct dict_avp_data data = {
     4919                        602,    /* Code */
     4920                        10415,  /* Vendor */
     4921                        "Server-Name",  /* Name */
     4922                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4923                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4924                        AVP_TYPE_OCTETSTRING    /* base type of data */
     4925                };
     4926                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     4927        };
     4928
     4929        /* Server-Capabilities, Grouped, code 603, section 6.3.4            */
     4930        {
     4931                struct dict_avp_data data = {
     4932                        603,    /* Code */
     4933                        10415,  /* Vendor */
     4934                        "Server-Capabilities",  /* Name */
     4935                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4936                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4937                        AVP_TYPE_GROUPED        /* base type of data */
     4938                };
     4939                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4940        };
     4941
     4942        /* Mandatory-Capability, Unsigned32, code 604, section 6.3.5        */
     4943        {
     4944                struct dict_avp_data data = {
     4945                        604,    /* Code */
     4946                        10415,  /* Vendor */
     4947                        "Mandatory-Capability", /* Name */
     4948                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4949                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4950                        AVP_TYPE_UNSIGNED32     /* base type of data */
     4951                };
     4952                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4953        };
     4954
     4955        /* Optional-Capability, Unsigned32, code 605, section 6.3.6         */
     4956        {
     4957                struct dict_avp_data data = {
     4958                        605,    /* Code */
     4959                        10415,  /* Vendor */
     4960                        "Optional-Capability",  /* Name */
     4961                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4962                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4963                        AVP_TYPE_UNSIGNED32     /* base type of data */
     4964                };
     4965                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4966        };
     4967
     4968        /* User-Data, OctetString, code 606, section 6.3.7                  */
     4969        {
     4970                struct dict_avp_data data = {
     4971                        606,    /* Code */
     4972                        10415,  /* Vendor */
     4973                        "User-Data",    /* Name */
     4974                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4975                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4976                        AVP_TYPE_OCTETSTRING    /* base type of data */
     4977                };
     4978                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4979        };
     4980
     4981        /* SIP-Number-Auth-Items, Unsigned32, code 607, section 6.3.8       */
     4982        {
     4983                struct dict_avp_data data = {
     4984                        607,    /* Code */
     4985                        10415,  /* Vendor */
     4986                        "SIP-Number-Auth-Items",        /* Name */
     4987                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     4988                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     4989                        AVP_TYPE_UNSIGNED32     /* base type of data */
     4990                };
     4991                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     4992        };
     4993
     4994        /* SIP-Authentication-Scheme, UTF8String, code 608, section 6.3.9   */
     4995        {
     4996                struct dict_avp_data data = {
     4997                        608,    /* Code */
     4998                        10415,  /* Vendor */
     4999                        "SIP-Authentication-Scheme",    /* Name */
     5000                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5001                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5002                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5003                };
     5004                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     5005        };
     5006
     5007        /* SIP-Authenticate, OctetString, code 609, section 6.3.10          */
     5008        {
     5009                struct dict_avp_data data = {
     5010                        609,    /* Code */
     5011                        10415,  /* Vendor */
     5012                        "SIP-Authenticate",     /* Name */
     5013                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5014                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5015                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5016                };
     5017                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5018        };
     5019
     5020        /* SIP-Authorization, OctetString, code 610, section 6.3.11         */
     5021        {
     5022                struct dict_avp_data data = {
     5023                        610,    /* Code */
     5024                        10415,  /* Vendor */
     5025                        "SIP-Authorization",    /* Name */
     5026                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5027                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5028                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5029                };
     5030                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5031        };
     5032
     5033        /* SIP-Authentication-Context, OctetString, code 611, section 6.3.12 */
     5034        {
     5035                struct dict_avp_data data = {
     5036                        611,    /* Code */
     5037                        10415,  /* Vendor */
     5038                        "SIP-Authentication-Context",   /* Name */
     5039                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5040                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5041                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5042                };
     5043                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5044        };
     5045
     5046        /* SIP-Auth-Data-Item, Grouped, code 612, section 6.3.13            */
     5047        {
     5048                struct dict_avp_data data = {
     5049                        612,    /* Code */
     5050                        10415,  /* Vendor */
     5051                        "SIP-Auth-Data-Item",   /* Name */
     5052                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5053                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5054                        AVP_TYPE_GROUPED        /* base type of data */
     5055                };
     5056                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5057        };
     5058
     5059        /* SIP-Item-Number, Unsigned32, code 613, section 6.3.14            */
     5060        {
     5061                struct dict_avp_data data = {
     5062                        613,    /* Code */
     5063                        10415,  /* Vendor */
     5064                        "SIP-Item-Number",      /* Name */
     5065                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5066                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5067                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5068                };
     5069                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5070        };
     5071
     5072        /* Server-Assignment-Type, Enumerated, code 614, section 6.3.15     */
     5073        {
     5074                struct dict_avp_data data = {
     5075                        614,    /* Code */
     5076                        10415,  /* Vendor */
     5077                        "Server-Assignment-Type",       /* Name */
     5078                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5079                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5080                        AVP_TYPE_INTEGER32      /* base type of data */
     5081                };
     5082                struct dict_object      *type;
     5083                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Server-Assignment-Type)", NULL, NULL, NULL };
     5084                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5085                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5086        };
     5087
     5088        /* Deregistration-Reason, Grouped, code 615, section 6.3.16         */
     5089        {
     5090                struct dict_avp_data data = {
     5091                        615,    /* Code */
     5092                        10415,  /* Vendor */
     5093                        "Deregistration-Reason",        /* Name */
     5094                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5095                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5096                        AVP_TYPE_GROUPED        /* base type of data */
     5097                };
     5098                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5099        };
     5100
     5101        /* Reason-Code, Enumerated, code 616, section 6.3.17                */
     5102        {
     5103                struct dict_avp_data data = {
     5104                        616,    /* Code */
     5105                        10415,  /* Vendor */
     5106                        "Reason-Code",  /* Name */
     5107                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5108                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5109                        AVP_TYPE_INTEGER32      /* base type of data */
     5110                };
     5111                struct dict_object      *type;
     5112                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Reason-Code)", NULL, NULL, NULL };
     5113                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5114                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5115        };
     5116
     5117        /* Reason-Info, UTF8String, code 617, section 6.3.18                */
     5118        {
     5119                struct dict_avp_data data = {
     5120                        617,    /* Code */
     5121                        10415,  /* Vendor */
     5122                        "Reason-Info",  /* Name */
     5123                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5124                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5125                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5126                };
     5127                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
    49225128        };
    49235129
     
    49355141        };
    49365142
     5143        /* Primary-Event-Charging-Function-Name, DiameterURI, code 619, section 6.3.20 */
     5144        {
     5145                struct dict_avp_data data = {
     5146                        619,    /* Code */
     5147                        10415,  /* Vendor */
     5148                        "Primary-Event-Charging-Function-Name", /* Name */
     5149                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5150                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5151                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5152                };
     5153                CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
     5154        };
     5155
     5156        /* Secondary-Event-Charging-Function-Name, DiameterURI, code 620, section 6.3.21 */
     5157        {
     5158                struct dict_avp_data data = {
     5159                        620,    /* Code */
     5160                        10415,  /* Vendor */
     5161                        "Secondary-Event-Charging-Function-Name",       /* Name */
     5162                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5163                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5164                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5165                };
     5166                CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
     5167        };
     5168
     5169        /* Primary-Charging-Collection-Function-Name, DiameterURI, code 621, section 6.3.22 */
     5170        {
     5171                struct dict_avp_data data = {
     5172                        621,    /* Code */
     5173                        10415,  /* Vendor */
     5174                        "Primary-Charging-Collection-Function-Name",    /* Name */
     5175                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5176                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5177                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5178                };
     5179                CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
     5180        };
     5181
     5182        /* Secondary-Charging-Collection-Function-Name, DiameterURI, code 622, section 6.3.23 */
     5183        {
     5184                struct dict_avp_data data = {
     5185                        622,    /* Code */
     5186                        10415,  /* Vendor */
     5187                        "Secondary-Charging-Collection-Function-Name",  /* Name */
     5188                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5189                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5190                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5191                };
     5192                CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
     5193        };
     5194
     5195        /* User-Authorization-Type, Enumerated, code 623, section 6.3.24    */
     5196        {
     5197                struct dict_avp_data data = {
     5198                        623,    /* Code */
     5199                        10415,  /* Vendor */
     5200                        "User-Authorization-Type",      /* Name */
     5201                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5202                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5203                        AVP_TYPE_INTEGER32      /* base type of data */
     5204                };
     5205                struct dict_object      *type;
     5206                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/User-Authorization-Type)", NULL, NULL, NULL };
     5207                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5208                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5209        };
     5210
     5211        /* User-Data-Already-Available, Enumerated, code 624, section 6.3.26 */
     5212        {
     5213                struct dict_avp_data data = {
     5214                        624,    /* Code */
     5215                        10415,  /* Vendor */
     5216                        "User-Data-Already-Available",  /* Name */
     5217                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5218                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5219                        AVP_TYPE_INTEGER32      /* base type of data */
     5220                };
     5221                struct dict_object      *type;
     5222                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/User-Data-Already-Available)", NULL, NULL, NULL };
     5223                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5224                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5225        };
     5226
    49375227        /* Confidentiality-Key, OctetString, code 625, section 6.3.27       */
    49385228        {
     
    49485238        };
    49495239
    4950         /* Contact, OctetString, code 641, section 6.3.48                   */
    4951         {
    4952                 struct dict_avp_data data = {
    4953                         641,    /* Code */
    4954                         10415,  /* Vendor */
    4955                         "Contact",      /* Name */
    4956                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4957                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    4958                         AVP_TYPE_OCTETSTRING    /* base type of data */
    4959                 };
    4960                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    4961         };
    4962 
    4963         /* Deregistration-Reason, Grouped, code 615, section 6.3.16         */
    4964         {
    4965                 struct dict_avp_data data = {
    4966                         615,    /* Code */
    4967                         10415,  /* Vendor */
    4968                         "Deregistration-Reason",        /* Name */
    4969                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4970                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    4971                         AVP_TYPE_GROUPED        /* base type of data */
    4972                 };
    4973                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    4974         };
    4975 
    4976         /* Feature-List, Unsigned32, code 630, section 6.3.31               */
    4977         {
    4978                 struct dict_avp_data data = {
    4979                         630,    /* Code */
    4980                         10415,  /* Vendor */
    4981                         "Feature-List", /* Name */
    4982                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4983                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    4984                         AVP_TYPE_UNSIGNED32     /* base type of data */
    4985                 };
    4986                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    4987         };
    4988 
    4989         /* Feature-List-ID, Unsigned32, code 629, section 6.3.30            */
    4990         {
    4991                 struct dict_avp_data data = {
    4992                         629,    /* Code */
    4993                         10415,  /* Vendor */
    4994                         "Feature-List-ID",      /* Name */
    4995                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    4996                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    4997                         AVP_TYPE_UNSIGNED32     /* base type of data */
    4998                 };
    4999                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5000         };
    5001 
    5002         /* From-SIP-Header, OctetString, code 644, section 6.3.49.2         */
    5003         {
    5004                 struct dict_avp_data data = {
    5005                         644,    /* Code */
    5006                         10415,  /* Vendor */
    5007                         "From-SIP-Header",      /* Name */
    5008                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5009                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5010                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5011                 };
    5012                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5013         };
    5014 
    5015         /* Identity-with-Emergency-Registration, Grouped, code 651, section 6.3.57 */
    5016         {
    5017                 struct dict_avp_data data = {
    5018                         651,    /* Code */
    5019                         10415,  /* Vendor */
    5020                         "Identity-with-Emergency-Registration", /* Name */
    5021                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5022                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5023                         AVP_TYPE_GROUPED        /* base type of data */
    5024                 };
    5025                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5026         };
    5027 
    50285240        /* Integrity-Key, OctetString, code 626, section 6.3.28             */
    50295241        {
     
    50395251        };
    50405252
    5041         /* LIA-Flags, Unsigned32, code 653, section 6.3.59                  */
    5042         {
    5043                 struct dict_avp_data data = {
    5044                         653,    /* Code */
    5045                         10415,  /* Vendor */
    5046                         "LIA-Flags",    /* Name */
    5047                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5048                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5049                         AVP_TYPE_UNSIGNED32     /* base type of data */
    5050                 };
    5051                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5052         };
    5053 
    5054         /* Loose-Route-Indication, Enumerated, code 638, section 6.3.45     */
    5055         {
    5056                 struct dict_avp_data data = {
    5057                         638,    /* Code */
    5058                         10415,  /* Vendor */
    5059                         "Loose-Route-Indication",       /* Name */
    5060                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5061                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5062                         AVP_TYPE_INTEGER32      /* base type of data */
    5063                 };
    5064                 struct dict_object      *type;
    5065                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Loose-Route-Indication)", NULL, NULL, NULL };
    5066                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5067                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5068         };
    5069 
    5070         /* Mandatory-Capability, Unsigned32, code 604, section 6.3.5        */
    5071         {
    5072                 struct dict_avp_data data = {
    5073                         604,    /* Code */
    5074                         10415,  /* Vendor */
    5075                         "Mandatory-Capability", /* Name */
    5076                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5077                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5078                         AVP_TYPE_UNSIGNED32     /* base type of data */
    5079                 };
    5080                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5081         };
    5082 
    5083         /* Multiple-Registration-Indication, Enumerated, code 648, section 6.3.51 */
    5084         {
    5085                 struct dict_avp_data data = {
    5086                         648,    /* Code */
    5087                         10415,  /* Vendor */
    5088                         "Multiple-Registration-Indication",     /* Name */
    5089                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5090                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5091                         AVP_TYPE_INTEGER32      /* base type of data */
    5092                 };
    5093                 struct dict_object      *type;
    5094                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Multiple-Registration-Indication)", NULL, NULL, NULL };
    5095                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5096                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5097         };
    5098 
    5099         /* Optional-Capability, Unsigned32, code 605, section 6.3.6         */
    5100         {
    5101                 struct dict_avp_data data = {
    5102                         605,    /* Code */
    5103                         10415,  /* Vendor */
    5104                         "Optional-Capability",  /* Name */
    5105                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5106                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5107                         AVP_TYPE_UNSIGNED32     /* base type of data */
    5108                 };
    5109                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5110         };
    5111 
    5112         /* Originating-Request, Enumerated, code 633, section 6.3.34        */
    5113         {
    5114                 struct dict_avp_data data = {
    5115                         633,    /* Code */
    5116                         10415,  /* Vendor */
    5117                         "Originating-Request",  /* Name */
    5118                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5119                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5120                         AVP_TYPE_INTEGER32      /* base type of data */
    5121                 };
    5122                 struct dict_object      *type;
    5123                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Originating-Request)", NULL, NULL, NULL };
    5124                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5125                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5126         };
    5127 
    5128         /* Path, OctetString, code 640, section 6.3.47                      */
    5129         {
    5130                 struct dict_avp_data data = {
    5131                         640,    /* Code */
    5132                         10415,  /* Vendor */
    5133                         "Path", /* Name */
    5134                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5135                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5136                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5137                 };
    5138                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5139         };
    5140 
    5141         /* Primary-Charging-Collection-Function-Name, DiameterURI, code 621, section 6.3.22 */
    5142         {
    5143                 struct dict_avp_data data = {
    5144                         621,    /* Code */
    5145                         10415,  /* Vendor */
    5146                         "Primary-Charging-Collection-Function-Name",    /* Name */
    5147                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5148                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5149                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5150                 };
    5151                 CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
    5152         };
    5153 
    5154         /* Primary-Event-Charging-Function-Name, DiameterURI, code 619, section 6.3.20 */
    5155         {
    5156                 struct dict_avp_data data = {
    5157                         619,    /* Code */
    5158                         10415,  /* Vendor */
    5159                         "Primary-Event-Charging-Function-Name", /* Name */
    5160                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5161                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5162                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5163                 };
    5164                 CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
    5165         };
    5166 
    5167         /* Priviledged-Sender-Indication, Enumerated, code 652, section 6.3.58 */
    5168         {
    5169                 struct dict_avp_data data = {
    5170                         652,    /* Code */
    5171                         10415,  /* Vendor */
    5172                         "Priviledged-Sender-Indication",        /* Name */
    5173                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5174                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5175                         AVP_TYPE_INTEGER32      /* base type of data */
    5176                 };
    5177                 struct dict_object      *type;
    5178                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Priviledged-Sender-Indication)", NULL, NULL, NULL };
    5179                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5180                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5181         };
    5182 
    5183         /* Public-Identity, UTF8String, code 601, section 6.3.2             */
    5184         {
    5185                 struct dict_avp_data data = {
    5186                         601,    /* Code */
    5187                         10415,  /* Vendor */
    5188                         "Public-Identity",      /* Name */
    5189                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5190                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5191                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5192                 };
    5193                 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
    5194         };
    5195 
    5196         /* Reason-Code, Enumerated, code 616, section 6.3.17                */
    5197         {
    5198                 struct dict_avp_data data = {
    5199                         616,    /* Code */
    5200                         10415,  /* Vendor */
    5201                         "Reason-Code",  /* Name */
    5202                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5203                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5204                         AVP_TYPE_INTEGER32      /* base type of data */
    5205                 };
    5206                 struct dict_object      *type;
    5207                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Reason-Code)", NULL, NULL, NULL };
    5208                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5209                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5210         };
    5211 
    5212         /* Reason-Info, UTF8String, code 617, section 6.3.18                */
    5213         {
    5214                 struct dict_avp_data data = {
    5215                         617,    /* Code */
    5216                         10415,  /* Vendor */
    5217                         "Reason-Info",  /* Name */
    5218                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5219                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5220                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5221                 };
    5222                 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
    5223         };
    5224 
    5225         /* Record-Route, OctetString, code 646, section 6.3.49.4            */
    5226         {
    5227                 struct dict_avp_data data = {
    5228                         646,    /* Code */
    5229                         10415,  /* Vendor */
    5230                         "Record-Route", /* Name */
    5231                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5232                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5233                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5234                 };
    5235                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5236         };
    5237 
    5238         /* Restoration-Info, Grouped, code 649, section 6.3.52              */
    5239         {
    5240                 struct dict_avp_data data = {
    5241                         649,    /* Code */
    5242                         10415,  /* Vendor */
    5243                         "Restoration-Info",     /* Name */
    5244                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5245                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5246                         AVP_TYPE_GROUPED        /* base type of data */
    5247                 };
    5248                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5249         };
    5250 
    5251         /* SCSCF-Restoration-Info, Grouped, code 639, section 6.3.46        */
    5252         {
    5253                 struct dict_avp_data data = {
    5254                         639,    /* Code */
    5255                         10415,  /* Vendor */
    5256                         "SCSCF-Restoration-Info",       /* Name */
    5257                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5258                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5259                         AVP_TYPE_GROUPED        /* base type of data */
    5260                 };
    5261                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5262         };
    5263 
    5264         /* SIP-Auth-Data-Item, Grouped, code 612, section 6.3.13            */
    5265         {
    5266                 struct dict_avp_data data = {
    5267                         612,    /* Code */
    5268                         10415,  /* Vendor */
    5269                         "SIP-Auth-Data-Item",   /* Name */
    5270                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5271                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5272                         AVP_TYPE_GROUPED        /* base type of data */
    5273                 };
    5274                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5275         };
    5276 
    5277         /* SIP-Authenticate, OctetString, code 609, section 6.3.10          */
    5278         {
    5279                 struct dict_avp_data data = {
    5280                         609,    /* Code */
    5281                         10415,  /* Vendor */
    5282                         "SIP-Authenticate",     /* Name */
    5283                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5284                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5285                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5286                 };
    5287                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5288         };
    5289 
    5290         /* SIP-Authentication-Context, OctetString, code 611, section 6.3.12 */
    5291         {
    5292                 struct dict_avp_data data = {
    5293                         611,    /* Code */
    5294                         10415,  /* Vendor */
    5295                         "SIP-Authentication-Context",   /* Name */
    5296                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5297                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5298                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5299                 };
    5300                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5301         };
    5302 
    5303         /* SIP-Authentication-Scheme, UTF8String, code 608, section 6.3.9   */
    5304         {
    5305                 struct dict_avp_data data = {
    5306                         608,    /* Code */
    5307                         10415,  /* Vendor */
    5308                         "SIP-Authentication-Scheme",    /* Name */
    5309                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5310                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5311                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5312                 };
    5313                 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
    5314         };
    5315 
    5316         /* SIP-Authorization, OctetString, code 610, section 6.3.11         */
    5317         {
    5318                 struct dict_avp_data data = {
    5319                         610,    /* Code */
    5320                         10415,  /* Vendor */
    5321                         "SIP-Authorization",    /* Name */
    5322                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5323                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5324                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5325                 };
    5326                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5327         };
    5328 
    5329         /* SIP-Digest-Authenticate, Grouped, code 635, section 6.3.36       */
    5330         {
    5331                 struct dict_avp_data data = {
    5332                         635,    /* Code */
    5333                         10415,  /* Vendor */
    5334                         "SIP-Digest-Authenticate",      /* Name */
    5335                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5336                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5337                         AVP_TYPE_GROUPED        /* base type of data */
    5338                 };
    5339                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5340         };
    5341 
    5342         /* SIP-Item-Number, Unsigned32, code 613, section 6.3.14            */
    5343         {
    5344                 struct dict_avp_data data = {
    5345                         613,    /* Code */
    5346                         10415,  /* Vendor */
    5347                         "SIP-Item-Number",      /* Name */
    5348                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5349                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5350                         AVP_TYPE_UNSIGNED32     /* base type of data */
    5351                 };
    5352                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5353         };
    5354 
    5355         /* SIP-Number-Auth-Items, Unsigned32, code 607, section 6.3.8       */
    5356         {
    5357                 struct dict_avp_data data = {
    5358                         607,    /* Code */
    5359                         10415,  /* Vendor */
    5360                         "SIP-Number-Auth-Items",        /* Name */
    5361                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5362                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5363                         AVP_TYPE_UNSIGNED32     /* base type of data */
    5364                 };
    5365                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5366         };
    5367 
    5368         /* Secondary-Charging-Collection-Function-Name, DiameterURI, code 622, section 6.3.23 */
    5369         {
    5370                 struct dict_avp_data data = {
    5371                         622,    /* Code */
    5372                         10415,  /* Vendor */
    5373                         "Secondary-Charging-Collection-Function-Name",  /* Name */
    5374                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5375                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5376                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5377                 };
    5378                 CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
    5379         };
    5380 
    5381         /* Secondary-Event-Charging-Function-Name, DiameterURI, code 620, section 6.3.21 */
    5382         {
    5383                 struct dict_avp_data data = {
    5384                         620,    /* Code */
    5385                         10415,  /* Vendor */
    5386                         "Secondary-Event-Charging-Function-Name",       /* Name */
    5387                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5388                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5389                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5390                 };
    5391                 CHECK_dict_new(DICT_AVP, &data, DiameterURI_type, NULL);
    5392         };
    5393 
    5394         /* Server-Assignment-Type, Enumerated, code 614, section 6.3.15     */
    5395         {
    5396                 struct dict_avp_data data = {
    5397                         614,    /* Code */
    5398                         10415,  /* Vendor */
    5399                         "Server-Assignment-Type",       /* Name */
    5400                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5401                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5402                         AVP_TYPE_INTEGER32      /* base type of data */
    5403                 };
    5404                 struct dict_object      *type;
    5405                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Server-Assignment-Type)", NULL, NULL, NULL };
    5406                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5407                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5408         };
    5409 
    5410         /* Server-Capabilities, Grouped, code 603, section 6.3.4            */
    5411         {
    5412                 struct dict_avp_data data = {
    5413                         603,    /* Code */
    5414                         10415,  /* Vendor */
    5415                         "Server-Capabilities",  /* Name */
    5416                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5417                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5418                         AVP_TYPE_GROUPED        /* base type of data */
    5419                 };
    5420                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5421         };
    5422 
    5423         /* Server-Name, UTF8String, code 602, section 6.3.3                 */
    5424         {
    5425                 struct dict_avp_data data = {
    5426                         602,    /* Code */
    5427                         10415,  /* Vendor */
    5428                         "Server-Name",  /* Name */
    5429                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5430                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5431                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5432                 };
    5433                 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
    5434         };
    5435 
    5436         /* Session-Priority, Enumerated, code 650, section 6.3.56           */
    5437         {
    5438                 struct dict_avp_data data = {
    5439                         650,    /* Code */
    5440                         10415,  /* Vendor */
    5441                         "Session-Priority",     /* Name */
    5442                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5443                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5444                         AVP_TYPE_INTEGER32      /* base type of data */
    5445                 };
    5446                 struct dict_object      *type;
    5447                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Session-Priority)", NULL, NULL, NULL };
    5448                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5449                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5450         };
    5451 
    5452         /* Subscription-Info, Grouped, code 642, section 6.3.49             */
    5453         {
    5454                 struct dict_avp_data data = {
    5455                         642,    /* Code */
    5456                         10415,  /* Vendor */
    5457                         "Subscription-Info",    /* Name */
    5458                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5459                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5460                         AVP_TYPE_GROUPED        /* base type of data */
    5461                 };
    5462                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5463         };
    5464 
    5465         /* Supported-Applications, Grouped, code 631, section 6.3.32        */
    5466         {
    5467                 struct dict_avp_data data = {
    5468                         631,    /* Code */
    5469                         10415,  /* Vendor */
    5470                         "Supported-Applications",       /* Name */
    5471                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5472                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5473                         AVP_TYPE_GROUPED        /* base type of data */
    5474                 };
    5475                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5253        /* Note: 3GPP TS 29.229 V6.5.0 (2005-06) removed User-Data-Request-Type. */
     5254        /* User-Data-Request-Type, Enumerated, code 627, section 6.3.25     */
     5255        {
     5256                struct dict_avp_data data = {
     5257                        627,    /* Code */
     5258                        10415,  /* Vendor */
     5259                        "User-Data-Request-Type",       /* Name */
     5260                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5261                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5262                        AVP_TYPE_INTEGER32      /* base type of data */
     5263                };
     5264                struct dict_object      *type;
     5265                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/User-Data-Request-Type)", NULL, NULL, NULL };
     5266                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5267                CHECK_dict_new(DICT_AVP, &data, type, NULL);
    54765268        };
    54775269
     
    54895281        };
    54905282
     5283        /* Feature-List-ID, Unsigned32, code 629, section 6.3.30            */
     5284        {
     5285                struct dict_avp_data data = {
     5286                        629,    /* Code */
     5287                        10415,  /* Vendor */
     5288                        "Feature-List-ID",      /* Name */
     5289                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5290                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5291                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5292                };
     5293                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5294        };
     5295
     5296        /* Feature-List, Unsigned32, code 630, section 6.3.31               */
     5297        {
     5298                struct dict_avp_data data = {
     5299                        630,    /* Code */
     5300                        10415,  /* Vendor */
     5301                        "Feature-List", /* Name */
     5302                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5303                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5304                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5305                };
     5306                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5307        };
     5308
     5309        /* Supported-Applications, Grouped, code 631, section 6.3.32        */
     5310        {
     5311                struct dict_avp_data data = {
     5312                        631,    /* Code */
     5313                        10415,  /* Vendor */
     5314                        "Supported-Applications",       /* Name */
     5315                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5316                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5317                        AVP_TYPE_GROUPED        /* base type of data */
     5318                };
     5319                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5320        };
     5321
     5322        /* Associated-Identities, Grouped, code 632, section 6.3.33         */
     5323        {
     5324                struct dict_avp_data data = {
     5325                        632,    /* Code */
     5326                        10415,  /* Vendor */
     5327                        "Associated-Identities",        /* Name */
     5328                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5329                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5330                        AVP_TYPE_GROUPED        /* base type of data */
     5331                };
     5332                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5333        };
     5334
     5335        /* Originating-Request, Enumerated, code 633, section 6.3.34        */
     5336        {
     5337                struct dict_avp_data data = {
     5338                        633,    /* Code */
     5339                        10415,  /* Vendor */
     5340                        "Originating-Request",  /* Name */
     5341                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5342                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     5343                        AVP_TYPE_INTEGER32      /* base type of data */
     5344                };
     5345                struct dict_object      *type;
     5346                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Originating-Request)", NULL, NULL, NULL };
     5347                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5348                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5349        };
     5350
     5351        /* Wildcarded-Public-Identity, UTF8String, code 634, section 6.3.35 */
     5352        {
     5353                struct dict_avp_data data = {
     5354                        634,    /* Code */
     5355                        10415,  /* Vendor */
     5356                        "Wildcarded-Public-Identity",   /* Name */
     5357                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5358                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5359                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5360                };
     5361                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     5362        };
     5363
     5364        /* SIP-Digest-Authenticate, Grouped, code 635, section 6.3.36       */
     5365        {
     5366                struct dict_avp_data data = {
     5367                        635,    /* Code */
     5368                        10415,  /* Vendor */
     5369                        "SIP-Digest-Authenticate",      /* Name */
     5370                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5371                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5372                        AVP_TYPE_GROUPED        /* base type of data */
     5373                };
     5374                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5375        };
     5376
     5377        /* Wildcarded-IMPU, UTF8String, code 636, section 6.3.43            */
     5378        {
     5379                struct dict_avp_data data = {
     5380                        636,    /* Code */
     5381                        10415,  /* Vendor */
     5382                        "Wildcarded-IMPU",      /* Name */
     5383                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5384                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5385                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5386                };
     5387                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     5388        };
     5389
     5390        /* Note: Uses RFC 4590 Digest-Realm.                                */
     5391        /* Note: Uses RFC 4590 Digest-Algorithm.                            */
     5392        /* Note: Uses RFC 4590 Digest-QoP.                                  */
     5393        /* Note: Uses RFC 4590 Digest-HA1.                                  */
     5394
     5395        /* UAR-Flags, Unsigned32, code 637, section 6.3.44                  */
     5396        {
     5397                struct dict_avp_data data = {
     5398                        637,    /* Code */
     5399                        10415,  /* Vendor */
     5400                        "UAR-Flags",    /* Name */
     5401                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5402                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5403                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5404                };
     5405                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5406        };
     5407
     5408        /* Loose-Route-Indication, Enumerated, code 638, section 6.3.45     */
     5409        {
     5410                struct dict_avp_data data = {
     5411                        638,    /* Code */
     5412                        10415,  /* Vendor */
     5413                        "Loose-Route-Indication",       /* Name */
     5414                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5415                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5416                        AVP_TYPE_INTEGER32      /* base type of data */
     5417                };
     5418                struct dict_object      *type;
     5419                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Loose-Route-Indication)", NULL, NULL, NULL };
     5420                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5421                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5422        };
     5423
     5424        /* SCSCF-Restoration-Info, Grouped, code 639, section 6.3.46        */
     5425        {
     5426                struct dict_avp_data data = {
     5427                        639,    /* Code */
     5428                        10415,  /* Vendor */
     5429                        "SCSCF-Restoration-Info",       /* Name */
     5430                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5431                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5432                        AVP_TYPE_GROUPED        /* base type of data */
     5433                };
     5434                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5435        };
     5436
     5437        /* Path, OctetString, code 640, section 6.3.47                      */
     5438        {
     5439                struct dict_avp_data data = {
     5440                        640,    /* Code */
     5441                        10415,  /* Vendor */
     5442                        "Path", /* Name */
     5443                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5444                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5445                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5446                };
     5447                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5448        };
     5449
     5450        /* Contact, OctetString, code 641, section 6.3.48                   */
     5451        {
     5452                struct dict_avp_data data = {
     5453                        641,    /* Code */
     5454                        10415,  /* Vendor */
     5455                        "Contact",      /* Name */
     5456                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5457                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5458                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5459                };
     5460                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5461        };
     5462
     5463        /* Subscription-Info, Grouped, code 642, section 6.3.49             */
     5464        {
     5465                struct dict_avp_data data = {
     5466                        642,    /* Code */
     5467                        10415,  /* Vendor */
     5468                        "Subscription-Info",    /* Name */
     5469                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5470                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5471                        AVP_TYPE_GROUPED        /* base type of data */
     5472                };
     5473                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5474        };
     5475
     5476        /* Call-ID-SIP-Header, OctetString, code 643, section 6.3.49.1      */
     5477        {
     5478                struct dict_avp_data data = {
     5479                        643,    /* Code */
     5480                        10415,  /* Vendor */
     5481                        "Call-ID-SIP-Header",   /* Name */
     5482                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5483                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5484                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5485                };
     5486                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5487        };
     5488
     5489        /* From-SIP-Header, OctetString, code 644, section 6.3.49.2         */
     5490        {
     5491                struct dict_avp_data data = {
     5492                        644,    /* Code */
     5493                        10415,  /* Vendor */
     5494                        "From-SIP-Header",      /* Name */
     5495                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5496                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5497                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5498                };
     5499                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5500        };
     5501
    54915502        /* To-SIP-Header, OctetString, code 645, section 6.3.49.3           */
    54925503        {
     
    55025513        };
    55035514
    5504         /* UAR-Flags, Unsigned32, code 637, section 6.3.44                  */
    5505         {
    5506                 struct dict_avp_data data = {
    5507                         637,    /* Code */
    5508                         10415,  /* Vendor */
    5509                         "UAR-Flags",    /* Name */
    5510                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5511                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    5512                         AVP_TYPE_UNSIGNED32     /* base type of data */
    5513                 };
    5514                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5515         };
    5516 
    5517         /* User-Authorization-Type, Enumerated, code 623, section 6.3.24    */
    5518         {
    5519                 struct dict_avp_data data = {
    5520                         623,    /* Code */
    5521                         10415,  /* Vendor */
    5522                         "User-Authorization-Type",      /* Name */
    5523                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5524                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5525                         AVP_TYPE_INTEGER32      /* base type of data */
    5526                 };
    5527                 struct dict_object      *type;
    5528                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/User-Authorization-Type)", NULL, NULL, NULL };
    5529                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5530                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5531         };
    5532 
    5533         /* User-Data, OctetString, code 606, section 6.3.7                  */
    5534         {
    5535                 struct dict_avp_data data = {
    5536                         606,    /* Code */
    5537                         10415,  /* Vendor */
    5538                         "User-Data",    /* Name */
    5539                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5540                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5541                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5542                 };
    5543                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5544         };
    5545 
    5546         /* User-Data-Already-Available, Enumerated, code 624, section 6.3.26 */
    5547         {
    5548                 struct dict_avp_data data = {
    5549                         624,    /* Code */
    5550                         10415,  /* Vendor */
    5551                         "User-Data-Already-Available",  /* Name */
    5552                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5553                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5554                         AVP_TYPE_INTEGER32      /* base type of data */
    5555                 };
    5556                 struct dict_object      *type;
    5557                 struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/User-Data-Already-Available)", NULL, NULL, NULL };
    5558                 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
    5559                 CHECK_dict_new(DICT_AVP, &data, type, NULL);
    5560         };
    5561 
    5562         /* Visited-Network-Identifier, OctetString, code 600, section 6.3.1 */
    5563         {
    5564                 struct dict_avp_data data = {
    5565                         600,    /* Code */
    5566                         10415,  /* Vendor */
    5567                         "Visited-Network-Identifier",   /* Name */
    5568                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    5569                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
    5570                         AVP_TYPE_OCTETSTRING    /* base type of data */
    5571                 };
    5572                 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    5573         };
    5574 
    5575         /* Wildcarded-Public-Identity, UTF8String, code 634, section 6.3.35 */
    5576         {
    5577                 struct dict_avp_data data = {
    5578                         634,    /* Code */
    5579                         10415,  /* Vendor */
    5580                         "Wildcarded-Public-Identity",   /* Name */
     5515        /* Record-Route, OctetString, code 646, section 6.3.49.4            */
     5516        {
     5517                struct dict_avp_data data = {
     5518                        646,    /* Code */
     5519                        10415,  /* Vendor */
     5520                        "Record-Route", /* Name */
     5521                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5522                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5523                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5524                };
     5525                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5526        };
     5527
     5528        /* Associated-Registered-Identities, Grouped, code 647, section 6.3.50 */
     5529        {
     5530                struct dict_avp_data data = {
     5531                        647,    /* Code */
     5532                        10415,  /* Vendor */
     5533                        "Associated-Registered-Identities",     /* Name */
     5534                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5535                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5536                        AVP_TYPE_GROUPED        /* base type of data */
     5537                };
     5538                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5539        };
     5540
     5541        /* Multiple-Registration-Indication, Enumerated, code 648, section 6.3.51 */
     5542        {
     5543                struct dict_avp_data data = {
     5544                        648,    /* Code */
     5545                        10415,  /* Vendor */
     5546                        "Multiple-Registration-Indication",     /* Name */
     5547                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5548                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5549                        AVP_TYPE_INTEGER32      /* base type of data */
     5550                };
     5551                struct dict_object      *type;
     5552                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Multiple-Registration-Indication)", NULL, NULL, NULL };
     5553                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5554                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5555        };
     5556
     5557        /* Restoration-Info, Grouped, code 649, section 6.3.52              */
     5558        {
     5559                struct dict_avp_data data = {
     5560                        649,    /* Code */
     5561                        10415,  /* Vendor */
     5562                        "Restoration-Info",     /* Name */
     5563                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5564                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5565                        AVP_TYPE_GROUPED        /* base type of data */
     5566                };
     5567                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5568        };
     5569
     5570        /* Session-Priority, Enumerated, code 650, section 6.3.56           */
     5571        {
     5572                struct dict_avp_data data = {
     5573                        650,    /* Code */
     5574                        10415,  /* Vendor */
     5575                        "Session-Priority",     /* Name */
     5576                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5577                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5578                        AVP_TYPE_INTEGER32      /* base type of data */
     5579                };
     5580                struct dict_object      *type;
     5581                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Session-Priority)", NULL, NULL, NULL };
     5582                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5583                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5584        };
     5585
     5586        /* Identity-with-Emergency-Registration, Grouped, code 651, section 6.3.57 */
     5587        {
     5588                struct dict_avp_data data = {
     5589                        651,    /* Code */
     5590                        10415,  /* Vendor */
     5591                        "Identity-with-Emergency-Registration", /* Name */
     5592                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5593                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5594                        AVP_TYPE_GROUPED        /* base type of data */
     5595                };
     5596                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5597        };
     5598
     5599        /* Priviledged-Sender-Indication, Enumerated, code 652, section 6.3.58 */
     5600        {
     5601                struct dict_avp_data data = {
     5602                        652,    /* Code */
     5603                        10415,  /* Vendor */
     5604                        "Priviledged-Sender-Indication",        /* Name */
     5605                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5606                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5607                        AVP_TYPE_INTEGER32      /* base type of data */
     5608                };
     5609                struct dict_object      *type;
     5610                struct dict_type_data    tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Priviledged-Sender-Indication)", NULL, NULL, NULL };
     5611                CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
     5612                CHECK_dict_new(DICT_AVP, &data, type, NULL);
     5613        };
     5614
     5615        /* LIA-Flags, Unsigned32, code 653, section 6.3.59                  */
     5616        {
     5617                struct dict_avp_data data = {
     5618                        653,    /* Code */
     5619                        10415,  /* Vendor */
     5620                        "LIA-Flags",    /* Name */
     5621                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5622                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5623                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5624                };
     5625                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5626        };
     5627
     5628        /* Note: Uses RFC 7683 OC-Supported-Features.                       */
     5629        /* Note: Uses RFC 7683 OC-OLR.                                      */
     5630
     5631        /* Initial-CSeq-Sequence-Number, Unsigned32, code 654, section 6.3.62 */
     5632        {
     5633                struct dict_avp_data data = {
     5634                        654,    /* Code */
     5635                        10415,  /* Vendor */
     5636                        "Initial-CSeq-Sequence-Number", /* Name */
     5637                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5638                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5639                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5640                };
     5641                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5642        };
     5643
     5644        /* SAR-Flags, Unsigned32, code 655, section 6.3.63                  */
     5645        {
     5646                struct dict_avp_data data = {
     5647                        655,    /* Code */
     5648                        10415,  /* Vendor */
     5649                        "SAR-Flags",    /* Name */
     5650                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5651                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5652                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5653                };
     5654                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5655        };
     5656
     5657        /* Allowed-WAF-WWSF-Identities, Grouped, code 656, section 6.3.64   */
     5658        {
     5659                struct dict_avp_data data = {
     5660                        656,    /* Code */
     5661                        10415,  /* Vendor */
     5662                        "Allowed-WAF-WWSF-Identities",  /* Name */
     5663                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5664                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5665                        AVP_TYPE_GROUPED        /* base type of data */
     5666                };
     5667                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     5668        };
     5669
     5670        /* WebRTC-Authentication-Function-Name, UTF8String, code 657, section 6.3.65 */
     5671        {
     5672                struct dict_avp_data data = {
     5673                        657,    /* Code */
     5674                        10415,  /* Vendor */
     5675                        "WebRTC-Authentication-Function-Name",  /* Name */
    55815676                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    55825677                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     
    55845679                };
    55855680                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     5681        };
     5682
     5683        /* WebRTC-Web-Server-Function-Name, UTF8String, code 658, section 6.3.66 */
     5684        {
     5685                struct dict_avp_data data = {
     5686                        658,    /* Code */
     5687                        10415,  /* Vendor */
     5688                        "WebRTC-Web-Server-Function-Name",      /* Name */
     5689                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5690                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5691                        AVP_TYPE_OCTETSTRING    /* base type of data */
     5692                };
     5693                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     5694        };
     5695
     5696        /* Note: Uses RFC 7944 DRMP.                                        */
     5697        /* Note: Uses RFC 8583 Load.                                        */
     5698
     5699        /* RTR-Flags, Unsigned32, code 659, section 6.3.69                  */
     5700        {
     5701                struct dict_avp_data data = {
     5702                        659,    /* Code */
     5703                        10415,  /* Vendor */
     5704                        "RTR-Flags",    /* Name */
     5705                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     5706                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     5707                        AVP_TYPE_UNSIGNED32     /* base type of data */
     5708                };
     5709                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    55865710        };
    55875711
     
    84858609        /* in 29.229                                                        */
    84868610        /* Wildcarded-Public-Identity                                       */
    8487         /* Wildcarded-IMPU, UTF8String, code 636, section 6.3.20            */
    8488         {
    8489                 struct dict_avp_data data = {
    8490                         636,    /* Code */
    8491                         10415,  /* Vendor */
    8492                         "Wildcarded-IMPU",      /* Name */
    8493                         AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
    8494                         AVP_FLAG_VENDOR,        /* Fixed flag values */
    8495                         AVP_TYPE_OCTETSTRING    /* base type of data */
    8496                 };
    8497                 CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
    8498         };
    8499 
     8611        /* in 29.229                                                        */
     8612        /* Wildcarded-IMPU                                                  */
    85008613        /* in 29.229                                                        */
    85018614        /* Session-Priority                                                 */
  • extensions/dict_dcca_3gpp/dict_dcca_3gpp.csv

    r1476 r1477  
    460460@standard,3GPP TS 29.229,,,,,,,
    461461#=,,,,,,,,
    462 # 3GPP 29.229-b20 (11.2.0 2012.12.21),,,,,,,,
    463 #=,,,,,,,,
    464 #,,,,,,,,
    465 Associated-Identities,632,6.3.33,Grouped,V,,,M,N
    466 Associated-Registered-Identities,647,6.3.50,Grouped,V,,,M,N
    467 Call-ID-SIP-Header,643,6.3.49.1,OctetString,V,,,M,N
    468 Charging-Information,618,6.3.19,Grouped,"M,V",,,,N
    469 Confidentiality-Key,625,6.3.27,OctetString,"M,V",,,,N
    470 Contact,641,6.3.48,OctetString,V,,,M,N
    471 Deregistration-Reason,615,6.3.16,Grouped,"M,V",,,,N
    472 Feature-List,630,6.3.31,Unsigned32,V,,,M,N
    473 Feature-List-ID,629,6.3.30,Unsigned32,V,,,M,N
    474 From-SIP-Header,644,6.3.49.2,OctetString,V,,,M,N
    475 Identity-with-Emergency-Registration,651,6.3.57,Grouped,V,,,M,N
    476 Integrity-Key,626,6.3.28,OctetString,"M,V",,,,N
    477 LIA-Flags,653,6.3.59,Unsigned32,V,,,M,N
    478 Loose-Route-Indication,638,6.3.45,Enumerated,V,,,M,N
    479 Mandatory-Capability,604,6.3.5,Unsigned32,"M,V",,,,N
    480 Multiple-Registration-Indication,648,6.3.51,Enumerated,V,,,M,N
    481 Optional-Capability,605,6.3.6,Unsigned32,"M,V",,,,N
    482 Originating-Request,633,6.3.34,Enumerated,"M,V",,,,N
    483 Path,640,6.3.47,OctetString,V,,,M,N
    484 Primary-Charging-Collection-Function-Name,621,6.3.22,DiameterURI,"M,V",,,,N
    485 Primary-Event-Charging-Function-Name,619,6.3.20,DiameterURI,"M,V",,,,N
    486 Priviledged-Sender-Indication,652,6.3.58,Enumerated,V,,,M,N
    487 Public-Identity,601,6.3.2,UTF8String,"M,V",,,,N
    488 Reason-Code,616,6.3.17,Enumerated,"M,V",,,,N
    489 Reason-Info,617,6.3.18,UTF8String,"M,V",,,,N
    490 Record-Route,646,6.3.49.4,OctetString,V,,,M,N
    491 Restoration-Info,649,6.3.52,Grouped,V,,,M,N
    492 SCSCF-Restoration-Info,639,6.3.46,Grouped,V,,,M,N
    493 SIP-Auth-Data-Item,612,6.3.13,Grouped,"M,V",,,,N
    494 SIP-Authenticate,609,6.3.10,OctetString,"M,V",,,,N
    495 SIP-Authentication-Context,611,6.3.12,OctetString,"M,V",,,,N
    496 SIP-Authentication-Scheme,608,6.3.9,UTF8String,"M,V",,,,N
    497 SIP-Authorization,610,6.3.11,OctetString,"M,V",,,,N
    498 SIP-Digest-Authenticate,635,6.3.36,Grouped,V,,,M,N
    499 SIP-Item-Number,613,6.3.14,Unsigned32,"M,V",,,,N
    500 SIP-Number-Auth-Items,607,6.3.8,Unsigned32,"M,V",,,,N
    501 Secondary-Charging-Collection-Function-Name,622,6.3.23,DiameterURI,"M,V",,,,N
    502 Secondary-Event-Charging-Function-Name,620,6.3.21,DiameterURI,"M,V",,,,N
    503 Server-Assignment-Type,614,6.3.15,Enumerated,"M,V",,,,N
    504 Server-Capabilities,603,6.3.4,Grouped,"M,V",,,,N
    505 Server-Name,602,6.3.3,UTF8String,"M,V",,,,N
    506 Session-Priority,650,6.3.56,Enumerated,V,,,M,N
    507 Subscription-Info,642,6.3.49,Grouped,V,,,M,N
    508 Supported-Applications,631,6.3.32,Grouped,V,,,M,N
    509 Supported-Features,628,6.3.29,Grouped,V,M,,,N
    510 To-SIP-Header,645,6.3.49.3,OctetString,V,,,M,N
    511 UAR-Flags,637,6.3.44,Unsigned32,V,,,M,N
    512 User-Authorization-Type,623,6.3.24,Enumerated,"M,V",,,,N
    513 User-Data,606,6.3.7,OctetString,"M,V",,,,N
    514 User-Data-Already-Available,624,6.3.26,Enumerated,"M,V",,,,N
    515 Visited-Network-Identifier,600,6.3.1,OctetString,"M,V",,,,N
    516 Wildcarded-Public-Identity,634,6.3.35,UTF8String,V,,,M,N
     462# 3GPP TS 29.229 V15.2.0 (2019-09),,,,,,,,
     463# From 3GPP 29229-f20.doc,,,,,,,,
     464#=,,,,,,,,
     465#,,,,,,,,
     466#=,,,,,,,,
     467# 3GPP TS 29.229 Table 6.3.1: Diameter Multimedia Application AVPs,,,,,,,,
     468#=,,,,,,,,
     469#,,,,,,,,
     470Visited-Network-Identifier,600,6.3.1,OctetString,"M, V",,,,No
     471Public-Identity,601,6.3.2,UTF8String,"M, V",,,,No
     472Server-Name,602,6.3.3,UTF8String,"M, V",,,,No
     473Server-Capabilities,603,6.3.4,Grouped,"M, V",,,,No
     474Mandatory-Capability,604,6.3.5,Unsigned32,"M, V",,,,No
     475Optional-Capability,605,6.3.6,Unsigned32,"M, V",,,,No
     476User-Data,606,6.3.7,OctetString,"M, V",,,,No
     477SIP-Number-Auth-Items,607,6.3.8,Unsigned32,"M, V",,,,No
     478SIP-Authentication-Scheme,608,6.3.9,UTF8String,"M, V",,,,No
     479SIP-Authenticate,609,6.3.10,OctetString,"M, V",,,,No
     480SIP-Authorization,610,6.3.11,OctetString,"M, V",,,,No
     481SIP-Authentication-Context,611,6.3.12,OctetString,"M, V",,,,No
     482SIP-Auth-Data-Item,612,6.3.13,Grouped,"M, V",,,,No
     483SIP-Item-Number,613,6.3.14,Unsigned32,"M, V",,,,No
     484Server-Assignment-Type,614,6.3.15,Enumerated,"M, V",,,,No
     485Deregistration-Reason,615,6.3.16,Grouped,"M, V",,,,No
     486Reason-Code,616,6.3.17,Enumerated,"M, V",,,,No
     487Reason-Info,617,6.3.18,UTF8String,"M, V",,,,No
     488Charging-Information,618,6.3.19,Grouped,"M, V",,,,No
     489Primary-Event-Charging-Function-Name,619,6.3.20,DiameterURI,"M, V",,,,No
     490Secondary-Event-Charging-Function-Name,620,6.3.21,DiameterURI,"M, V",,,,No
     491Primary-Charging-Collection-Function-Name,621,6.3.22,DiameterURI,"M, V",,,,No
     492Secondary-Charging-Collection-Function-Name,622,6.3.23,DiameterURI,"M, V",,,,No
     493User-Authorization-Type,623,6.3.24,Enumerated,"M, V",,,,No
     494User-Data-Already-Available,624,6.3.26,Enumerated,"M, V",,,,No
     495Confidentiality-Key,625,6.3.27,OctetString,"M, V",,,,No
     496Integrity-Key,626,6.3.28,OctetString,"M, V",,,,No
     497# Note: 3GPP TS 29.229 V6.5.0 (2005-06) removed User-Data-Request-Type.,,,,,,,,
     498User-Data-Request-Type,627,6.3.25,Enumerated,"M, V",,,,No
     499Supported-Features,628,6.3.29,Grouped,V,M,,,No
     500Feature-List-ID,629,6.3.30,Unsigned32,V,,,M,No
     501Feature-List,630,6.3.31,Unsigned32,V,,,M,No
     502Supported-Applications,631,6.3.32,Grouped,V,,,M,No
     503Associated-Identities,632,6.3.33,Grouped,V,,,M,No
     504Originating-Request,633,6.3.34,Enumerated,"M,V",,,,No
     505Wildcarded-Public-Identity,634,6.3.35,UTF8String,V,,,M,No
     506SIP-Digest-Authenticate,635,6.3.36,Grouped,V,,,M,No
     507Wildcarded-IMPU,636,6.3.43,UTF8String,V,,,M,N
     508# Note: Uses RFC 4590 Digest-Realm.,104,6.3.37,UTF8String,M,,,V,No
     509# Note: Uses RFC 4590 Digest-Algorithm.,111,6.3.39,UTF8String,M,,,V,No
     510# Note: Uses RFC 4590 Digest-QoP.,110,6.3.40,UTF8String,M,,,V,No
     511# Note: Uses RFC 4590 Digest-HA1.,121,6.3.41,UTF8String,M,,,V,No
     512#,,,,,,,,
     513UAR-Flags,637,6.3.44,Unsigned32,V,,,M,No
     514Loose-Route-Indication,638,6.3.45,Enumerated,V,,,M,No
     515SCSCF-Restoration-Info,639,6.3.46,Grouped,V,,,M,No
     516Path,640,6.3.47,OctetString,V,,,M,No
     517Contact,641,6.3.48,OctetString,V,,,M,No
     518Subscription-Info,642,6.3.49,Grouped,V,,,M,No
     519Call-ID-SIP-Header,643,6.3.49.1,OctetString,V,,,M,No
     520From-SIP-Header,644,6.3.49.2,OctetString,V,,,M,No
     521To-SIP-Header,645,6.3.49.3,OctetString,V,,,M,No
     522Record-Route,646,6.3.49.4,OctetString,V,,,M,No
     523Associated-Registered-Identities,647,6.3.50,Grouped,V,,,M,No
     524Multiple-Registration-Indication,648,6.3.51,Enumerated,V,,,M,No
     525Restoration-Info,649,6.3.52,Grouped,V,,,M,No
     526Session-Priority,650,6.3.56,Enumerated,V,,,M,No
     527Identity-with-Emergency-Registration,651,6.3.57,Grouped,V,,,M,No
     528Priviledged-Sender-Indication,652,6.3.58,Enumerated,V,,,M,No
     529LIA-Flags,653,6.3.59,Unsigned32,V,,,M,No
     530# Note: Uses RFC 7683 OC-Supported-Features.,621,6.3.60,Grouped,,,,"M, V",No
     531# Note: Uses RFC 7683 OC-OLR.,623,6.3.61,Grouped,,,,"M, V",No
     532#,,,,,,,,
     533Initial-CSeq-Sequence-Number,654,6.3.62,Unsigned32,V,,,M,No
     534SAR-Flags,655,6.3.63,Unsigned32,V,,,M,No
     535Allowed-WAF-WWSF-Identities,656,6.3.64,Grouped,V,,,M,No
     536WebRTC-Authentication-Function-Name,657,6.3.65,UTF8String,V,,,M,No
     537WebRTC-Web-Server-Function-Name,658,6.3.66,UTF8String,V,,,M,No
     538# Note: Uses RFC 7944 DRMP.,301,6.3.67,Enumerated,,,,"M, V",No
     539# Note: Uses RFC 8583 Load.,,6.3.68,Grouped,,,,"M, V",No
     540#,,,,,,,,
     541RTR-Flags,659,6.3.69,Unsigned32,V,,,M,No
    517542,,,,,,,,
    518543@standard,3GPP TS 29.272,,,,,,,
     
    766791# in 29.229,,,,,,,,
    767792# Wildcarded-Public-Identity,634,6.3.19,UTF8String,V,,,M,N
    768 Wildcarded-IMPU,636,6.3.20,UTF8String,V,,,M,N
     793# in 29.229,,,,,,,,
     794# Wildcarded-IMPU,636,6.3.20,UTF8String,V,,,M,N
    769795# in 29.229,,,,,,,,
    770796# Session-Priority,650,6.3.21,Enumerated,V,,,M,N
Note: See TracChangeset for help on using the changeset viewer.