comparison extensions/dict_dcca_3gpp/add_avps.c @ 1504:4dff34cd2d3d

Add 3GPP TS 29.215 V15.2.0 (2019-09) Add AVPs: - DRA-Deployment, Enumerated, code 2206, section 5.3.7 - Multiple-BBERF-Action, Enumerated, code 2204, section 5.3.6 - Subsession-Decision-Info, Grouped, code 2200, section 5.3.1 - Subsession-Enforcement-Info, Grouped, code 2201, section 5.3.2 - Subsession-Id, Unsigned32, code 2202, section 5.3.3 - Subsession-Operation, Enumerated, code 2203, section 5.3.4 - DRA-Binding, Enumerated, code 2208, section 5.3.x - PCRF-Address, DiameterIdentity, code 2207, section A.7.3.1.1 - UE-Local-IPv6-Prefix, OctetString, code 2205, section A.8.3.1
author Luke Mewburn <luke@mewburn.net>
date Fri, 03 Apr 2020 16:50:00 +1100
parents b526a9899931
children b382cbd1a710
comparison
equal deleted inserted replaced
1503:b526a9899931 1504:4dff34cd2d3d
5967 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); 5967 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
5968 CHECK_dict_new(DICT_AVP, &data, type, NULL); 5968 CHECK_dict_new(DICT_AVP, &data, type, NULL);
5969 }; 5969 };
5970 5970
5971 /*==================================================================*/ 5971 /*==================================================================*/
5972 /* 3GPP TS 29.215 V15.2.0 (2019-09) */
5973 /* Policy and Charging Control (PCC) over S9 reference point; */
5974 /* Stage 3 */
5975 /* */
5976 /* From 3GPP 29215-f20.doc */
5977 /*==================================================================*/
5978
5979 /*==================================================================*/
5980 /* 3GPP TS 29.215 Table 5.3.0.1: S9 specific Diameter AVPs */
5981 /*==================================================================*/
5982
5983 /* DRA-Deployment, Enumerated, code 2206, section 5.3.7 */
5984 {
5985 struct dict_avp_data data = {
5986 2206, /* Code */
5987 10415, /* Vendor */
5988 "DRA-Deployment", /* Name */
5989 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
5990 AVP_FLAG_VENDOR, /* Fixed flag values */
5991 AVP_TYPE_INTEGER32 /* base type of data */
5992 };
5993 struct dict_object *type;
5994 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/DRA-Deployment)", NULL, NULL, NULL };
5995 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
5996 CHECK_dict_new(DICT_AVP, &data, type, NULL);
5997 };
5998
5999 /* Multiple-BBERF-Action, Enumerated, code 2204, section 5.3.6 */
6000 {
6001 struct dict_avp_data data = {
6002 2204, /* Code */
6003 10415, /* Vendor */
6004 "Multiple-BBERF-Action", /* Name */
6005 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6006 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6007 AVP_TYPE_INTEGER32 /* base type of data */
6008 };
6009 struct dict_object *type;
6010 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Multiple-BBERF-Action)", NULL, NULL, NULL };
6011 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
6012 CHECK_dict_new(DICT_AVP, &data, type, NULL);
6013 };
6014
6015 /* Subsession-Decision-Info, Grouped, code 2200, section 5.3.1 */
6016 {
6017 struct dict_avp_data data = {
6018 2200, /* Code */
6019 10415, /* Vendor */
6020 "Subsession-Decision-Info", /* Name */
6021 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6022 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6023 AVP_TYPE_GROUPED /* base type of data */
6024 };
6025 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
6026 };
6027
6028 /* Subsession-Enforcement-Info, Grouped, code 2201, section 5.3.2 */
6029 {
6030 struct dict_avp_data data = {
6031 2201, /* Code */
6032 10415, /* Vendor */
6033 "Subsession-Enforcement-Info", /* Name */
6034 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6035 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6036 AVP_TYPE_GROUPED /* base type of data */
6037 };
6038 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
6039 };
6040
6041 /* Subsession-Id, Unsigned32, code 2202, section 5.3.3 */
6042 {
6043 struct dict_avp_data data = {
6044 2202, /* Code */
6045 10415, /* Vendor */
6046 "Subsession-Id", /* Name */
6047 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6048 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6049 AVP_TYPE_UNSIGNED32 /* base type of data */
6050 };
6051 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
6052 };
6053
6054 /* Subsession-Operation, Enumerated, code 2203, section 5.3.4 */
6055 {
6056 struct dict_avp_data data = {
6057 2203, /* Code */
6058 10415, /* Vendor */
6059 "Subsession-Operation", /* Name */
6060 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6061 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6062 AVP_TYPE_INTEGER32 /* base type of data */
6063 };
6064 struct dict_object *type;
6065 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Subsession-Operation)", NULL, NULL, NULL };
6066 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
6067 CHECK_dict_new(DICT_AVP, &data, type, NULL);
6068 };
6069
6070 /* DRA-Binding, Enumerated, code 2208, section 5.3.x */
6071 {
6072 struct dict_avp_data data = {
6073 2208, /* Code */
6074 10415, /* Vendor */
6075 "DRA-Binding", /* Name */
6076 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6077 AVP_FLAG_VENDOR, /* Fixed flag values */
6078 AVP_TYPE_INTEGER32 /* base type of data */
6079 };
6080 struct dict_object *type;
6081 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/DRA-Binding)", NULL, NULL, NULL };
6082 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type);
6083 CHECK_dict_new(DICT_AVP, &data, type, NULL);
6084 };
6085
6086 /*==================================================================*/
6087 /* Table A.7.3.1.1: S9a specific Diameter AVPs */
6088 /*==================================================================*/
6089
6090 /* PCRF-Address, DiameterIdentity, code 2207, section A.7.3.1.1 */
6091 {
6092 struct dict_avp_data data = {
6093 2207, /* Code */
6094 10415, /* Vendor */
6095 "PCRF-Address", /* Name */
6096 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6097 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6098 AVP_TYPE_OCTETSTRING /* base type of data */
6099 };
6100 CHECK_dict_new(DICT_AVP, &data, DiameterIdentity_type, NULL);
6101 };
6102
6103 /*==================================================================*/
6104 /* Table A.8.3.1.1: S9a* specific Diameter AVPs */
6105 /*==================================================================*/
6106
6107 /* UE-Local-IPv6-Prefix, OctetString, code 2205, section A.8.3.1 */
6108 {
6109 struct dict_avp_data data = {
6110 2205, /* Code */
6111 10415, /* Vendor */
6112 "UE-Local-IPv6-Prefix", /* Name */
6113 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */
6114 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */
6115 AVP_TYPE_OCTETSTRING /* base type of data */
6116 };
6117 CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
6118 };
6119
6120 /*==================================================================*/
5972 /* 3GPP TS 29.229 V15.2.0 (2019-09) */ 6121 /* 3GPP TS 29.229 V15.2.0 (2019-09) */
5973 /* Cx and Dx interfaces based on the Diameter protocol; */ 6122 /* Cx and Dx interfaces based on the Diameter protocol; */
5974 /* Protocol details */ 6123 /* Protocol details */
5975 /* */ 6124 /* */
5976 /* From 3GPP 29229-f20.doc */ 6125 /* From 3GPP 29229-f20.doc */
"Welcome to our mercurial repository"