Mercurial > hg > freeDiameter
comparison extensions/dict_dcca_3gpp/dict_dcca_3gpp.c @ 1535:00278a2c5b90
dict_dcca_3gpp: update rules per Rel-15 updates
Update rules per 3GPP TS 29.212 V15.9.0 (2019-12):
- QoS-Information
Update rules per 3GPP TS 32.299 V15.7.0 (2019-06):
- Application-Server-Information
- IMS-Information
- MMS-Information
- PS-Information
- Service-Information
- SMS-Information
author | Luke Mewburn <luke@mewburn.net> |
---|---|
date | Mon, 20 Apr 2020 13:40:25 +1000 |
parents | c83e60f28632 |
children |
comparison
equal
deleted
inserted
replaced
1534:c83e60f28632 | 1535:00278a2c5b90 |
---|---|
351 | 351 |
352 /*==================================================================*/ | 352 /*==================================================================*/ |
353 /* Rules section */ | 353 /* Rules section */ |
354 /*==================================================================*/ | 354 /*==================================================================*/ |
355 | 355 |
356 /* 29.212 */ | 356 /*==================================================================*/ |
357 /* 3GPP TS 29.212 V15.9.0 (2019-12) */ | |
358 /*==================================================================*/ | |
357 | 359 |
358 { | 360 { |
359 struct dict_object *rule_avp; | 361 struct dict_object *rule_avp; |
360 struct dict_avp_request vpa; | 362 struct dict_avp_request vpa; |
361 vpa.avp_vendor = 10415; | 363 vpa.avp_vendor = 10415; |
379 struct local_rules_definition rules[] = | 381 struct local_rules_definition rules[] = |
380 { | 382 { |
381 { 10415, "QoS-Class-Identifier", RULE_OPTIONAL, -1, 1 }, | 383 { 10415, "QoS-Class-Identifier", RULE_OPTIONAL, -1, 1 }, |
382 { 10415, "Max-Requested-Bandwidth-UL", RULE_OPTIONAL, -1, 1 }, | 384 { 10415, "Max-Requested-Bandwidth-UL", RULE_OPTIONAL, -1, 1 }, |
383 { 10415, "Max-Requested-Bandwidth-DL", RULE_OPTIONAL, -1, 1 }, | 385 { 10415, "Max-Requested-Bandwidth-DL", RULE_OPTIONAL, -1, 1 }, |
386 { 10415, "Extended-Max-Requested-BW-UL", RULE_OPTIONAL, -1, 1 }, | |
387 { 10415, "Extended-Max-Requested-BW-DL", RULE_OPTIONAL, -1, 1 }, | |
384 { 10415, "Guaranteed-Bitrate-UL", RULE_OPTIONAL, -1, 1 }, | 388 { 10415, "Guaranteed-Bitrate-UL", RULE_OPTIONAL, -1, 1 }, |
385 { 10415, "Guaranteed-Bitrate-DL", RULE_OPTIONAL, -1, 1 }, | 389 { 10415, "Guaranteed-Bitrate-DL", RULE_OPTIONAL, -1, 1 }, |
390 { 10415, "Extended-GBR-UL", RULE_OPTIONAL, -1, 1 }, | |
391 { 10415, "Extended-GBR-DL", RULE_OPTIONAL, -1, 1 }, | |
386 { 10415, "Bearer-Identifier", RULE_OPTIONAL, -1, 1 }, | 392 { 10415, "Bearer-Identifier", RULE_OPTIONAL, -1, 1 }, |
387 { 10415, "Allocation-Retention-Priority", RULE_OPTIONAL, -1, 1 }, | 393 { 10415, "Allocation-Retention-Priority", RULE_OPTIONAL, -1, 1 }, |
388 { 10415, "APN-Aggregate-Max-Bitrate-UL", RULE_OPTIONAL, -1, 1 }, | 394 { 10415, "APN-Aggregate-Max-Bitrate-UL", RULE_OPTIONAL, -1, 1 }, |
389 { 10415, "APN-Aggregate-Max-Bitrate-DL", RULE_OPTIONAL, -1, 1 }, | 395 { 10415, "APN-Aggregate-Max-Bitrate-DL", RULE_OPTIONAL, -1, 1 }, |
390 }; | 396 { 10415, "Extended-APN-AMBR-UL", RULE_OPTIONAL, -1, 1 }, |
391 PARSE_loc_rules(rules, rule_avp); | 397 { 10415, "Extended-APN-AMBR-DL", RULE_OPTIONAL, -1, 1 }, |
392 } | 398 { 10415, "Conditional-APN-Aggregate-Max-Bitrate", RULE_OPTIONAL, -1, -1 }, |
393 | 399 }; |
394 /* 32.299 */ | 400 PARSE_loc_rules(rules, rule_avp); |
401 } | |
402 | |
403 /*==================================================================*/ | |
404 /* 3GPP TS 32.299 V15.7.0 (2019-06) */ | |
405 /*==================================================================*/ | |
395 | 406 |
396 { | 407 { |
397 /* additional allowed AVPs */ | 408 /* additional allowed AVPs */ |
398 struct dict_object *ccr; | 409 struct dict_object *ccr; |
399 CHECK_dict_search(DICT_COMMAND, CMD_BY_NAME, "Credit-Control-Request", &ccr); | 410 CHECK_dict_search(DICT_COMMAND, CMD_BY_NAME, "Credit-Control-Request", &ccr); |
438 vpa.avp_vendor = 10415; | 449 vpa.avp_vendor = 10415; |
439 vpa.avp_name = "Application-Server-Information"; | 450 vpa.avp_name = "Application-Server-Information"; |
440 CHECK_dict_search(DICT_AVP, AVP_BY_NAME_AND_VENDOR, &vpa, &rule_avp); | 451 CHECK_dict_search(DICT_AVP, AVP_BY_NAME_AND_VENDOR, &vpa, &rule_avp); |
441 struct local_rules_definition rules[] = | 452 struct local_rules_definition rules[] = |
442 { | 453 { |
443 { 10415, "Application-Server", RULE_REQUIRED, -1, 1 }, | 454 { 10415, "Application-Server", RULE_OPTIONAL, -1, 1 }, |
444 { 10415, "Application-Provided-Called-Party-Address", RULE_OPTIONAL, -1, -1 }, | 455 { 10415, "Application-Provided-Called-Party-Address", RULE_OPTIONAL, -1, -1 }, |
456 { 10415, "Status-AS-Code", RULE_OPTIONAL, -1, 1 }, | |
445 }; | 457 }; |
446 PARSE_loc_rules(rules, rule_avp); | 458 PARSE_loc_rules(rules, rule_avp); |
447 } | 459 } |
448 | 460 |
449 { | 461 { |
530 { 10415, "Bearer-Service", RULE_OPTIONAL, -1, 1 }, | 542 { 10415, "Bearer-Service", RULE_OPTIONAL, -1, 1 }, |
531 { 10415, "Service-Id", RULE_OPTIONAL, -1, 1 }, | 543 { 10415, "Service-Id", RULE_OPTIONAL, -1, 1 }, |
532 { 10415, "Service-Specific-Info", RULE_OPTIONAL, -1, -1 }, | 544 { 10415, "Service-Specific-Info", RULE_OPTIONAL, -1, -1 }, |
533 { 10415, "Message-Body", RULE_OPTIONAL, -1, -1 }, | 545 { 10415, "Message-Body", RULE_OPTIONAL, -1, -1 }, |
534 { 10415, "Cause-Code", RULE_OPTIONAL, -1, 1 }, | 546 { 10415, "Cause-Code", RULE_OPTIONAL, -1, 1 }, |
535 { 10415, "Access-Network-Information", RULE_OPTIONAL, -1, 1 }, | 547 { 10415, "Reason-Header", RULE_OPTIONAL, -1, -1 }, |
548 { 10415, "Access-Network-Information", RULE_OPTIONAL, -1, -1 }, | |
549 { 10415, "Cellular-Network-Information", RULE_OPTIONAL, -1, 1 }, | |
536 { 10415, "Early-Media-Description", RULE_OPTIONAL, -1, -1 }, | 550 { 10415, "Early-Media-Description", RULE_OPTIONAL, -1, -1 }, |
537 { 10415, "IMS-Communication-Service-Identifier",RULE_OPTIONAL, -1, 1 }, | 551 { 10415, "IMS-Communication-Service-Identifier",RULE_OPTIONAL, -1, 1 }, |
538 { 10415, "IMS-Application-Reference-Identifier",RULE_OPTIONAL, -1, 1 }, | 552 { 10415, "IMS-Application-Reference-Identifier",RULE_OPTIONAL, -1, 1 }, |
539 { 10415, "Online-Charging-Flag", RULE_OPTIONAL, -1, 1 }, | 553 { 10415, "Online-Charging-Flag", RULE_OPTIONAL, -1, 1 }, |
540 { 10415, "Real-Time-Tariff-Information", RULE_OPTIONAL, -1, 1 }, | 554 { 10415, "Real-Time-Tariff-Information", RULE_OPTIONAL, -1, 1 }, |
541 { 10415, "Account-Expiration", RULE_OPTIONAL, -1, 1 }, | 555 { 10415, "Account-Expiration", RULE_OPTIONAL, -1, 1 }, |
542 { 10415, "Initial-IMS-Charging-Identifier", RULE_OPTIONAL, -1, 1 }, | 556 { 10415, "Initial-IMS-Charging-Identifier", RULE_OPTIONAL, -1, 1 }, |
543 { 10415, "NNI-Information", RULE_OPTIONAL, -1, -1 }, | 557 { 10415, "NNI-Information", RULE_OPTIONAL, -1, -1 }, |
544 { 10415, "From-Address", RULE_OPTIONAL, -1, 1 }, | 558 { 10415, "From-Address", RULE_OPTIONAL, -1, 1 }, |
545 { 10415, "IMS-Emergency-Indicator", RULE_OPTIONAL, -1, 1 }, | 559 { 10415, "IMS-Emergency-Indicator", RULE_OPTIONAL, -1, 1 }, |
560 { 10415, "IMS-Visited-Network-Identifier", RULE_OPTIONAL, -1, 1 }, | |
561 { 10415, "Access-Network-Info-Change", RULE_OPTIONAL, -1, -1 }, | |
546 { 10415, "Access-Transfer-Information", RULE_OPTIONAL, -1, -1 }, | 562 { 10415, "Access-Transfer-Information", RULE_OPTIONAL, -1, -1 }, |
563 { 10415, "Related-IMS-Charging-Identifier", RULE_OPTIONAL, -1, 1 }, | |
564 { 10415, "Related-IMS-Charging-Identifier-Node",RULE_OPTIONAL, -1, 1 }, | |
565 { 10415, "Route-Header-Received", RULE_OPTIONAL, -1, 1 }, | |
566 { 10415, "Route-Header-Transmitted", RULE_OPTIONAL, -1, 1 }, | |
567 { 10415, "Instance-Id", RULE_OPTIONAL, -1, 1 }, | |
568 { 10415, "TAD-Identifier", RULE_OPTIONAL, -1, 1 }, | |
569 { 10415, "FE-Identifier-List", RULE_OPTIONAL, -1, 1 }, | |
547 }; | 570 }; |
548 PARSE_loc_rules(rules, rule_avp); | 571 PARSE_loc_rules(rules, rule_avp); |
549 } | 572 } |
550 | 573 |
551 { | 574 { |
572 { | 595 { |
573 { 10415, "Originator-Address", RULE_OPTIONAL, -1, 1 }, | 596 { 10415, "Originator-Address", RULE_OPTIONAL, -1, 1 }, |
574 { 10415, "Recipient-Address", RULE_OPTIONAL, -1, -1 }, | 597 { 10415, "Recipient-Address", RULE_OPTIONAL, -1, -1 }, |
575 { 10415, "Submission-Time", RULE_OPTIONAL, -1, 1 }, | 598 { 10415, "Submission-Time", RULE_OPTIONAL, -1, 1 }, |
576 { 10415, "MM-Content-Type", RULE_OPTIONAL, -1, 1 }, | 599 { 10415, "MM-Content-Type", RULE_OPTIONAL, -1, 1 }, |
577 { 10415, "Priority", RULE_OPTIONAL, -1, -1 }, | 600 { 10415, "Priority", RULE_OPTIONAL, -1, 1 }, |
578 { 10415, "Message-ID", RULE_OPTIONAL, -1, 1 }, | 601 { 10415, "Message-ID", RULE_OPTIONAL, -1, 1 }, |
579 { 10415, "Message-Type", RULE_OPTIONAL, -1, 1 }, | 602 { 10415, "Message-Type", RULE_OPTIONAL, -1, 1 }, |
580 { 10415, "Message-Size", RULE_OPTIONAL, -1, 1 }, | 603 { 10415, "Message-Size", RULE_OPTIONAL, -1, 1 }, |
581 { 10415, "Message-Class", RULE_OPTIONAL, -1, 1 }, | 604 { 10415, "Message-Class", RULE_OPTIONAL, -1, 1 }, |
582 { 10415, "Delivery-Report-Requested", RULE_OPTIONAL, -1, 1 }, | 605 { 10415, "Delivery-Report-Requested", RULE_OPTIONAL, -1, 1 }, |
706 vpa.avp_vendor = 10415; | 729 vpa.avp_vendor = 10415; |
707 vpa.avp_name = "PS-Information"; | 730 vpa.avp_name = "PS-Information"; |
708 CHECK_dict_search(DICT_AVP, AVP_BY_NAME_AND_VENDOR, &vpa, &rule_avp); | 731 CHECK_dict_search(DICT_AVP, AVP_BY_NAME_AND_VENDOR, &vpa, &rule_avp); |
709 struct local_rules_definition rules[] = | 732 struct local_rules_definition rules[] = |
710 { | 733 { |
734 { 10415, "Supported-Features", RULE_OPTIONAL, -1, -1 }, | |
711 { 10415, "3GPP-Charging-Id", RULE_OPTIONAL, -1, 1 }, | 735 { 10415, "3GPP-Charging-Id", RULE_OPTIONAL, -1, 1 }, |
712 { 10415, "PDN-Connection-Charging-ID", RULE_OPTIONAL, -1, 1 }, | 736 { 10415, "PDN-Connection-Charging-ID", RULE_OPTIONAL, -1, 1 }, |
713 { 10415, "Node-Id", RULE_OPTIONAL, -1, 1 }, | 737 { 10415, "Node-Id", RULE_OPTIONAL, -1, 1 }, |
714 { 10415, "3GPP-PDP-Type", RULE_OPTIONAL, -1, 1 }, | 738 { 10415, "3GPP-PDP-Type", RULE_OPTIONAL, -1, 1 }, |
715 { 10415, "PDP-Address", RULE_OPTIONAL, -1, -1 }, | 739 { 10415, "PDP-Address", RULE_OPTIONAL, -1, -1 }, |
717 { 10415, "Dynamic-Address-Flag", RULE_OPTIONAL, -1, 1 }, | 741 { 10415, "Dynamic-Address-Flag", RULE_OPTIONAL, -1, 1 }, |
718 { 10415, "Dynamic-Address-Flag-Extension", RULE_OPTIONAL, -1, 1 }, | 742 { 10415, "Dynamic-Address-Flag-Extension", RULE_OPTIONAL, -1, 1 }, |
719 { 10415, "QoS-Information", RULE_OPTIONAL, -1, 1 }, | 743 { 10415, "QoS-Information", RULE_OPTIONAL, -1, 1 }, |
720 { 10415, "SGSN-Address", RULE_OPTIONAL, -1, -1 }, | 744 { 10415, "SGSN-Address", RULE_OPTIONAL, -1, -1 }, |
721 { 10415, "GGSN-Address", RULE_OPTIONAL, -1, -1 }, | 745 { 10415, "GGSN-Address", RULE_OPTIONAL, -1, -1 }, |
746 { 10415, "TDF-IP-Address", RULE_OPTIONAL, -1, -1 }, | |
722 { 10415, "SGW-Address", RULE_OPTIONAL, -1, -1 }, | 747 { 10415, "SGW-Address", RULE_OPTIONAL, -1, -1 }, |
748 { 10415, "EPDG-Address", RULE_OPTIONAL, -1, -1 }, | |
723 { 10415, "CG-Address", RULE_OPTIONAL, -1, 1 }, | 749 { 10415, "CG-Address", RULE_OPTIONAL, -1, 1 }, |
724 { 10415, "Serving-Node-Type", RULE_OPTIONAL, -1, 1 }, | 750 { 10415, "Serving-Node-Type", RULE_OPTIONAL, -1, 1 }, |
725 { 10415, "SGW-Change", RULE_OPTIONAL, -1, 1 }, | 751 { 10415, "SGW-Change", RULE_OPTIONAL, -1, 1 }, |
726 { 10415, "3GPP-IMSI-MCC-MNC", RULE_OPTIONAL, -1, 1 }, | 752 { 10415, "3GPP-IMSI-MCC-MNC", RULE_OPTIONAL, -1, 1 }, |
727 { 10415, "IMSI-Unauthenticated-Flag", RULE_OPTIONAL, -1, 1 }, | 753 { 10415, "IMSI-Unauthenticated-Flag", RULE_OPTIONAL, -1, 1 }, |
733 { 10415, "3GPP-Charging-Characteristics", RULE_OPTIONAL, -1, 1 }, | 759 { 10415, "3GPP-Charging-Characteristics", RULE_OPTIONAL, -1, 1 }, |
734 { 10415, "Charging-Characteristics-Selection-Mode", RULE_OPTIONAL, -1, 1 }, | 760 { 10415, "Charging-Characteristics-Selection-Mode", RULE_OPTIONAL, -1, 1 }, |
735 { 10415, "3GPP-SGSN-MCC-MNC", RULE_OPTIONAL, -1, 1 }, | 761 { 10415, "3GPP-SGSN-MCC-MNC", RULE_OPTIONAL, -1, 1 }, |
736 { 10415, "3GPP-MS-TimeZone", RULE_OPTIONAL, -1, 1 }, | 762 { 10415, "3GPP-MS-TimeZone", RULE_OPTIONAL, -1, 1 }, |
737 { 10415, "Charging-Rule-Base-Name", RULE_OPTIONAL, -1, 1 }, | 763 { 10415, "Charging-Rule-Base-Name", RULE_OPTIONAL, -1, 1 }, |
764 { 10415, "ADC-Rule-Base-Name", RULE_OPTIONAL, -1, 1 }, | |
738 { 10415, "3GPP-User-Location-Info", RULE_OPTIONAL, -1, 1 }, | 765 { 10415, "3GPP-User-Location-Info", RULE_OPTIONAL, -1, 1 }, |
766 { 10415, "User-Location-Info-Time", RULE_OPTIONAL, -1, 1 }, | |
739 { 10415, "User-CSG-Information", RULE_OPTIONAL, -1, 1 }, | 767 { 10415, "User-CSG-Information", RULE_OPTIONAL, -1, 1 }, |
768 { 10415, "Presence-Reporting-Area-Information", RULE_OPTIONAL, -1, -1 }, | |
740 { 5535, "3GPP2-BSID", RULE_OPTIONAL, -1, 1 }, | 769 { 5535, "3GPP2-BSID", RULE_OPTIONAL, -1, 1 }, |
770 { 10415, "TWAN-User-Location-Info", RULE_OPTIONAL, -1, 1 }, | |
771 { 10415, "UWAN-User-Location-Info", RULE_OPTIONAL, -1, 1 }, | |
741 { 10415, "3GPP-RAT-Type", RULE_OPTIONAL, -1, 1 }, | 772 { 10415, "3GPP-RAT-Type", RULE_OPTIONAL, -1, 1 }, |
742 { 10415, "PS-Furnish-Charging-Information", RULE_OPTIONAL, -1, 1 }, | 773 { 10415, "PS-Furnish-Charging-Information", RULE_OPTIONAL, -1, 1 }, |
743 { 10415, "PDP-Context-Type", RULE_OPTIONAL, -1, 1 }, | 774 { 10415, "PDP-Context-Type", RULE_OPTIONAL, -1, 1 }, |
744 { 10415, "Offline-Charging", RULE_OPTIONAL, -1, 1 }, | 775 { 10415, "Offline-Charging", RULE_OPTIONAL, -1, 1 }, |
745 { 10415, "Traffic-Data-Volumes", RULE_OPTIONAL, -1, -1 }, | 776 { 10415, "Traffic-Data-Volumes", RULE_OPTIONAL, -1, -1 }, |
749 { 10415, "Start-Time", RULE_OPTIONAL, -1, 1 }, | 780 { 10415, "Start-Time", RULE_OPTIONAL, -1, 1 }, |
750 { 10415, "Stop-Time", RULE_OPTIONAL, -1, 1 }, | 781 { 10415, "Stop-Time", RULE_OPTIONAL, -1, 1 }, |
751 { 10415, "Change-Condition", RULE_OPTIONAL, -1, 1 }, | 782 { 10415, "Change-Condition", RULE_OPTIONAL, -1, 1 }, |
752 { 10415, "Diagnostics", RULE_OPTIONAL, -1, 1 }, | 783 { 10415, "Diagnostics", RULE_OPTIONAL, -1, 1 }, |
753 { 10415, "Low-Priority-Indicator", RULE_OPTIONAL, -1, 1 }, | 784 { 10415, "Low-Priority-Indicator", RULE_OPTIONAL, -1, 1 }, |
785 { 10415, "NBIFOM-Mode", RULE_OPTIONAL, -1, 1 }, | |
786 { 10415, "NBIFOM-Support", RULE_OPTIONAL, -1, 1 }, | |
754 { 10415, "MME-Number-for-MT-SMS", RULE_OPTIONAL, -1, 1 }, | 787 { 10415, "MME-Number-for-MT-SMS", RULE_OPTIONAL, -1, 1 }, |
755 { 10415, "MME-Name", RULE_OPTIONAL, -1, 1 }, | 788 { 10415, "MME-Name", RULE_OPTIONAL, -1, 1 }, |
756 { 10415, "MME-Realm", RULE_OPTIONAL, -1, 1 }, | 789 { 10415, "MME-Realm", RULE_OPTIONAL, -1, 1 }, |
790 #if 0 /* TODO: ETSI ES 283 034 */ | |
791 { 13019, "Logical-Access-ID", RULE_OPTIONAL, -1, 1 }, | |
792 { 13019, "Physical-Access-ID", RULE_OPTIONAL, -1, 1 }, | |
793 #endif | |
794 { 10415, "Fixed-User-Location-Info", RULE_OPTIONAL, -1, 1 }, | |
795 { 10415, "CN-Operator-Selection-Entity", RULE_OPTIONAL, -1, 1 }, | |
796 { 10415, "Enhanced-Diagnostics", RULE_OPTIONAL, -1, 1 }, | |
797 { 10415, "SGi-PtP-Tunnelling-Method", RULE_OPTIONAL, -1, 1 }, | |
798 { 10415, "CP-CIoT-EPS-Optimisation-Indicator", RULE_OPTIONAL, -1, 1 }, | |
799 { 10415, "UNI-PDU-CP-Only-Flag", RULE_OPTIONAL, -1, 1 }, | |
800 { 10415, "Serving-PLMN-Rate-Control", RULE_OPTIONAL, -1, 1 }, | |
801 { 10415, "APN-Rate-Control", RULE_OPTIONAL, -1, 1 }, | |
802 { 10415, "Charging-Per-IP-CAN-Session-Indicator", RULE_OPTIONAL, -1, 1 }, | |
803 { 10415, "RRC-Cause-Counter", RULE_OPTIONAL, -1, 1 }, | |
804 { 10415, "3GPP-PS-Data-Off-Status", RULE_OPTIONAL, -1, 1 }, | |
805 { 10415, "SCS-AS-Address", RULE_OPTIONAL, -1, 1 }, | |
806 { 10415, "Unused-Quota-Timer", RULE_OPTIONAL, -1, 1 }, | |
807 { 10415, "RAN-Secondary-RAT-Usage-Report", RULE_OPTIONAL, -1, -1 }, | |
757 }; | 808 }; |
758 PARSE_loc_rules(rules, rule_avp); | 809 PARSE_loc_rules(rules, rule_avp); |
759 } | 810 } |
760 | 811 |
761 { | 812 { |
843 { 10415, "MMS-Information", RULE_OPTIONAL, -1, 1 }, | 894 { 10415, "MMS-Information", RULE_OPTIONAL, -1, 1 }, |
844 { 10415, "LCS-Information", RULE_OPTIONAL, -1, 1 }, | 895 { 10415, "LCS-Information", RULE_OPTIONAL, -1, 1 }, |
845 { 10415, "PoC-Information", RULE_OPTIONAL, -1, 1 }, | 896 { 10415, "PoC-Information", RULE_OPTIONAL, -1, 1 }, |
846 { 10415, "MBMS-Information", RULE_OPTIONAL, -1, 1 }, | 897 { 10415, "MBMS-Information", RULE_OPTIONAL, -1, 1 }, |
847 { 10415, "SMS-Information", RULE_OPTIONAL, -1, 1 }, | 898 { 10415, "SMS-Information", RULE_OPTIONAL, -1, 1 }, |
899 { 10415, "VCS-Information", RULE_OPTIONAL, -1, 1 }, | |
848 { 10415, "MMTel-Information", RULE_OPTIONAL, -1, 1 }, | 900 { 10415, "MMTel-Information", RULE_OPTIONAL, -1, 1 }, |
901 { 10415, "ProSe-Information", RULE_OPTIONAL, -1, 1 }, | |
849 { 10415, "Service-Generic-Information", RULE_OPTIONAL, -1, 1 }, | 902 { 10415, "Service-Generic-Information", RULE_OPTIONAL, -1, 1 }, |
850 { 10415, "IM-Information", RULE_OPTIONAL, -1, 1 }, | 903 { 10415, "IM-Information", RULE_OPTIONAL, -1, 1 }, |
851 { 10415, "DCD-Information", RULE_OPTIONAL, -1, 1 }, | 904 { 10415, "DCD-Information", RULE_OPTIONAL, -1, 1 }, |
905 #if 0 /* TODO: oneM2M TS-0004 */ | |
906 { 45687, "M2M-Information", RULE_OPTIONAL, -1, 1 }, | |
907 #endif | |
908 { 10415, "CPDT-Information", RULE_OPTIONAL, -1, 1 }, | |
852 }; | 909 }; |
853 PARSE_loc_rules(rules, rule_avp); | 910 PARSE_loc_rules(rules, rule_avp); |
854 } | 911 } |
855 | 912 |
856 { | 913 { |
875 { 10415, "SM-User-Data-Header", RULE_OPTIONAL, -1, 1 }, | 932 { 10415, "SM-User-Data-Header", RULE_OPTIONAL, -1, 1 }, |
876 { 10415, "Number-Of-Messages-Sent", RULE_OPTIONAL, -1, 1 }, | 933 { 10415, "Number-Of-Messages-Sent", RULE_OPTIONAL, -1, 1 }, |
877 { 10415, "Recipient-Info", RULE_OPTIONAL, -1, -1 }, | 934 { 10415, "Recipient-Info", RULE_OPTIONAL, -1, -1 }, |
878 { 10415, "Originator-Received-Address", RULE_OPTIONAL, -1, 1 }, | 935 { 10415, "Originator-Received-Address", RULE_OPTIONAL, -1, 1 }, |
879 { 10415, "SM-Service-Type", RULE_OPTIONAL, -1, 1 }, | 936 { 10415, "SM-Service-Type", RULE_OPTIONAL, -1, 1 }, |
937 { 10415, "SMS-Result", RULE_OPTIONAL, -1, 1 }, | |
938 { 10415, "SM-Device-Trigger-Indicator", RULE_OPTIONAL, -1, 1 }, | |
939 { 10415, "MTC-IWF-Address", RULE_OPTIONAL, -1, 1 }, | |
940 { 10415, "Application-Port-Identifier", RULE_OPTIONAL, -1, 1 }, | |
941 { 10415, "External-Identifier", RULE_OPTIONAL, -1, 1 }, | |
880 }; | 942 }; |
881 PARSE_loc_rules(rules, rule_avp); | 943 PARSE_loc_rules(rules, rule_avp); |
882 } | 944 } |
883 | 945 |
884 { | 946 { |
925 { 10415, "Event-Charging-TimeStamp", RULE_OPTIONAL, -1, -1 }, | 987 { 10415, "Event-Charging-TimeStamp", RULE_OPTIONAL, -1, -1 }, |
926 }; | 988 }; |
927 PARSE_loc_rules(rules, rule_avp); | 989 PARSE_loc_rules(rules, rule_avp); |
928 } | 990 } |
929 | 991 |
930 /* OMA */ | 992 /*==================================================================*/ |
993 /* OMA DDS Charging_Data V1.0 20110201-A */ | |
994 /*==================================================================*/ | |
995 | |
931 { | 996 { |
932 struct dict_object *rule_avp; | 997 struct dict_object *rule_avp; |
933 struct dict_avp_request vpa; | 998 struct dict_avp_request vpa; |
934 vpa.avp_vendor = 10415; | 999 vpa.avp_vendor = 10415; |
935 vpa.avp_name = "DCD-Information"; | 1000 vpa.avp_name = "DCD-Information"; |