Navigation


Changeset 1446:48438d36e435 in freeDiameter


Ignore:
Timestamp:
Feb 27, 2020, 3:34:01 PM (4 years ago)
Author:
Luke Mewburn <luke@mewburn.net>
Branch:
default
Phase:
public
Message:

Add Enumerated(3GPP/Experimental-Result-Code)

Add 3GPP Experimental-Result-Code values from
3GPP TS 29.230 V15.7.0 (2019-12) section 8.1.

There is a DIAMETER_ERROR_ABSENT_USER name conflict between:

  • 3GPP TS 29.173 § 6.3.4.1 DIAMETER_ERROR_ABSENT_USER (4201). (For SLh).
  • 3GPP TS 29.338 § 7.3.3 DIAMETER_ERROR_ABSENT_USER (5550). (For S6c, SGd).

Rename 4201 from 3GPP TS 29.173 to DIAMETER_ERROR_ABSENT_USER-29.173.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/dict_dcca_3gpp/dict_dcca_3gpp.c

    r1441 r1446  
    145145static int dict_dcca_3gpp_entry(char * conffile)
    146146{
    147         /* Applications section */
     147        /*==================================================================*/
     148        /* Applications section                                             */
     149        /*==================================================================*/
     150
    148151        {               
    149152                /* Create the vendors */
     
    160163       
    161164
     165        /*==================================================================*/
     166        /* Types section                                                    */
     167        /*==================================================================*/
     168
    162169        struct dict_object * Address_type;
    163170        struct dict_object * DiameterIdentity_type;
     
    173180        CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "Time", &Time_type);
    174181        CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "UTF8String", &UTF8String_type);
     182
     183
     184        /*==================================================================*/
     185        /* AVPs section                                                     */
     186        /*==================================================================*/
     187
     188
     189        /* 3GPP Experimental-Result-Code ENUMVAL Unsigned32                 */
     190        /* 3GPP TS 29.230 V15.7.0 (2019-12) section 8.1                     */
     191        {
     192                struct dict_object      *type;
     193                struct dict_type_data    tdata = { AVP_TYPE_UNSIGNED32, "Enumerated(3GPP/Experimental-Result-Code)", NULL, NULL};
     194                struct dict_enumval_data tvals[] = {
     195                        enumval_def_u32(2001,   "DIAMETER_FIRST_REGISTRATION"),
     196                        enumval_def_u32(2002,   "DIAMETER_SUBSEQUENT_REGISTRATION"),
     197                        enumval_def_u32(2003,   "DIAMETER_UNREGISTERED_SERVICE"),
     198                        /*
     199                         * 3GPP TS 29.229 V5.3.0 (2003-03) renamed 2004 from DIAMETER_SUCCESS_NOT SUPPORTED_USER_DATA.
     200                         */
     201                        enumval_def_u32(2004,   "DIAMETER_SUCCESS_SERVER_NAME_NOT_STORED"),
     202                        /*
     203                         * 3GPP TS 29.229 V5.3.0 (2003-03) renamed 2005 from DIAMETER_SUCCESS_SERVER_NAME_NOT_STORED.
     204                         * 3GPP TS 29.229 V7.2.0 (2006-06) deprecated 2005 DIAMETER_SERVER_SELECTION.
     205                         */
     206                        enumval_def_u32(2005,   "DIAMETER_SERVER_SELECTION"),
     207                        enumval_def_u32(2021,   "DIAMETER_PDP_CONTEXT_DELETION_INDICATION"),
     208                        enumval_def_u32(2421,   "DIAMETER_QOS_FLOW_DELETION_INDICATION"),
     209                        enumval_def_u32(4100,   "DIAMETER_USER_DATA_NOT_AVAILABLE"),
     210                        enumval_def_u32(4101,   "DIAMETER_PRIOR_UPDATE_IN_PROGRESS"),
     211                        enumval_def_u32(4121,   "DIAMETER_ERROR_OUT_OF_RESOURCES"),
     212                        enumval_def_u32(4141,   "DIAMETER_PCC_BEARER_EVENT"),
     213                        enumval_def_u32(4142,   "DIAMETER_BEARER_EVENT"),
     214                        enumval_def_u32(4143,   "DIAMETER_AN_GW_FAILED"),
     215                        enumval_def_u32(4144,   "DIAMETER_PENDING_TRANSACTION"),
     216                        enumval_def_u32(4145,   "DIAMETER_UE_STATUS_SUSPEND"),
     217                        enumval_def_u32(4181,   "DIAMETER_AUTHENTICATION_DATA_UNAVAILABLE"),
     218                        enumval_def_u32(4182,   "DIAMETER_ERROR_CAMEL_SUBSCRIPTION_PRESENT"),
     219                        /*
     220                         * DIAMETER_ERROR_ABSENT_USER name conflict between:
     221                         * - 3GPP TS 29.173 § 6.3.4.1 DIAMETER_ERROR_ABSENT_USER (4201). (For SLh).
     222                         * - 3GPP TS 29.338 § 7.3.3 DIAMETER_ERROR_ABSENT_USER (5550). (For S6c, SGd).
     223                         * Rename 4201 from 3GPP TS 29.173 to DIAMETER_ERROR_ABSENT_USER-29.173.
     224                         */
     225                        enumval_def_u32(4201,   "DIAMETER_ERROR_ABSENT_USER-29.173"),
     226                        enumval_def_u32(4221,   "DIAMETER_ERROR_UNREACHABLE_USER"),
     227                        enumval_def_u32(4222,   "DIAMETER_ERROR_SUSPENDED_USER"),
     228                        enumval_def_u32(4223,   "DIAMETER_ERROR_DETACHED_USER"),
     229                        enumval_def_u32(4224,   "DIAMETER_ERROR_POSITIONING_DENIED"),
     230                        enumval_def_u32(4225,   "DIAMETER_ERROR_POSITIONING_FAILED"),
     231                        enumval_def_u32(4226,   "DIAMETER_ERROR_UNKNOWN_UNREACHABLE LCS_CLIENT"),
     232                        enumval_def_u32(4241,   "DIAMETER_ERROR_NO_AVAILABLE_POLICY_COUNTERS"),
     233                        enumval_def_u32(4261,   "REQUESTED_SERVICE_TEMPORARILY_NOT_AUTHORIZED"),
     234                        enumval_def_u32(5001,   "DIAMETER_ERROR_USER_UNKNOWN"),
     235                        enumval_def_u32(5002,   "DIAMETER_ERROR_IDENTITIES_DONT_MATCH"),
     236                        enumval_def_u32(5003,   "DIAMETER_ERROR_IDENTITY_NOT_REGISTERED"),
     237                        enumval_def_u32(5004,   "DIAMETER_ERROR_ROAMING_NOT_ALLOWED"),
     238                        enumval_def_u32(5005,   "DIAMETER_ERROR_IDENTITY_ALREADY_REGISTERED"),
     239                        enumval_def_u32(5006,   "DIAMETER_ERROR_AUTH_SCHEME_NOT_SUPPORTED"),
     240                        enumval_def_u32(5007,   "DIAMETER_ERROR_IN_ASSIGNMENT_TYPE"),
     241                        enumval_def_u32(5008,   "DIAMETER_ERROR_TOO_MUCH_DATA"),
     242                        enumval_def_u32(5009,   "DIAMETER_ERROR_NOT_SUPPORTED_USER_DATA"),
     243                        enumval_def_u32(5011,   "DIAMETER_ERROR_FEATURE_UNSUPPORTED"),
     244                        enumval_def_u32(5012,   "DIAMETER_ERROR_SERVING_NODE_FEATURE_UNSUPPORTED"),
     245                        enumval_def_u32(5041,   "DIAMETER_ERROR_USER_NO_WLAN_SUBSCRIPTION"),
     246                        enumval_def_u32(5042,   "DIAMETER_ERROR_W-APN_UNUSED_BY_USER"),
     247                        enumval_def_u32(5043,   "DIAMETER_ERROR_NO_ACCESS_INDEPENDENT_SUBSCRIPTION"),
     248                        enumval_def_u32(5044,   "DIAMETER_ERROR_USER_NO_W-APN_SUBSCRIPTION"),
     249                        enumval_def_u32(5045,   "DIAMETER_ERROR_UNSUITABLE_NETWORK"),
     250                        enumval_def_u32(5061,   "INVALID_SERVICE_INFORMATION"),
     251                        enumval_def_u32(5062,   "FILTER_RESTRICTIONS"),
     252                        enumval_def_u32(5063,   "REQUESTED_SERVICE_NOT_AUTHORIZED"),
     253                        enumval_def_u32(5064,   "DUPLICATED_AF_SESSION"),
     254                        enumval_def_u32(5065,   "IP-CAN_SESSION_NOT_AVAILABLE"),
     255                        enumval_def_u32(5066,   "UNAUTHORIZED_NON_EMERGENCY_SESSION"),
     256                        enumval_def_u32(5067,   "UNAUTHORIZED_SPONSORED_DATA_CONNECTIVITY"),
     257                        enumval_def_u32(5068,   "TEMPORARY_NETWORK_FAILURE"),
     258                        enumval_def_u32(5100,   "DIAMETER_ERROR_USER_DATA_NOT_RECOGNIZED"),
     259                        enumval_def_u32(5101,   "DIAMETER_ERROR_OPERATION_NOT_ALLOWED"),
     260                        enumval_def_u32(5102,   "DIAMETER_ERROR_USER_DATA_CANNOT_BE_READ"),
     261                        enumval_def_u32(5103,   "DIAMETER_ERROR_USER_DATA_CANNOT_BE_MODIFIED"),
     262                        enumval_def_u32(5104,   "DIAMETER_ERROR_USER_DATA_CANNOT_BE_NOTIFIED"),
     263                        enumval_def_u32(5105,   "DIAMETER_ERROR_TRANSPARENT_DATA OUT_OF_SYNC"),
     264                        enumval_def_u32(5106,   "DIAMETER_ERROR_SUBS_DATA_ABSENT"),
     265                        enumval_def_u32(5107,   "DIAMETER_ERROR_NO_SUBSCRIPTION_TO_DATA"),
     266                        enumval_def_u32(5108,   "DIAMETER_ERROR_DSAI_NOT_AVAILABLE"),
     267                        enumval_def_u32(5120,   "DIAMETER_ERROR_START_INDICATION"),
     268                        enumval_def_u32(5121,   "DIAMETER_ERROR_STOP_INDICATION"),
     269                        enumval_def_u32(5122,   "DIAMETER_ERROR_UNKNOWN_MBMS_BEARER_SERVICE"),
     270                        enumval_def_u32(5123,   "DIAMETER_ERROR_SERVICE_AREA"),
     271                        enumval_def_u32(5140,   "DIAMETER_ERROR_INITIAL_PARAMETERS"),
     272                        enumval_def_u32(5141,   "DIAMETER_ERROR_TRIGGER_EVENT"),
     273                        enumval_def_u32(5142,   "DIAMETER_PCC_RULE_EVENT"),
     274                        enumval_def_u32(5143,   "DIAMETER_ERROR_BEARER_NOT_AUTHORIZED"),
     275                        enumval_def_u32(5144,   "DIAMETER_ERROR_TRAFFIC_MAPPING_INFO_REJECTED"),
     276                        enumval_def_u32(5145,   "DIAMETER_QOS_RULE_EVENT"),
     277                        enumval_def_u32(5147,   "DIAMETER_ERROR_CONFLICTING_REQUEST"),
     278                        enumval_def_u32(5148,   "DIAMETER_ADC_RULE_EVENT"),
     279                        enumval_def_u32(5149,   "DIAMETER_ERROR_NBIFOM_NOT_AUTHORIZED"),
     280                        enumval_def_u32(5401,   "DIAMETER_ERROR_IMPI_UNKNOWN"),
     281                        enumval_def_u32(5402,   "DIAMETER_ERROR_NOT_AUTHORIZED"),
     282                        enumval_def_u32(5403,   "DIAMETER_ERROR_TRANSACTION_IDENTIFIER_INVALID"),
     283                        enumval_def_u32(5420,   "DIAMETER_ERROR_UNKNOWN_EPS_SUBSCRIPTION"),
     284                        enumval_def_u32(5421,   "DIAMETER_ERROR_RAT_NOT_ALLOWED"),
     285                        enumval_def_u32(5422,   "DIAMETER_ERROR_EQUIPMENT_UNKNOWN"),
     286                        enumval_def_u32(5423,   "DIAMETER_ERROR_UNKNOWN_SERVING_NODE"),
     287                        enumval_def_u32(5450,   "DIAMETER_ERROR_USER_NO_NON_3GPP_SUBSCRIPTION"),
     288                        enumval_def_u32(5451,   "DIAMETER_ERROR_USER_NO_APN_SUBSCRIPTION"),
     289                        enumval_def_u32(5452,   "DIAMETER_ERROR_RAT_TYPE_NOT_ALLOWED"),
     290                        enumval_def_u32(5453,   "DIAMETER_ERROR_LATE_OVERLAPPING_REQUEST"),
     291                        enumval_def_u32(5454,   "DIAMETER_ERROR_TIMED_OUT_REQUEST"),
     292                        enumval_def_u32(5470,   "DIAMETER_ERROR_SUBSESSION"),
     293                        enumval_def_u32(5471,   "DIAMETER_ERROR_ONGOING_SESSION_ESTABLISHMENT"),
     294                        enumval_def_u32(5490,   "DIAMETER_ERROR_UNAUTHORIZED_REQUESTING_NETWORK"),
     295                        enumval_def_u32(5510,   "DIAMETER_ERROR_UNAUTHORIZED_REQUESTING_ENTITY"),
     296                        enumval_def_u32(5511,   "DIAMETER_ERROR_UNAUTHORIZED_SERVICE"),
     297                        enumval_def_u32(5512,   "DIAMETER_ERROR_REQUESTED_RANGE_IS_NOT ALLOWED"),
     298                        enumval_def_u32(5513,   "DIAMETER_ERROR_CONFIGURATION_EVENT_STORAGE_NOT_SUCCESSFUL"),
     299                        enumval_def_u32(5514,   "DIAMETER_ERROR_CONFIGURATION_EVENT_NON_EXISTANT"),
     300                        enumval_def_u32(5515,   "DIAMETER_ERROR_SCEF_REFERENCE_ID_UNKNOWN"),
     301                        enumval_def_u32(5530,   "DIAMETER_ERROR_INVALID_SME_ADDRESS"),
     302                        enumval_def_u32(5531,   "DIAMETER_ERROR_SC_CONGESTION"),
     303                        enumval_def_u32(5532,   "DIAMETER_ERROR_SM_PROTOCOL"),
     304                        enumval_def_u32(5533,   "DIAMETER_ERROR_TRIGGER_REPLACE_FAILURE"),
     305                        enumval_def_u32(5534,   "DIAMETER_ERROR_TRIGGER_RECALL_FAILURE"),
     306                        enumval_def_u32(5535,   "DIAMETER_ERROR_ORIGINAL_MESSAGE_NOT_PENDING"),
     307                        enumval_def_u32(5550,   "DIAMETER_ERROR_ABSENT_USER"),
     308                        enumval_def_u32(5551,   "DIAMETER_ERROR_USER_BUSY_FOR_MT_SMS"),
     309                        enumval_def_u32(5552,   "DIAMETER_ERROR_FACILITY_NOT_SUPPORTED"),
     310                        enumval_def_u32(5553,   "DIAMETER_ERROR_ILLEGAL_USER"),
     311                        enumval_def_u32(5554,   "DIAMETER_ERROR_ILLEGAL_EQUIPMENT"),
     312                        enumval_def_u32(5555,   "DIAMETER_ERROR_SM_DELIVERY_FAILURE"),
     313                        enumval_def_u32(5556,   "DIAMETER_ERROR_SERVICE_NOT_SUBSCRIBED"),
     314                        enumval_def_u32(5557,   "DIAMETER_ERROR_SERVICE_BARRED"),
     315                        enumval_def_u32(5558,   "DIAMETER_ERROR_MWD_LIST_FULL"),
     316                        enumval_def_u32(5570,   "DIAMETER_ERROR_UNKNOWN_POLICY_COUNTERS"),
     317                        enumval_def_u32(5590,   "DIAMETER_ERROR_ORIGIN_ALUID_UNKNOWN"),
     318                        enumval_def_u32(5591,   "DIAMETER_ERROR_TARGET_ALUID_UNKNOWN"),
     319                        enumval_def_u32(5592,   "DIAMETER_ERROR_PFID_UNKNOWN"),
     320                        enumval_def_u32(5593,   "DIAMETER_ERROR_APP_REGISTER_REJECT"),
     321                        enumval_def_u32(5594,   "DIAMETER_ERROR_PROSE_MAP_REQUEST_DISALLOWED"),
     322                        enumval_def_u32(5595,   "DIAMETER_ERROR_MAP_REQUEST_REJECT"),
     323                        enumval_def_u32(5596,   "DIAMETER_ERROR_REQUESTING_RPAUID_UNKNOWN"),
     324                        enumval_def_u32(5597,   "DIAMETER_ERROR_UNKNOWN_OR_INVALID_TARGET_SET"),
     325                        enumval_def_u32(5598,   "DIAMETER_ERROR_MISSING_APPLICATION_DATA"),
     326                        enumval_def_u32(5599,   "DIAMETER_ERROR_AUTHORIZATION_REJECT"),
     327                        enumval_def_u32(5600,   "DIAMETER_ERROR_DISCOVERY_NOT_PERMITTED"),
     328                        enumval_def_u32(5601,   "DIAMETER_ERROR_TARGET_RPAUID_UNKNOWN"),
     329                        enumval_def_u32(5602,   "DIAMETER_ERROR_INVALID_APPLICATION_DATA"),
     330                        enumval_def_u32(5610,   "DIAMETER_ERROR_UNKNOWN_PROSE_SUBSCRIPTION"),
     331                        enumval_def_u32(5611,   "DIAMETER_ERROR_PROSE_NOT_ALLOWED"),
     332                        enumval_def_u32(5612,   "DIAMETER_ERROR_UE_LOCATION_UNKNOWN"),
     333                        enumval_def_u32(5630,   "DIAMETER_ERROR_NO_ASSOCIATED_DISCOVERY_FILTER"),
     334                        enumval_def_u32(5631,   "DIAMETER_ERROR_ANNOUNCING_UNAUTHORIZED_IN_PLMN"),
     335                        enumval_def_u32(5632,   "DIAMETER_ERROR_INVALID_APPLICATION_CODE"),
     336                        enumval_def_u32(5633,   "DIAMETER_ERROR_PROXIMITY_UNAUTHORIZED"),
     337                        enumval_def_u32(5634,   "DIAMETER_ERROR_PROXIMITY_REJECTED"),
     338                        enumval_def_u32(5635,   "DIAMETER_ERROR_NO_PROXIMITY_REQUEST"),
     339                        enumval_def_u32(5636,   "DIAMETER_ERROR_UNAUTHORIZED_SERVICE_IN_THIS_PLMN"),
     340                        enumval_def_u32(5637,   "DIAMETER_ERROR_PROXIMITY_CANCELLED"),
     341                        enumval_def_u32(5638,   "DIAMETER_ERROR_INVALID_TARGET_PDUID"),
     342                        enumval_def_u32(5639,   "DIAMETER_ERROR_INVALID_TARGET_RPAUID"),
     343                        enumval_def_u32(5640,   "DIAMETER_ERROR_NO_ASSOCIATED_RESTRICTED_CODE"),
     344                        enumval_def_u32(5641,   "DIAMETER_ERROR_INVALID_DISCOVERY_TYPE"),
     345                        enumval_def_u32(5650,   "DIAMETER_ERROR_REQUESTED_LOCATION_NOT_SERVED"),
     346                        enumval_def_u32(5651,   "DIAMETER_ERROR_INVALID_EPS_BEARER"),
     347                        enumval_def_u32(5652,   "DIAMETER_ERROR_NIDD_CONFIGURATION_NOT_AVAILABLE"),
     348                        enumval_def_u32(5653,   "DIAMETER_ERROR_USER_TEMPORARILY_UNREACHABLE"),
     349                        enumval_def_u32(5670,   "DIAMETER_ERROR_UNKNKOWN_DATA"),
     350                        enumval_def_u32(5671,   "DIAMETER_ERROR_REQUIRED_KEY_NOT_PROVIDED"),
     351                        enumval_def_u32(5690,   "DIAMETER_ERROR_UNKNOWN_V2X_SUBSCRIPTION"),
     352                        enumval_def_u32(5691,   "DIAMETER_ERROR_V2X_NOT_ALLOWED"),
     353                };
     354                int i;
     355                /* Create the Enumerated type and enumerated values */
     356                CHECK_dict_new( DICT_TYPE, &tdata , NULL, &type);
     357                for (i = 0; i < sizeof(tvals) / sizeof(tvals[0]); i++) {
     358                        CHECK_dict_new( DICT_ENUMVAL, &tvals[i], type, NULL);
     359                }
     360        }
     361
    175362
    176363        /*==================================================================*/
     
    1065910846                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
    1066010847        };
     10848
     10849
     10850        /*==================================================================*/
     10851        /* Rules section                                                    */
     10852        /*==================================================================*/
    1066110853
    1066210854        /* 29.212 */
Note: See TracChangeset for help on using the changeset viewer.