⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mib2.c

📁 《嵌入式网络系统设计-基于Atmel ARM7 系列》这个本书的光盘资料
💻 C
📖 第 1 页 / 共 5 页
字号:
  /* disable getnext traversal on empty table */  if (iprtetree_root.count == 0) iprtetable.maxlength = 0;}void snmp_inc_icmpinmsgs(void){  icmpinmsgs++;}void snmp_inc_icmpinerrors(void){  icmpinerrors++;}void snmp_inc_icmpindestunreachs(void){  icmpindestunreachs++;}void snmp_inc_icmpintimeexcds(void){  icmpintimeexcds++;}void snmp_inc_icmpinparmprobs(void){  icmpinparmprobs++;}void snmp_inc_icmpinsrcquenchs(void){  icmpinsrcquenchs++;}void snmp_inc_icmpinredirects(void){  icmpinredirects++;}void snmp_inc_icmpinechos(void){  icmpinechos++;}void snmp_inc_icmpinechoreps(void){  icmpinechoreps++;}void snmp_inc_icmpintimestamps(void){  icmpintimestamps++;}void snmp_inc_icmpintimestampreps(void){  icmpintimestampreps++;}void snmp_inc_icmpinaddrmasks(void){  icmpinaddrmasks++;}void snmp_inc_icmpinaddrmaskreps(void){  icmpinaddrmaskreps++;}void snmp_inc_icmpoutmsgs(void){  icmpoutmsgs++;}void snmp_inc_icmpouterrors(void){  icmpouterrors++;}void snmp_inc_icmpoutdestunreachs(void){  icmpoutdestunreachs++;}void snmp_inc_icmpouttimeexcds(void){  icmpouttimeexcds++;}void snmp_inc_icmpoutparmprobs(void){  icmpoutparmprobs++;}void snmp_inc_icmpoutsrcquenchs(void){  icmpoutsrcquenchs++;}void snmp_inc_icmpoutredirects(void){  icmpoutredirects++;}void snmp_inc_icmpoutechos(void){  icmpoutechos++;}void snmp_inc_icmpoutechoreps(void){  icmpoutechoreps++;}void snmp_inc_icmpouttimestamps(void){  icmpouttimestamps++;}void snmp_inc_icmpouttimestampreps(void){  icmpouttimestampreps++;}void snmp_inc_icmpoutaddrmasks(void){  icmpoutaddrmasks++;}void snmp_inc_icmpoutaddrmaskreps(void){  icmpoutaddrmaskreps++;}void snmp_inc_tcpactiveopens(void){  tcpactiveopens++;}void snmp_inc_tcppassiveopens(void){  tcppassiveopens++;}void snmp_inc_tcpattemptfails(void){  tcpattemptfails++;}void snmp_inc_tcpestabresets(void){  tcpestabresets++;}void snmp_inc_tcpinsegs(void){  tcpinsegs++;}void snmp_inc_tcpoutsegs(void){  tcpoutsegs++;}void snmp_inc_tcpretranssegs(void){  tcpretranssegs++;}void snmp_inc_tcpinerrs(void){  tcpinerrs++;}void snmp_inc_tcpoutrsts(void){  tcpoutrsts++;}void snmp_inc_udpindatagrams(void){  udpindatagrams++;}void snmp_inc_udpnoports(void){  udpnoports++;}void snmp_inc_udpinerrors(void){  udpinerrors++;}void snmp_inc_udpoutdatagrams(void){  udpoutdatagrams++;}/** * Inserts udpTable indexes (.udpLocalAddress.udpLocalPort) * into index tree. */void snmp_insert_udpidx_tree(struct udp_pcb *pcb){  struct mib_list_rootnode *udp_rn;  struct mib_list_node *udp_node;  struct ip_addr ip;  s32_t udpidx[5];  u8_t level;  LWIP_ASSERT("pcb != NULL", pcb != NULL);  ip.addr = ntohl(pcb->local_ip.addr);  snmp_iptooid(&ip, &udpidx[0]);  udpidx[4] = pcb->local_port;  udp_rn = &udp_root;  for (level = 0; level < 5; level++)  {    udp_node = NULL;    snmp_mib_node_insert(udp_rn, udpidx[level], &udp_node);    if ((level != 4) && (udp_node != NULL))    {      if (udp_node->nptr == NULL)      {        udp_rn = snmp_mib_lrn_alloc();        udp_node->nptr = (struct mib_node*)udp_rn;        if (udp_rn != NULL)        {          if (level == 3)          {            udp_rn->get_object_def = udpentry_get_object_def;            udp_rn->get_value = udpentry_get_value;            udp_rn->set_test = noleafs_set_test;            udp_rn->set_value = noleafs_set_value;          }        }        else        {          /* udp_rn == NULL, malloc failure */          LWIP_DEBUGF(SNMP_MIB_DEBUG,("snmp_insert_udpidx_tree() insert failed, mem full"));          break;        }      }      else      {        udp_rn = (struct mib_list_rootnode*)udp_node->nptr;      }    }  }  udptable.maxlength = 1;}/** * Removes udpTable indexes (.udpLocalAddress.udpLocalPort) * from index tree. */void snmp_delete_udpidx_tree(struct udp_pcb *pcb){  struct mib_list_rootnode *udp_rn, *next, *del_rn[5];  struct mib_list_node *udp_n, *del_n[5];  struct ip_addr ip;  s32_t udpidx[5];  u8_t bindings, fc, level, del_cnt;  LWIP_ASSERT("pcb != NULL", pcb != NULL);  ip.addr = ntohl(pcb->local_ip.addr);  snmp_iptooid(&ip, &udpidx[0]);  udpidx[4] = pcb->local_port;  /* count PCBs for a given binding     (e.g. when reusing ports or for temp output PCBs) */  bindings = 0;  pcb = udp_pcbs;  while ((pcb != NULL))  {    if ((pcb->local_ip.addr == ip.addr) &&        (pcb->local_port == udpidx[4]))    {      bindings++;    }    pcb = pcb->next;  }  if (bindings == 1)  {    /* selectively remove */    /* mark nodes for deletion */    level = 0;    del_cnt = 0;    udp_rn = &udp_root;    while ((level < 5) && (udp_rn != NULL))    {      fc = snmp_mib_node_find(udp_rn, udpidx[level], &udp_n);      if (fc == 0)      {        /* udpidx[level] does not exist */        del_cnt = 0;        udp_rn = NULL;      }      else if (fc == 1)      {        del_rn[del_cnt] = udp_rn;        del_n[del_cnt] = udp_n;        del_cnt++;        udp_rn = (struct mib_list_rootnode*)(udp_n->nptr);      }      else if (fc == 2)      {        /* reset delete (2 or more childs) */        del_cnt = 0;        udp_rn = (struct mib_list_rootnode*)(udp_n->nptr);      }      level++;    }    /* delete marked index nodes */    while (del_cnt > 0)    {      del_cnt--;      udp_rn = del_rn[del_cnt];      udp_n = del_n[del_cnt];      next = snmp_mib_node_delete(udp_rn, udp_n);      if (next != NULL)      {        LWIP_ASSERT("next_count == 0",next->count == 0);        snmp_mib_lrn_free(next);      }    }  }  /* disable getnext traversal on empty table */  if (udp_root.count == 0) udptable.maxlength = 0;}void snmp_inc_snmpinpkts(void){  snmpinpkts++;}void snmp_inc_snmpoutpkts(void){  snmpoutpkts++;}void snmp_inc_snmpinbadversions(void){  snmpinbadversions++;}void snmp_inc_snmpinbadcommunitynames(void){  snmpinbadcommunitynames++;}void snmp_inc_snmpinbadcommunityuses(void){  snmpinbadcommunityuses++;}void snmp_inc_snmpinasnparseerrs(void){  snmpinasnparseerrs++;}void snmp_inc_snmpintoobigs(void){  snmpintoobigs++;}void snmp_inc_snmpinnosuchnames(void){  snmpinnosuchnames++;}void snmp_inc_snmpinbadvalues(void){  snmpinbadvalues++;}void snmp_inc_snmpinreadonlys(void){  snmpinreadonlys++;}void snmp_inc_snmpingenerrs(void){  snmpingenerrs++;}void snmp_add_snmpintotalreqvars(u8_t value){  snmpintotalreqvars += value;}void snmp_add_snmpintotalsetvars(u8_t value){  snmpintotalsetvars += value;}void snmp_inc_snmpingetrequests(void){  snmpingetrequests++;}void snmp_inc_snmpingetnexts(void){  snmpingetnexts++;}void snmp_inc_snmpinsetrequests(void){  snmpinsetrequests++;}void snmp_inc_snmpingetresponses(void){  snmpingetresponses++;}void snmp_inc_snmpintraps(void){  snmpintraps++;}void snmp_inc_snmpouttoobigs(void){  snmpouttoobigs++;}void snmp_inc_snmpoutnosuchnames(void){  snmpoutnosuchnames++;}void snmp_inc_snmpoutbadvalues(void){  snmpoutbadvalues++;}void snmp_inc_snmpoutgenerrs(void){  snmpoutgenerrs++;}void snmp_inc_snmpoutgetrequests(void){  snmpoutgetrequests++;}void snmp_inc_snmpoutgetnexts(void){  snmpoutgetnexts++;}void snmp_inc_snmpoutsetrequests(void){  snmpoutsetrequests++;}void snmp_inc_snmpoutgetresponses(void){  snmpoutgetresponses++;}void snmp_inc_snmpouttraps(void){  snmpouttraps++;}void snmp_get_snmpgrpid_ptr(struct snmp_obj_id **oid){  *oid = &snmpgrp_id;}void snmp_set_snmpenableauthentraps(u8_t *value){  if (value != NULL)  {    snmpenableauthentraps_ptr = value;  }}void snmp_get_snmpenableauthentraps(u8_t *value){  *value = *snmpenableauthentraps_ptr;}voidnoleafs_get_object_def(u8_t ident_len, s32_t *ident, struct obj_def *od){  if (ident_len){}  if (ident){}  od->instance = MIB_OBJECT_NONE;}voidnoleafs_get_value(struct obj_def *od, u16_t len, void *value){  if (od){}  if (len){}  if (value){}}u8_tnoleafs_set_test(struct obj_def *od, u16_t len, void *value){  if (od){}  if (len){}  if (value){}  /* can't set */  return 0;}voidnoleafs_set_value(struct obj_def *od, u16_t len, void *value){  if (od){}  if (len){}  if (value){}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -