blob: 77075e3b415370aa54618b9983be53e9a8ad201f [file] [log] [blame]
Harald Weltee844bf72019-05-06 15:25:10 +02001/*
2 * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
3 * From ASN.1 module "SABP-IEs"
4 * found in "../../asn1/sabp/SABP-IEs.asn"
5 */
6
7#include <osmocom/sabp/SABP_Number-of-Broadcasts-Completed-List-Item.h>
8
9static int
10memb_number_of_broadcasts_completed_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
11 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
12 long value;
13
14 if(!sptr) {
15 _ASN_CTFAIL(app_key, td, sptr,
16 "%s: value not given (%s:%d)",
17 td->name, __FILE__, __LINE__);
18 return -1;
19 }
20
21 value = *(const long *)sptr;
22
23 if((value >= 0l && value <= 65535l)) {
24 /* Constraint check succeeded */
25 return 0;
26 } else {
27 _ASN_CTFAIL(app_key, td, sptr,
28 "%s: constraint failed (%s:%d)",
29 td->name, __FILE__, __LINE__);
30 return -1;
31 }
32}
33
34static asn_per_constraints_t asn_PER_memb_number_of_broadcasts_completed_constr_3 GCC_NOTUSED = {
35 { APC_CONSTRAINED, 16, 16, 0l, 65535l } /* (0..65535) */,
36 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
37 0, 0 /* No PER value map */
38};
39static asn_TYPE_member_t asn_MBR_SABP_Number_of_Broadcasts_Completed_List_Item_1[] = {
40 { ATF_NOFLAGS, 0, offsetof(struct SABP_Number_of_Broadcasts_Completed_List_Item, service_area_identifier),
41 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
42 -1, /* IMPLICIT tag at current level */
43 &asn_DEF_SABP_Service_Area_Identifier,
44 0, /* Defer constraints checking to the member type */
45 0, /* No PER visible constraints */
46 0,
47 "service-area-identifier"
48 },
49 { ATF_NOFLAGS, 0, offsetof(struct SABP_Number_of_Broadcasts_Completed_List_Item, number_of_broadcasts_completed),
50 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
51 -1, /* IMPLICIT tag at current level */
52 &asn_DEF_NativeInteger,
53 memb_number_of_broadcasts_completed_constraint_1,
54 &asn_PER_memb_number_of_broadcasts_completed_constr_3,
55 0,
56 "number-of-broadcasts-completed"
57 },
58 { ATF_POINTER, 2, offsetof(struct SABP_Number_of_Broadcasts_Completed_List_Item, number_of_broadcasts_completed_info),
59 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
60 -1, /* IMPLICIT tag at current level */
61 &asn_DEF_SABP_Number_Of_Broadcasts_Completed_Info,
62 0, /* Defer constraints checking to the member type */
63 0, /* No PER visible constraints */
64 0,
65 "number-of-broadcasts-completed-info"
66 },
67 { ATF_POINTER, 1, offsetof(struct SABP_Number_of_Broadcasts_Completed_List_Item, iE_Extensions),
68 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
69 -1, /* IMPLICIT tag at current level */
70 &asn_DEF_SABP_IE_Extensions,
71 0, /* Defer constraints checking to the member type */
72 0, /* No PER visible constraints */
73 0,
74 "iE-Extensions"
75 },
76};
77static const int asn_MAP_SABP_Number_of_Broadcasts_Completed_List_Item_oms_1[] = { 2, 3 };
78static const ber_tlv_tag_t asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1[] = {
79 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
80};
81static const asn_TYPE_tag2member_t asn_MAP_SABP_Number_of_Broadcasts_Completed_List_Item_tag2el_1[] = {
82 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* service-area-identifier */
83 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* number-of-broadcasts-completed */
84 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* number-of-broadcasts-completed-info */
85 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
86};
87static asn_SEQUENCE_specifics_t asn_SPC_SABP_Number_of_Broadcasts_Completed_List_Item_specs_1 = {
88 sizeof(struct SABP_Number_of_Broadcasts_Completed_List_Item),
89 offsetof(struct SABP_Number_of_Broadcasts_Completed_List_Item, _asn_ctx),
90 asn_MAP_SABP_Number_of_Broadcasts_Completed_List_Item_tag2el_1,
91 4, /* Count of tags in the map */
92 asn_MAP_SABP_Number_of_Broadcasts_Completed_List_Item_oms_1, /* Optional members */
93 2, 0, /* Root/Additions */
94 3, /* Start extensions */
95 5 /* Stop extensions */
96};
97asn_TYPE_descriptor_t asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item = {
98 "SABP_Number-of-Broadcasts-Completed-List-Item",
99 "SABP_Number-of-Broadcasts-Completed-List-Item",
100 SEQUENCE_free,
101 SEQUENCE_print,
102 SEQUENCE_constraint,
103 SEQUENCE_decode_ber,
104 SEQUENCE_encode_der,
105 SEQUENCE_decode_xer,
106 SEQUENCE_encode_xer,
107 SEQUENCE_decode_uper,
108 SEQUENCE_encode_uper,
109 SEQUENCE_decode_aper,
110 SEQUENCE_encode_aper,
111 0, /* Use generic outmost tag fetcher */
112 asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1,
113 sizeof(asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1)
114 /sizeof(asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1[0]), /* 1 */
115 asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1, /* Same as above */
116 sizeof(asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1)
117 /sizeof(asn_DEF_SABP_Number_of_Broadcasts_Completed_List_Item_tags_1[0]), /* 1 */
118 0, /* No PER visible constraints */
119 asn_MBR_SABP_Number_of_Broadcasts_Completed_List_Item_1,
120 4, /* Elements count */
121 &asn_SPC_SABP_Number_of_Broadcasts_Completed_List_Item_specs_1 /* Additional specs */
122};
123