Mercurial > hg > freeDiameter
comparison extensions/dict_dcca_3gpp/add_avps.c @ 1514:8912a0645645
Add 3GPP TS 29.234 V11.2.0 (2013-06)
Add AVPs:
- 3GPP-WLAN-APN-Id, OctetString, code 100, section 10.1.15
- Authentication-Method, Enumerated, code 300, section 10.1.5
- Authentication-Information-SIM, OctetString, code 301, section 10.1.6
- Authorization-Information-SIM, OctetString, code 302, section 10.1.7
- WLAN-User-Data, Grouped, code 303, section 10.1.8
- Charging-Data, Grouped, code 304, section 10.1.10
- WLAN-Access, Enumerated, code 305, section 10.1.11
- WLAN-3GPP-IP-Access, Enumerated, code 306, section 10.1.12
- APN-Authorized, Grouped, code 307, section 10.1.14
- APN-Barring-Type, Enumerated, code 309, section 10.1.16
- WLAN-Direct-IP-Access, Enumerated, code 310, section 10.1.17
- Session-Request-Type, Enumerated, code 311, section 10.1.23
- Routing-Policy, IPFilterRule, code 312, section 10.1.24
- Max-Requested-Bandwidth, OctetString, code 313, section 10.1.26
- Charging-Characteristics, Integer32, code 314, section 10.1.27
- Charging-Nodes, Grouped, code 315, section 10.1.28
- Primary-OCS-Charging-Function-Name, DiameterIdentity, code 316, section 10.1.29
- Secondary-OCS-Charging-Function-Name, DiameterIdentity, code 317, section 10.1.30
- Maximum-Number-Accesses, Unsigned32, code 319, section 10.1.38
APN-Id (308) OctetString only present from
3GPP TS 29.234 V6.2.0 (2005-03) to 3GPP TS 29.234 V6.4.0 (2005-09)
before being deprecated in 3GPP TS 29.234 V6.5.0 (2005-12).
(Not provided here.)
author | Luke Mewburn <luke@mewburn.net> |
---|---|
date | Wed, 08 Apr 2020 15:48:08 +1000 |
parents | 73e563165594 |
children | 8430dabbc637 |
comparison
equal
deleted
inserted
replaced
1513:73e563165594 | 1514:8912a0645645 |
---|---|
7165 }; | 7165 }; |
7166 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | 7166 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); |
7167 }; | 7167 }; |
7168 | 7168 |
7169 /*==================================================================*/ | 7169 /*==================================================================*/ |
7170 /* 3GPP TS 29.234 V11.2.0 (2013-06) */ | |
7171 /* 3GPP system to Wireless Local Area Network (WLAN) */ | |
7172 /* interworking; */ | |
7173 /* Stage 3 */ | |
7174 /* */ | |
7175 /* From 3GPP 29234-b20.doc */ | |
7176 /*==================================================================*/ | |
7177 | |
7178 /*==================================================================*/ | |
7179 /* 3GPP TS 29.234 Table 10.1.1: Diameter Multimedia Application AVPs */ | |
7180 /*==================================================================*/ | |
7181 | |
7182 /* 3GPP-WLAN-APN-Id, OctetString, code 100, section 10.1.15 */ | |
7183 { | |
7184 struct dict_avp_data data = { | |
7185 100, /* Code */ | |
7186 10415, /* Vendor */ | |
7187 "3GPP-WLAN-APN-Id", /* Name */ | |
7188 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7189 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7190 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7191 }; | |
7192 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7193 }; | |
7194 | |
7195 /* Authentication-Method, Enumerated, code 300, section 10.1.5 */ | |
7196 { | |
7197 struct dict_avp_data data = { | |
7198 300, /* Code */ | |
7199 10415, /* Vendor */ | |
7200 "Authentication-Method", /* Name */ | |
7201 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7202 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7203 AVP_TYPE_INTEGER32 /* base type of data */ | |
7204 }; | |
7205 struct dict_object *type; | |
7206 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Authentication-Method)", NULL, NULL, NULL }; | |
7207 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); | |
7208 CHECK_dict_new(DICT_AVP, &data, type, NULL); | |
7209 }; | |
7210 | |
7211 /* Authentication-Information-SIM, OctetString, code 301, section 10.1.6 */ | |
7212 { | |
7213 struct dict_avp_data data = { | |
7214 301, /* Code */ | |
7215 10415, /* Vendor */ | |
7216 "Authentication-Information-SIM", /* Name */ | |
7217 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7218 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7219 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7220 }; | |
7221 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7222 }; | |
7223 | |
7224 /* Authorization-Information-SIM, OctetString, code 302, section 10.1.7 */ | |
7225 { | |
7226 struct dict_avp_data data = { | |
7227 302, /* Code */ | |
7228 10415, /* Vendor */ | |
7229 "Authorization-Information-SIM", /* Name */ | |
7230 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7231 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7232 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7233 }; | |
7234 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7235 }; | |
7236 | |
7237 /* WLAN-User-Data, Grouped, code 303, section 10.1.8 */ | |
7238 { | |
7239 struct dict_avp_data data = { | |
7240 303, /* Code */ | |
7241 10415, /* Vendor */ | |
7242 "WLAN-User-Data", /* Name */ | |
7243 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7244 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7245 AVP_TYPE_GROUPED /* base type of data */ | |
7246 }; | |
7247 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7248 }; | |
7249 | |
7250 /* Charging-Data, Grouped, code 304, section 10.1.10 */ | |
7251 { | |
7252 struct dict_avp_data data = { | |
7253 304, /* Code */ | |
7254 10415, /* Vendor */ | |
7255 "Charging-Data", /* Name */ | |
7256 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7257 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7258 AVP_TYPE_GROUPED /* base type of data */ | |
7259 }; | |
7260 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7261 }; | |
7262 | |
7263 /* WLAN-Access, Enumerated, code 305, section 10.1.11 */ | |
7264 { | |
7265 struct dict_avp_data data = { | |
7266 305, /* Code */ | |
7267 10415, /* Vendor */ | |
7268 "WLAN-Access", /* Name */ | |
7269 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7270 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7271 AVP_TYPE_INTEGER32 /* base type of data */ | |
7272 }; | |
7273 struct dict_object *type; | |
7274 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/WLAN-Access)", NULL, NULL, NULL }; | |
7275 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); | |
7276 CHECK_dict_new(DICT_AVP, &data, type, NULL); | |
7277 }; | |
7278 | |
7279 /* WLAN-3GPP-IP-Access, Enumerated, code 306, section 10.1.12 */ | |
7280 { | |
7281 struct dict_avp_data data = { | |
7282 306, /* Code */ | |
7283 10415, /* Vendor */ | |
7284 "WLAN-3GPP-IP-Access", /* Name */ | |
7285 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7286 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7287 AVP_TYPE_INTEGER32 /* base type of data */ | |
7288 }; | |
7289 struct dict_object *type; | |
7290 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/WLAN-3GPP-IP-Access)", NULL, NULL, NULL }; | |
7291 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); | |
7292 CHECK_dict_new(DICT_AVP, &data, type, NULL); | |
7293 }; | |
7294 | |
7295 /* APN-Authorized, Grouped, code 307, section 10.1.14 */ | |
7296 { | |
7297 struct dict_avp_data data = { | |
7298 307, /* Code */ | |
7299 10415, /* Vendor */ | |
7300 "APN-Authorized", /* Name */ | |
7301 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7302 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7303 AVP_TYPE_GROUPED /* base type of data */ | |
7304 }; | |
7305 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7306 }; | |
7307 | |
7308 /* Note: APN-Id (308) OctetString only present from */ | |
7309 /* 3GPP TS 29.234 V6.2.0 (2005-03) to 3GPP TS 29.234 V6.4.0 (2005-09) */ | |
7310 /* before being deprecated in 3GPP TS 29.234 V6.5.0 (2005-12). */ | |
7311 | |
7312 /* APN-Barring-Type, Enumerated, code 309, section 10.1.16 */ | |
7313 { | |
7314 struct dict_avp_data data = { | |
7315 309, /* Code */ | |
7316 10415, /* Vendor */ | |
7317 "APN-Barring-Type", /* Name */ | |
7318 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7319 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7320 AVP_TYPE_INTEGER32 /* base type of data */ | |
7321 }; | |
7322 struct dict_object *type; | |
7323 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/APN-Barring-Type)", NULL, NULL, NULL }; | |
7324 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); | |
7325 CHECK_dict_new(DICT_AVP, &data, type, NULL); | |
7326 }; | |
7327 | |
7328 /* WLAN-Direct-IP-Access, Enumerated, code 310, section 10.1.17 */ | |
7329 { | |
7330 struct dict_avp_data data = { | |
7331 310, /* Code */ | |
7332 10415, /* Vendor */ | |
7333 "WLAN-Direct-IP-Access", /* Name */ | |
7334 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7335 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7336 AVP_TYPE_INTEGER32 /* base type of data */ | |
7337 }; | |
7338 struct dict_object *type; | |
7339 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/WLAN-Direct-IP-Access)", NULL, NULL, NULL }; | |
7340 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); | |
7341 CHECK_dict_new(DICT_AVP, &data, type, NULL); | |
7342 }; | |
7343 | |
7344 /* Session-Request-Type, Enumerated, code 311, section 10.1.23 */ | |
7345 { | |
7346 struct dict_avp_data data = { | |
7347 311, /* Code */ | |
7348 10415, /* Vendor */ | |
7349 "Session-Request-Type", /* Name */ | |
7350 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7351 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7352 AVP_TYPE_INTEGER32 /* base type of data */ | |
7353 }; | |
7354 struct dict_object *type; | |
7355 struct dict_type_data tdata = { AVP_TYPE_INTEGER32, "Enumerated(3GPP/Session-Request-Type)", NULL, NULL, NULL }; | |
7356 CHECK_dict_new(DICT_TYPE, &tdata, NULL, &type); | |
7357 CHECK_dict_new(DICT_AVP, &data, type, NULL); | |
7358 }; | |
7359 | |
7360 /* Routing-Policy, IPFilterRule, code 312, section 10.1.24 */ | |
7361 { | |
7362 struct dict_avp_data data = { | |
7363 312, /* Code */ | |
7364 10415, /* Vendor */ | |
7365 "Routing-Policy", /* Name */ | |
7366 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7367 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7368 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7369 }; | |
7370 CHECK_dict_new(DICT_AVP, &data, IPFilterRule_type, NULL); | |
7371 }; | |
7372 | |
7373 /* Max-Requested-Bandwidth, OctetString, code 313, section 10.1.26 */ | |
7374 { | |
7375 struct dict_avp_data data = { | |
7376 313, /* Code */ | |
7377 10415, /* Vendor */ | |
7378 "Max-Requested-Bandwidth", /* Name */ | |
7379 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7380 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7381 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7382 }; | |
7383 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7384 }; | |
7385 | |
7386 /* Charging-Characteristics, Integer32, code 314, section 10.1.27 */ | |
7387 { | |
7388 struct dict_avp_data data = { | |
7389 314, /* Code */ | |
7390 10415, /* Vendor */ | |
7391 "Charging-Characteristics", /* Name */ | |
7392 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7393 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7394 AVP_TYPE_INTEGER32 /* base type of data */ | |
7395 }; | |
7396 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7397 }; | |
7398 | |
7399 /* Charging-Nodes, Grouped, code 315, section 10.1.28 */ | |
7400 { | |
7401 struct dict_avp_data data = { | |
7402 315, /* Code */ | |
7403 10415, /* Vendor */ | |
7404 "Charging-Nodes", /* Name */ | |
7405 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7406 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7407 AVP_TYPE_GROUPED /* base type of data */ | |
7408 }; | |
7409 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7410 }; | |
7411 | |
7412 /* Primary-OCS-Charging-Function-Name, DiameterIdentity, code 316, section 10.1.29 */ | |
7413 { | |
7414 struct dict_avp_data data = { | |
7415 316, /* Code */ | |
7416 10415, /* Vendor */ | |
7417 "Primary-OCS-Charging-Function-Name", /* Name */ | |
7418 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7419 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7420 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7421 }; | |
7422 CHECK_dict_new(DICT_AVP, &data, DiameterIdentity_type, NULL); | |
7423 }; | |
7424 | |
7425 /* Secondary-OCS-Charging-Function-Name, DiameterIdentity, code 317, section 10.1.30 */ | |
7426 { | |
7427 struct dict_avp_data data = { | |
7428 317, /* Code */ | |
7429 10415, /* Vendor */ | |
7430 "Secondary-OCS-Charging-Function-Name", /* Name */ | |
7431 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7432 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7433 AVP_TYPE_OCTETSTRING /* base type of data */ | |
7434 }; | |
7435 CHECK_dict_new(DICT_AVP, &data, DiameterIdentity_type, NULL); | |
7436 }; | |
7437 | |
7438 /* Note: 3GPP TS 29.273 from Release 12 now defines 3GPP-AAA-Server-Name (318). */ | |
7439 /* */ | |
7440 /* Maximum-Number-Accesses, Unsigned32, code 319, section 10.1.38 */ | |
7441 { | |
7442 struct dict_avp_data data = { | |
7443 319, /* Code */ | |
7444 10415, /* Vendor */ | |
7445 "Maximum-Number-Accesses", /* Name */ | |
7446 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flags */ | |
7447 AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY, /* Fixed flag values */ | |
7448 AVP_TYPE_UNSIGNED32 /* base type of data */ | |
7449 }; | |
7450 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | |
7451 }; | |
7452 | |
7453 /*==================================================================*/ | |
7170 /* 3GPP TS 29.272 V15.10.0 (2019-12) */ | 7454 /* 3GPP TS 29.272 V15.10.0 (2019-12) */ |
7171 /* Mobility Management Entity (MME) */ | 7455 /* Mobility Management Entity (MME) */ |
7172 /* and Serving GPRS Support Node (SGSN) related interfaces */ | 7456 /* and Serving GPRS Support Node (SGSN) related interfaces */ |
7173 /* based on Diameter protocol */ | 7457 /* based on Diameter protocol */ |
7174 /* */ | 7458 /* */ |
10427 AVP_TYPE_UNSIGNED32 /* base type of data */ | 10711 AVP_TYPE_UNSIGNED32 /* base type of data */ |
10428 }; | 10712 }; |
10429 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); | 10713 CHECK_dict_new(DICT_AVP, &data, NULL, NULL); |
10430 }; | 10714 }; |
10431 | 10715 |
10432 /* Note: Trust-Relationship-Update (1515) only present in */ | 10716 /* Note: Trust-Relationship-Update (1515) Enumerated only present */ |
10433 /* 3GPP TS 29.273 V11.3.0 (2012-09) before being deprecated. */ | 10717 /* in 3GPP TS 29.273 V11.3.0 (2012-09) before being deprecated. */ |
10434 /* Trust-Relationship-Update (1515) not provided. */ | |
10435 | 10718 |
10436 /* DER-S6b-Flags, Unsigned32, code 1523, section 9.2.3.7 */ | 10719 /* DER-S6b-Flags, Unsigned32, code 1523, section 9.2.3.7 */ |
10437 { | 10720 { |
10438 struct dict_avp_data data = { | 10721 struct dict_avp_data data = { |
10439 1523, /* Code */ | 10722 1523, /* Code */ |