45#if LWIP_SNMP && SNMP_LWIP_MIB2 && LWIP_ICMP
48#define SYNC_NODE_NAME(node_name) node_name ## _synced
49#define CREATE_LWIP_SYNC_NODE(oid, node_name) \
50 static const struct snmp_threadsync_node node_name ## _synced = SNMP_CREATE_THREAD_SYNC_NODE(oid, &node_name.node, &snmp_mib2_lwip_locks);
52#define SYNC_NODE_NAME(node_name) node_name
53#define CREATE_LWIP_SYNC_NODE(oid, node_name)
59icmp_get_value(
const struct snmp_scalar_array_node_def *
node,
void *
value)
65 *uint_ptr = STATS_GET(
mib2.icmpinmsgs);
66 return sizeof(*uint_ptr);
68 *uint_ptr = STATS_GET(
mib2.icmpinerrors);
69 return sizeof(*uint_ptr);
71 *uint_ptr = STATS_GET(
mib2.icmpindestunreachs);
72 return sizeof(*uint_ptr);
74 *uint_ptr = STATS_GET(
mib2.icmpintimeexcds);
75 return sizeof(*uint_ptr);
77 *uint_ptr = STATS_GET(
mib2.icmpinparmprobs);
78 return sizeof(*uint_ptr);
80 *uint_ptr = STATS_GET(
mib2.icmpinsrcquenchs);
81 return sizeof(*uint_ptr);
83 *uint_ptr = STATS_GET(
mib2.icmpinredirects);
84 return sizeof(*uint_ptr);
86 *uint_ptr = STATS_GET(
mib2.icmpinechos);
87 return sizeof(*uint_ptr);
89 *uint_ptr = STATS_GET(
mib2.icmpinechoreps);
90 return sizeof(*uint_ptr);
92 *uint_ptr = STATS_GET(
mib2.icmpintimestamps);
93 return sizeof(*uint_ptr);
95 *uint_ptr = STATS_GET(
mib2.icmpintimestampreps);
96 return sizeof(*uint_ptr);
98 *uint_ptr = STATS_GET(
mib2.icmpinaddrmasks);
99 return sizeof(*uint_ptr);
101 *uint_ptr = STATS_GET(
mib2.icmpinaddrmaskreps);
102 return sizeof(*uint_ptr);
104 *uint_ptr = STATS_GET(
mib2.icmpoutmsgs);
105 return sizeof(*uint_ptr);
107 *uint_ptr = STATS_GET(
mib2.icmpouterrors);
108 return sizeof(*uint_ptr);
110 *uint_ptr = STATS_GET(
mib2.icmpoutdestunreachs);
111 return sizeof(*uint_ptr);
113 *uint_ptr = STATS_GET(
mib2.icmpouttimeexcds);
114 return sizeof(*uint_ptr);
117 return sizeof(*uint_ptr);
120 return sizeof(*uint_ptr);
123 return sizeof(*uint_ptr);
125 *uint_ptr = STATS_GET(
mib2.icmpoutechos);
126 return sizeof(*uint_ptr);
128 *uint_ptr = STATS_GET(
mib2.icmpoutechoreps);
129 return sizeof(*uint_ptr);
132 return sizeof(*uint_ptr);
135 return sizeof(*uint_ptr);
138 return sizeof(*uint_ptr);
141 return sizeof(*uint_ptr);
151static const struct snmp_scalar_array_node_def icmp_nodes[] = {
152 { 1, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
153 { 2, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
154 { 3, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
155 { 4, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
156 { 5, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
157 { 6, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
158 { 7, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
159 { 8, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
160 { 9, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
161 {10, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
162 {11, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
163 {12, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
164 {13, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
165 {14, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
166 {15, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
167 {16, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
168 {17, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
169 {18, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
170 {19, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
171 {20, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
172 {21, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
173 {22, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
174 {23, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
175 {24, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
176 {25, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY},
177 {26, SNMP_ASN1_TYPE_COUNTER, SNMP_NODE_INSTANCE_READ_ONLY}
180const struct snmp_scalar_array_node snmp_mib2_icmp_root = SNMP_SCALAR_CREATE_ARRAY_NODE(5, icmp_nodes, icmp_get_value,
NULL,
NULL);
#define LWIP_DEBUGF(debug, message)