]> git.stg.codes - stg.git/blob - libs/smux/IpAddrEntry.c
Merge remote-tracking branch 'github/master'
[stg.git] / libs / smux / IpAddrEntry.c
1 /*
2  * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
3  * From ASN.1 module "RFC1213-MIB"
4  *      found in "RFC1213-MIB.asn1"
5  *      `asn1c -S/mnt/data/software/asn1c/skeletons -fcompound-names -fwide-types`
6  */
7
8 #include "IpAddrEntry.h"
9
10 static int
11 memb_ipAdEntReasmMaxSize_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
12                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
13         long value;
14         
15         if(!sptr) {
16                 ASN__CTFAIL(app_key, td, sptr,
17                         "%s: value not given (%s:%d)",
18                         td->name, __FILE__, __LINE__);
19                 return -1;
20         }
21         
22         value = *(const long *)sptr;
23         
24         if((value >= 0 && value <= 65535)) {
25                 /* Constraint check succeeded */
26                 return 0;
27         } else {
28                 ASN__CTFAIL(app_key, td, sptr,
29                         "%s: constraint failed (%s:%d)",
30                         td->name, __FILE__, __LINE__);
31                 return -1;
32         }
33 }
34
35 static asn_TYPE_member_t asn_MBR_IpAddrEntry_1[] = {
36         { ATF_NOFLAGS, 0, offsetof(struct IpAddrEntry, ipAdEntAddr),
37                 (ASN_TAG_CLASS_APPLICATION | (0 << 2)),
38                 0,
39                 &asn_DEF_IpAddress,
40                 0,      /* Defer constraints checking to the member type */
41                 0,      /* PER is not compiled, use -gen-PER */
42                 0,
43                 "ipAdEntAddr"
44                 },
45         { ATF_NOFLAGS, 0, offsetof(struct IpAddrEntry, ipAdEntIfIndex),
46                 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
47                 0,
48                 &asn_DEF_INTEGER,
49                 0,      /* Defer constraints checking to the member type */
50                 0,      /* PER is not compiled, use -gen-PER */
51                 0,
52                 "ipAdEntIfIndex"
53                 },
54         { ATF_NOFLAGS, 0, offsetof(struct IpAddrEntry, ipAdEntNetMask),
55                 (ASN_TAG_CLASS_APPLICATION | (0 << 2)),
56                 0,
57                 &asn_DEF_IpAddress,
58                 0,      /* Defer constraints checking to the member type */
59                 0,      /* PER is not compiled, use -gen-PER */
60                 0,
61                 "ipAdEntNetMask"
62                 },
63         { ATF_NOFLAGS, 0, offsetof(struct IpAddrEntry, ipAdEntBcastAddr),
64                 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
65                 0,
66                 &asn_DEF_INTEGER,
67                 0,      /* Defer constraints checking to the member type */
68                 0,      /* PER is not compiled, use -gen-PER */
69                 0,
70                 "ipAdEntBcastAddr"
71                 },
72         { ATF_NOFLAGS, 0, offsetof(struct IpAddrEntry, ipAdEntReasmMaxSize),
73                 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
74                 0,
75                 &asn_DEF_NativeInteger,
76                 memb_ipAdEntReasmMaxSize_constraint_1,
77                 0,      /* PER is not compiled, use -gen-PER */
78                 0,
79                 "ipAdEntReasmMaxSize"
80                 },
81 };
82 static const ber_tlv_tag_t asn_DEF_IpAddrEntry_tags_1[] = {
83         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
84 };
85 static const asn_TYPE_tag2member_t asn_MAP_IpAddrEntry_tag2el_1[] = {
86     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 2 }, /* ipAdEntIfIndex */
87     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -1, 1 }, /* ipAdEntBcastAddr */
88     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 4, -2, 0 }, /* ipAdEntReasmMaxSize */
89     { (ASN_TAG_CLASS_APPLICATION | (0 << 2)), 0, 0, 1 }, /* ipAdEntAddr */
90     { (ASN_TAG_CLASS_APPLICATION | (0 << 2)), 2, -1, 0 } /* ipAdEntNetMask */
91 };
92 static asn_SEQUENCE_specifics_t asn_SPC_IpAddrEntry_specs_1 = {
93         sizeof(struct IpAddrEntry),
94         offsetof(struct IpAddrEntry, _asn_ctx),
95         asn_MAP_IpAddrEntry_tag2el_1,
96         5,      /* Count of tags in the map */
97         0, 0, 0,        /* Optional elements (not needed) */
98         -1,     /* Start extensions */
99         -1      /* Stop extensions */
100 };
101 asn_TYPE_descriptor_t asn_DEF_IpAddrEntry = {
102         "IpAddrEntry",
103         "IpAddrEntry",
104         SEQUENCE_free,
105         SEQUENCE_print,
106         SEQUENCE_constraint,
107         SEQUENCE_decode_ber,
108         SEQUENCE_encode_der,
109         SEQUENCE_decode_xer,
110         SEQUENCE_encode_xer,
111         0, 0,   /* No PER support, use "-gen-PER" to enable */
112         0,      /* Use generic outmost tag fetcher */
113         asn_DEF_IpAddrEntry_tags_1,
114         sizeof(asn_DEF_IpAddrEntry_tags_1)
115                 /sizeof(asn_DEF_IpAddrEntry_tags_1[0]), /* 1 */
116         asn_DEF_IpAddrEntry_tags_1,     /* Same as above */
117         sizeof(asn_DEF_IpAddrEntry_tags_1)
118                 /sizeof(asn_DEF_IpAddrEntry_tags_1[0]), /* 1 */
119         0,      /* No PER visible constraints */
120         asn_MBR_IpAddrEntry_1,
121         5,      /* Elements count */
122         &asn_SPC_IpAddrEntry_specs_1    /* Additional specs */
123 };
124