/src/open5gs/lib/asn1c/s1ap/S1AP_CauseNas.c
Line | Count | Source |
1 | | /* |
2 | | * Generated by asn1c-v1.4-43-gb7926896-2026-05-03 (https://github.com/mouse07410/asn1c) |
3 | | * From ASN.1 module "S1AP-IEs" |
4 | | * found in "../support/s1ap-r19.1.0/36413-j10.asn" |
5 | | * `asn1c -pdu=all -fprefix=S1AP_ -fcompound-names -findirect-choice -fno-include-deps -no-gen-BER -no-gen-XER -no-gen-JER -no-gen-CBOR -no-gen-OER -no-gen-UPER` |
6 | | */ |
7 | | |
8 | | #include "S1AP_CauseNas.h" |
9 | | |
10 | | /* |
11 | | * This type is implemented using NativeEnumerated, |
12 | | * so here we adjust the DEF accordingly. |
13 | | */ |
14 | | #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) |
15 | | asn_per_constraints_t asn_PER_type_S1AP_CauseNas_constr_1 CC_NOTUSED = { |
16 | | { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, |
17 | | { APC_UNCONSTRAINED, -1, -1, 0, 0 }, |
18 | | 0, 0 /* No PER value map */ |
19 | | }; |
20 | | #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ |
21 | | static const asn_INTEGER_enum_map_t asn_MAP_S1AP_CauseNas_value2enum_1[] = { |
22 | | { 0, 14, "normal-release" }, |
23 | | { 1, 22, "authentication-failure" }, |
24 | | { 2, 6, "detach" }, |
25 | | { 3, 11, "unspecified" }, |
26 | | { 4, 23, "csg-subscription-expiry" }, |
27 | | { 5, 27, "uE-not-in-PLMN-serving-area" }, |
28 | | { 6, 18, "iab-not-authorized" } |
29 | | /* This list is extensible */ |
30 | | }; |
31 | | static int asn_validate_S1AP_CauseNas_1(const asn_TYPE_descriptor_t *td, |
32 | | const void *sptr, |
33 | | asn_app_constraint_failed_f *ctfailcb, |
34 | 0 | void* app_key) { |
35 | 0 | if(! sptr) { return -1; } |
36 | 0 | e_S1AP_CauseNas value = *(e_S1AP_CauseNas*)sptr; |
37 | 0 | switch(value) { |
38 | 0 | case S1AP_CauseNas_normal_release: |
39 | 0 | case S1AP_CauseNas_authentication_failure: |
40 | 0 | case S1AP_CauseNas_detach: |
41 | 0 | case S1AP_CauseNas_unspecified: |
42 | 0 | case S1AP_CauseNas_csg_subscription_expiry: |
43 | 0 | case S1AP_CauseNas_uE_not_in_PLMN_serving_area: |
44 | 0 | case S1AP_CauseNas_iab_not_authorized: |
45 | 0 | return 0; |
46 | 0 | } |
47 | 0 | return -1; |
48 | 0 | } |
49 | | static const unsigned int asn_MAP_S1AP_CauseNas_enum2value_1[] = { |
50 | | 1, /* authentication-failure(1) */ |
51 | | 4, /* csg-subscription-expiry(4) */ |
52 | | 2, /* detach(2) */ |
53 | | 6, /* iab-not-authorized(6) */ |
54 | | 0, /* normal-release(0) */ |
55 | | 5, /* uE-not-in-PLMN-serving-area(5) */ |
56 | | 3 /* unspecified(3) */ |
57 | | /* This list is extensible */ |
58 | | }; |
59 | | const asn_INTEGER_specifics_t asn_SPC_S1AP_CauseNas_specs_1 = { |
60 | | asn_MAP_S1AP_CauseNas_value2enum_1, /* "tag" => N; sorted by tag */ |
61 | | asn_MAP_S1AP_CauseNas_enum2value_1, /* N => "tag"; sorted by N */ |
62 | | 7, /* Number of elements in the maps */ |
63 | | 5, /* Extensions before this member */ |
64 | | 1, /* Strict enumeration */ |
65 | | 0, /* Native long size */ |
66 | | 0 |
67 | | }; |
68 | | static const ber_tlv_tag_t asn_DEF_S1AP_CauseNas_tags_1[] = { |
69 | | (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) |
70 | | }; |
71 | | asn_TYPE_descriptor_t asn_DEF_S1AP_CauseNas = { |
72 | | "CauseNas", |
73 | | "CauseNas", |
74 | | &asn_OP_NativeEnumerated, |
75 | | asn_DEF_S1AP_CauseNas_tags_1, |
76 | | sizeof(asn_DEF_S1AP_CauseNas_tags_1) |
77 | | /sizeof(asn_DEF_S1AP_CauseNas_tags_1[0]), /* 1 */ |
78 | | asn_DEF_S1AP_CauseNas_tags_1, /* Same as above */ |
79 | | sizeof(asn_DEF_S1AP_CauseNas_tags_1) |
80 | | /sizeof(asn_DEF_S1AP_CauseNas_tags_1[0]), /* 1 */ |
81 | | { |
82 | | #if !defined(ASN_DISABLE_OER_SUPPORT) |
83 | | 0, |
84 | | #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */ |
85 | | #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) |
86 | | &asn_PER_type_S1AP_CauseNas_constr_1, |
87 | | #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */ |
88 | | #if !defined(ASN_DISABLE_JER_SUPPORT) |
89 | | 0, |
90 | | #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */ |
91 | | asn_validate_S1AP_CauseNas_1 |
92 | | }, |
93 | | 0, 0, /* Defined elsewhere */ |
94 | | &asn_SPC_S1AP_CauseNas_specs_1 /* Additional specs */ |
95 | | }; |
96 | | |