652f663c86d62064f7d0de8c882de5f0f929421f
[ric-app/kpimon.git] / asn1c_defs / all-defs / ExtendedBitRate.c
1 /*\r
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)\r
3  * From ASN.1 module "X2AP-IEs"\r
4  *      found in "../../asn_defs/asn1/x2ap-modified-15-05.asn"\r
5  *      `asn1c -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-OER`\r
6  */\r
7 \r
8 #include "ExtendedBitRate.h"\r
9 \r
10 int\r
11 ExtendedBitRate_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,\r
12                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {\r
13         const INTEGER_t *st = (const INTEGER_t *)sptr;\r
14         long value;\r
15         \r
16         if(!sptr) {\r
17                 ASN__CTFAIL(app_key, td, sptr,\r
18                         "%s: value not given (%s:%d)",\r
19                         td->name, __FILE__, __LINE__);\r
20                 return -1;\r
21         }\r
22         \r
23         if(asn_INTEGER2long(st, &value)) {\r
24                 ASN__CTFAIL(app_key, td, sptr,\r
25                         "%s: value too large (%s:%d)",\r
26                         td->name, __FILE__, __LINE__);\r
27                 return -1;\r
28         }\r
29         \r
30         if((value >= 10000000001 && value <= 4000000000000)) {\r
31                 /* Constraint check succeeded */\r
32                 return 0;\r
33         } else {\r
34                 ASN__CTFAIL(app_key, td, sptr,\r
35                         "%s: constraint failed (%s:%d)",\r
36                         td->name, __FILE__, __LINE__);\r
37                 return -1;\r
38         }\r
39 }\r
40 \r
41 /*\r
42  * This type is implemented using INTEGER,\r
43  * so here we adjust the DEF accordingly.\r
44  */\r
45 static asn_per_constraints_t asn_PER_type_ExtendedBitRate_constr_1 CC_NOTUSED = {\r
46         { APC_CONSTRAINED | APC_EXTENSIBLE,  42, -1,  10000000001,  4000000000000 }     /* (10000000001..4000000000000,...) */,\r
47         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },\r
48         0, 0    /* No PER value map */\r
49 };\r
50 static const ber_tlv_tag_t asn_DEF_ExtendedBitRate_tags_1[] = {\r
51         (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))\r
52 };\r
53 asn_TYPE_descriptor_t asn_DEF_ExtendedBitRate = {\r
54         "ExtendedBitRate",\r
55         "ExtendedBitRate",\r
56         &asn_OP_INTEGER,\r
57         asn_DEF_ExtendedBitRate_tags_1,\r
58         sizeof(asn_DEF_ExtendedBitRate_tags_1)\r
59                 /sizeof(asn_DEF_ExtendedBitRate_tags_1[0]), /* 1 */\r
60         asn_DEF_ExtendedBitRate_tags_1, /* Same as above */\r
61         sizeof(asn_DEF_ExtendedBitRate_tags_1)\r
62                 /sizeof(asn_DEF_ExtendedBitRate_tags_1[0]), /* 1 */\r
63         { 0, &asn_PER_type_ExtendedBitRate_constr_1, ExtendedBitRate_constraint },\r
64         0, 0,   /* No members */\r
65         0       /* No specifics */\r
66 };\r
67 \r