Warning, cross-references for /kernel/include/lwip/snmp.h need to be fixed.
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033 #ifndef __LWIP_SNMP_H__
0034 #define __LWIP_SNMP_H__
0035
0036 #include "lwip/opt.h"
0037 #include "lwip/netif.h"
0038 #include "lwip/udp.h"
0039
0040 #ifdef __cplusplus
0041 extern "C" {
0042 #endif
0043
0044
0045
0046
0047 enum snmp_ifType {
0048 snmp_ifType_other=1,
0049 snmp_ifType_regular1822,
0050 snmp_ifType_hdh1822,
0051 snmp_ifType_ddn_x25,
0052 snmp_ifType_rfc877_x25,
0053 snmp_ifType_ethernet_csmacd,
0054 snmp_ifType_iso88023_csmacd,
0055 snmp_ifType_iso88024_tokenBus,
0056 snmp_ifType_iso88025_tokenRing,
0057 snmp_ifType_iso88026_man,
0058 snmp_ifType_starLan,
0059 snmp_ifType_proteon_10Mbit,
0060 snmp_ifType_proteon_80Mbit,
0061 snmp_ifType_hyperchannel,
0062 snmp_ifType_fddi,
0063 snmp_ifType_lapb,
0064 snmp_ifType_sdlc,
0065 snmp_ifType_ds1,
0066 snmp_ifType_e1,
0067 snmp_ifType_basicISDN,
0068 snmp_ifType_primaryISDN,
0069 snmp_ifType_propPointToPointSerial,
0070 snmp_ifType_ppp,
0071 snmp_ifType_softwareLoopback,
0072 snmp_ifType_eon,
0073 snmp_ifType_ethernet_3Mbit,
0074 snmp_ifType_nsip,
0075 snmp_ifType_slip,
0076 snmp_ifType_ultra,
0077 snmp_ifType_ds3,
0078 snmp_ifType_sip,
0079 snmp_ifType_frame_relay
0080 };
0081
0082 #if LWIP_SNMP
0083
0084
0085 #define SNMP_SYSUPTIME_INTERVAL 10
0086
0087
0088 #define LWIP_SNMP_OBJ_ID_LEN 32
0089
0090
0091 struct snmp_obj_id
0092 {
0093 u8_t len;
0094 s32_t id[LWIP_SNMP_OBJ_ID_LEN];
0095 };
0096
0097
0098 void snmp_set_sysdesr(u8_t* str, u8_t* len);
0099 void snmp_set_sysobjid(struct snmp_obj_id *oid);
0100 void snmp_get_sysobjid_ptr(struct snmp_obj_id **oid);
0101 void snmp_inc_sysuptime(void);
0102 void snmp_add_sysuptime(u32_t value);
0103 void snmp_get_sysuptime(u32_t *value);
0104 void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen);
0105 void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen);
0106 void snmp_set_syslocation(u8_t *ocstr, u8_t *ocstrlen);
0107
0108
0109 void snmp_add_ifinoctets(struct netif *ni, u32_t value);
0110 void snmp_inc_ifinucastpkts(struct netif *ni);
0111 void snmp_inc_ifinnucastpkts(struct netif *ni);
0112 void snmp_inc_ifindiscards(struct netif *ni);
0113 void snmp_add_ifoutoctets(struct netif *ni, u32_t value);
0114 void snmp_inc_ifoutucastpkts(struct netif *ni);
0115 void snmp_inc_ifoutnucastpkts(struct netif *ni);
0116 void snmp_inc_ifoutdiscards(struct netif *ni);
0117 void snmp_inc_iflist(void);
0118 void snmp_dec_iflist(void);
0119
0120
0121 void snmp_insert_arpidx_tree(struct netif *ni, struct ip_addr *ip);
0122 void snmp_delete_arpidx_tree(struct netif *ni, struct ip_addr *ip);
0123
0124
0125 void snmp_inc_ipinreceives(void);
0126 void snmp_inc_ipinhdrerrors(void);
0127 void snmp_inc_ipinaddrerrors(void);
0128 void snmp_inc_ipforwdatagrams(void);
0129 void snmp_inc_ipinunknownprotos(void);
0130 void snmp_inc_ipindiscards(void);
0131 void snmp_inc_ipindelivers(void);
0132 void snmp_inc_ipoutrequests(void);
0133 void snmp_inc_ipoutdiscards(void);
0134 void snmp_inc_ipoutnoroutes(void);
0135 void snmp_inc_ipreasmreqds(void);
0136 void snmp_inc_ipreasmoks(void);
0137 void snmp_inc_ipreasmfails(void);
0138 void snmp_inc_ipfragoks(void);
0139 void snmp_inc_ipfragfails(void);
0140 void snmp_inc_ipfragcreates(void);
0141 void snmp_inc_iproutingdiscards(void);
0142 void snmp_insert_ipaddridx_tree(struct netif *ni);
0143 void snmp_delete_ipaddridx_tree(struct netif *ni);
0144 void snmp_insert_iprteidx_tree(u8_t dflt, struct netif *ni);
0145 void snmp_delete_iprteidx_tree(u8_t dflt, struct netif *ni);
0146
0147
0148 void snmp_inc_icmpinmsgs(void);
0149 void snmp_inc_icmpinerrors(void);
0150 void snmp_inc_icmpindestunreachs(void);
0151 void snmp_inc_icmpintimeexcds(void);
0152 void snmp_inc_icmpinparmprobs(void);
0153 void snmp_inc_icmpinsrcquenchs(void);
0154 void snmp_inc_icmpinredirects(void);
0155 void snmp_inc_icmpinechos(void);
0156 void snmp_inc_icmpinechoreps(void);
0157 void snmp_inc_icmpintimestamps(void);
0158 void snmp_inc_icmpintimestampreps(void);
0159 void snmp_inc_icmpinaddrmasks(void);
0160 void snmp_inc_icmpinaddrmaskreps(void);
0161 void snmp_inc_icmpoutmsgs(void);
0162 void snmp_inc_icmpouterrors(void);
0163 void snmp_inc_icmpoutdestunreachs(void);
0164 void snmp_inc_icmpouttimeexcds(void);
0165 void snmp_inc_icmpoutparmprobs(void);
0166 void snmp_inc_icmpoutsrcquenchs(void);
0167 void snmp_inc_icmpoutredirects(void);
0168 void snmp_inc_icmpoutechos(void);
0169 void snmp_inc_icmpoutechoreps(void);
0170 void snmp_inc_icmpouttimestamps(void);
0171 void snmp_inc_icmpouttimestampreps(void);
0172 void snmp_inc_icmpoutaddrmasks(void);
0173 void snmp_inc_icmpoutaddrmaskreps(void);
0174
0175
0176 void snmp_inc_tcpactiveopens(void);
0177 void snmp_inc_tcppassiveopens(void);
0178 void snmp_inc_tcpattemptfails(void);
0179 void snmp_inc_tcpestabresets(void);
0180 void snmp_inc_tcpinsegs(void);
0181 void snmp_inc_tcpoutsegs(void);
0182 void snmp_inc_tcpretranssegs(void);
0183 void snmp_inc_tcpinerrs(void);
0184 void snmp_inc_tcpoutrsts(void);
0185
0186
0187 void snmp_inc_udpindatagrams(void);
0188 void snmp_inc_udpnoports(void);
0189 void snmp_inc_udpinerrors(void);
0190 void snmp_inc_udpoutdatagrams(void);
0191 void snmp_insert_udpidx_tree(struct udp_pcb *pcb);
0192 void snmp_delete_udpidx_tree(struct udp_pcb *pcb);
0193
0194
0195 void snmp_inc_snmpinpkts(void);
0196 void snmp_inc_snmpoutpkts(void);
0197 void snmp_inc_snmpinbadversions(void);
0198 void snmp_inc_snmpinbadcommunitynames(void);
0199 void snmp_inc_snmpinbadcommunityuses(void);
0200 void snmp_inc_snmpinasnparseerrs(void);
0201 void snmp_inc_snmpintoobigs(void);
0202 void snmp_inc_snmpinnosuchnames(void);
0203 void snmp_inc_snmpinbadvalues(void);
0204 void snmp_inc_snmpinreadonlys(void);
0205 void snmp_inc_snmpingenerrs(void);
0206 void snmp_add_snmpintotalreqvars(u8_t value);
0207 void snmp_add_snmpintotalsetvars(u8_t value);
0208 void snmp_inc_snmpingetrequests(void);
0209 void snmp_inc_snmpingetnexts(void);
0210 void snmp_inc_snmpinsetrequests(void);
0211 void snmp_inc_snmpingetresponses(void);
0212 void snmp_inc_snmpintraps(void);
0213 void snmp_inc_snmpouttoobigs(void);
0214 void snmp_inc_snmpoutnosuchnames(void);
0215 void snmp_inc_snmpoutbadvalues(void);
0216 void snmp_inc_snmpoutgenerrs(void);
0217 void snmp_inc_snmpoutgetrequests(void);
0218 void snmp_inc_snmpoutgetnexts(void);
0219 void snmp_inc_snmpoutsetrequests(void);
0220 void snmp_inc_snmpoutgetresponses(void);
0221 void snmp_inc_snmpouttraps(void);
0222 void snmp_get_snmpgrpid_ptr(struct snmp_obj_id **oid);
0223 void snmp_set_snmpenableauthentraps(u8_t *value);
0224 void snmp_get_snmpenableauthentraps(u8_t *value);
0225
0226
0227
0228 #else
0229
0230
0231 #define snmp_set_sysdesr(str, len)
0232 #define snmp_set_sysobjid(oid);
0233 #define snmp_get_sysobjid_ptr(oid)
0234 #define snmp_inc_sysuptime()
0235 #define snmp_add_sysuptime(value)
0236 #define snmp_get_sysuptime(value)
0237 #define snmp_set_syscontact(ocstr, ocstrlen);
0238 #define snmp_set_sysname(ocstr, ocstrlen);
0239 #define snmp_set_syslocation(ocstr, ocstrlen);
0240
0241
0242 #define snmp_add_ifinoctets(ni,value)
0243 #define snmp_inc_ifinucastpkts(ni)
0244 #define snmp_inc_ifinnucastpkts(ni)
0245 #define snmp_inc_ifindiscards(ni)
0246 #define snmp_add_ifoutoctets(ni,value)
0247 #define snmp_inc_ifoutucastpkts(ni)
0248 #define snmp_inc_ifoutnucastpkts(ni)
0249 #define snmp_inc_ifoutdiscards(ni)
0250 #define snmp_inc_iflist()
0251 #define snmp_dec_iflist()
0252
0253
0254 #define snmp_insert_arpidx_tree(ni,ip)
0255 #define snmp_delete_arpidx_tree(ni,ip)
0256
0257
0258 #define snmp_inc_ipinreceives()
0259 #define snmp_inc_ipinhdrerrors()
0260 #define snmp_inc_ipinaddrerrors()
0261 #define snmp_inc_ipforwdatagrams()
0262 #define snmp_inc_ipinunknownprotos()
0263 #define snmp_inc_ipindiscards()
0264 #define snmp_inc_ipindelivers()
0265 #define snmp_inc_ipoutrequests()
0266 #define snmp_inc_ipoutdiscards()
0267 #define snmp_inc_ipoutnoroutes()
0268 #define snmp_inc_ipreasmreqds()
0269 #define snmp_inc_ipreasmoks()
0270 #define snmp_inc_ipreasmfails()
0271 #define snmp_inc_ipfragoks()
0272 #define snmp_inc_ipfragfails()
0273 #define snmp_inc_ipfragcreates()
0274 #define snmp_inc_iproutingdiscards()
0275 #define snmp_insert_ipaddridx_tree(ni)
0276 #define snmp_delete_ipaddridx_tree(ni)
0277 #define snmp_insert_iprteidx_tree(dflt, ni)
0278 #define snmp_delete_iprteidx_tree(dflt, ni)
0279
0280
0281 #define snmp_inc_icmpinmsgs()
0282 #define snmp_inc_icmpinerrors()
0283 #define snmp_inc_icmpindestunreachs()
0284 #define snmp_inc_icmpintimeexcds()
0285 #define snmp_inc_icmpinparmprobs()
0286 #define snmp_inc_icmpinsrcquenchs()
0287 #define snmp_inc_icmpinredirects()
0288 #define snmp_inc_icmpinechos()
0289 #define snmp_inc_icmpinechoreps()
0290 #define snmp_inc_icmpintimestamps()
0291 #define snmp_inc_icmpintimestampreps()
0292 #define snmp_inc_icmpinaddrmasks()
0293 #define snmp_inc_icmpinaddrmaskreps()
0294 #define snmp_inc_icmpoutmsgs()
0295 #define snmp_inc_icmpouterrors()
0296 #define snmp_inc_icmpoutdestunreachs()
0297 #define snmp_inc_icmpouttimeexcds()
0298 #define snmp_inc_icmpoutparmprobs()
0299 #define snmp_inc_icmpoutsrcquenchs()
0300 #define snmp_inc_icmpoutredirects()
0301 #define snmp_inc_icmpoutechos()
0302 #define snmp_inc_icmpoutechoreps()
0303 #define snmp_inc_icmpouttimestamps()
0304 #define snmp_inc_icmpouttimestampreps()
0305 #define snmp_inc_icmpoutaddrmasks()
0306 #define snmp_inc_icmpoutaddrmaskreps()
0307
0308 #define snmp_inc_tcpactiveopens()
0309 #define snmp_inc_tcppassiveopens()
0310 #define snmp_inc_tcpattemptfails()
0311 #define snmp_inc_tcpestabresets()
0312 #define snmp_inc_tcpinsegs()
0313 #define snmp_inc_tcpoutsegs()
0314 #define snmp_inc_tcpretranssegs()
0315 #define snmp_inc_tcpinerrs()
0316 #define snmp_inc_tcpoutrsts()
0317
0318
0319 #define snmp_inc_udpindatagrams()
0320 #define snmp_inc_udpnoports()
0321 #define snmp_inc_udpinerrors()
0322 #define snmp_inc_udpoutdatagrams()
0323 #define snmp_insert_udpidx_tree(pcb)
0324 #define snmp_delete_udpidx_tree(pcb)
0325
0326
0327 #define snmp_inc_snmpinpkts()
0328 #define snmp_inc_snmpoutpkts()
0329 #define snmp_inc_snmpinbadversions()
0330 #define snmp_inc_snmpinbadcommunitynames()
0331 #define snmp_inc_snmpinbadcommunityuses()
0332 #define snmp_inc_snmpinasnparseerrs()
0333 #define snmp_inc_snmpintoobigs()
0334 #define snmp_inc_snmpinnosuchnames()
0335 #define snmp_inc_snmpinbadvalues()
0336 #define snmp_inc_snmpinreadonlys()
0337 #define snmp_inc_snmpingenerrs()
0338 #define snmp_add_snmpintotalreqvars(value)
0339 #define snmp_add_snmpintotalsetvars(value)
0340 #define snmp_inc_snmpingetrequests()
0341 #define snmp_inc_snmpingetnexts()
0342 #define snmp_inc_snmpinsetrequests()
0343 #define snmp_inc_snmpingetresponses()
0344 #define snmp_inc_snmpintraps()
0345 #define snmp_inc_snmpouttoobigs()
0346 #define snmp_inc_snmpoutnosuchnames()
0347 #define snmp_inc_snmpoutbadvalues()
0348 #define snmp_inc_snmpoutgenerrs()
0349 #define snmp_inc_snmpoutgetrequests()
0350 #define snmp_inc_snmpoutgetnexts()
0351 #define snmp_inc_snmpoutsetrequests()
0352 #define snmp_inc_snmpoutgetresponses()
0353 #define snmp_inc_snmpouttraps()
0354 #define snmp_get_snmpgrpid_ptr(oid)
0355 #define snmp_set_snmpenableauthentraps(value)
0356 #define snmp_get_snmpenableauthentraps(value)
0357
0358 #endif
0359
0360 #ifdef __cplusplus
0361 }
0362 #endif
0363
0364 #endif