当前位置: 首页>>代码示例>>C++>>正文


C++ snmp_delete_iprteidx_tree函数代码示例

本文整理汇总了C++中snmp_delete_iprteidx_tree函数的典型用法代码示例。如果您正苦于以下问题:C++ snmp_delete_iprteidx_tree函数的具体用法?C++ snmp_delete_iprteidx_tree怎么用?C++ snmp_delete_iprteidx_tree使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了snmp_delete_iprteidx_tree函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: netif_set_ipaddr

/**
 * Change the IP address of a network interface
 *
 * @param netif the network interface to change
 * @param ipaddr the new IP address
 *
 * @note call netif_set_addr() if you also want to change netmask and
 * default gateway
 */
void
netif_set_ipaddr(struct netif *netif, ip_addr_t *ipaddr)
{
    /* TODO: Handling of obsolete pcbs */
    /* See:  http://mail.gnu.org/archive/html/lwip-users/2003-03/msg00118.html */
#if LWIP_TCP
    struct tcp_pcb *pcb;
    struct tcp_pcb_listen *lpcb;

    /* address is actually being changed? */
    if ((ip_addr_cmp(ipaddr, &(netif->ip_addr))) == 0) {
        /* extern struct tcp_pcb *tcp_active_pcbs; defined by tcp.h */
        LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_STATE, ("netif_set_ipaddr: netif address being changed\n"));
        pcb = tcp_active_pcbs;
        while (pcb != NULL) {
            /* PCB bound to current local interface address? */
            if (ip_addr_cmp(&(pcb->local_ip), &(netif->ip_addr))
#if LWIP_AUTOIP
                    /* connections to link-local addresses must persist (RFC3927 ch. 1.9) */
                    && !ip_addr_islinklocal(&(pcb->local_ip))
#endif /* LWIP_AUTOIP */
               ) {
                /* this connection must be aborted */
                struct tcp_pcb *next = pcb->next;
                LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_STATE, ("netif_set_ipaddr: aborting TCP pcb %p\n", (void *)pcb));
                tcp_abort(pcb);
                pcb = next;
            } else {
                pcb = pcb->next;
            }
        }
        for (lpcb = tcp_listen_pcbs.listen_pcbs; lpcb != NULL; lpcb = lpcb->next) {
            /* PCB bound to current local interface address? */
            if ((!(ip_addr_isany(&(lpcb->local_ip)))) &&
                    (ip_addr_cmp(&(lpcb->local_ip), &(netif->ip_addr)))) {
                /* The PCB is listening to the old ipaddr and
                 * is set to listen to the new one instead */
                ip_addr_set(&(lpcb->local_ip), ipaddr);
            }
        }
    }
#endif
    snmp_delete_ipaddridx_tree(netif);
    snmp_delete_iprteidx_tree(0,netif);
    /* set new IP address to netif */
    ip_addr_set(&(netif->ip_addr), ipaddr);
    snmp_insert_ipaddridx_tree(netif);
    snmp_insert_iprteidx_tree(0,netif);

    LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("netif: IP address of interface %c%c set to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n",
                netif->name[0], netif->name[1],
                ip4_addr1_16(&netif->ip_addr),
                ip4_addr2_16(&netif->ip_addr),
                ip4_addr3_16(&netif->ip_addr),
                ip4_addr4_16(&netif->ip_addr)));
}
开发者ID:comrid1987,项目名称:jb3500,代码行数:65,代码来源:netif.c

示例2: netif_set_netmask

/**
 * Change the netmask of a network interface
 *
 * @param netif the network interface to change
 * @param netmask the new netmask
 *
 * @note call netif_set_addr() if you also want to change ip address and
 * default gateway
 */
void netif_set_netmask(struct netif *netif, ip_addr_t *netmask)
{
	snmp_delete_iprteidx_tree(0, netif);
	/* set new netmask to netif */
	ip_addr_set(&(netif->netmask), netmask);
	snmp_insert_iprteidx_tree(0, netif);
	LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE,
		    ("netif: netmask of interface %c%c set to " IP4_F "\n",
		     netif->name[0], netif->name[1], IP4_FV(&netif->netmask)));
}
开发者ID:xskali12,项目名称:canshark,代码行数:19,代码来源:netif.c

示例3: netif_set_default

/**
 * Set a network interface as the default network interface
 * (used to output all packets for which no specific route is found)
 *
 * @param netif the default network interface
 */
void
netif_set_default(struct netif *netif)
{
  if (netif == NULL) {
    /* remove default route */
    snmp_delete_iprteidx_tree(1, netif);
  } else {
    /* install default route */
    snmp_insert_iprteidx_tree(1, netif);
  }
  netif_default = netif;
  LWIP_DEBUGF(NETIF_DEBUG, ("netif: setting default interface %c%c\n",
           netif ? netif->name[0] : '\'', netif ? netif->name[1] : '\''));
}
开发者ID:projectarkc,项目名称:psiphon,代码行数:20,代码来源:netif.c

示例4: netif_set_netmask

/**
 * Change the netmask of a network interface
 *
 * @param netif the network interface to change
 * @param netmask the new netmask
 *
 * @note call netif_set_addr() if you also want to change ip address and
 * default gateway
 */
void
netif_set_netmask(struct netif *netif, struct ip_addr *netmask)
{
  snmp_delete_iprteidx_tree(0, netif);
  /* set new netmask to netif */
  ip_addr_set(&(netif->netmask), netmask);
  snmp_insert_iprteidx_tree(0, netif);
  LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE | 3, ("netif: netmask of interface %c%c set to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n",
    netif->name[0], netif->name[1],
    ip4_addr1(&netif->netmask),
    ip4_addr2(&netif->netmask),
    ip4_addr3(&netif->netmask),
    ip4_addr4(&netif->netmask)));
}
开发者ID:laurarg94,项目名称:fpga-magic-1,代码行数:23,代码来源:netif.c

示例5: netif_set_netmask

/**
 * Change the netmask of a network interface
 *
 * @param netif the network interface to change
 * @param netmask the new netmask
 *
 * @note call netif_set_addr() if you also want to change ip address and
 * default gateway
 */
void
netif_set_netmask(struct netif *netif, ip_addr_t *netmask)
{
  snmp_delete_iprteidx_tree(0, netif);
  /* set new netmask to netif */
  ip_addr_set(&(netif->netmask), netmask);
  snmp_insert_iprteidx_tree(0, netif);
  LWIP_DEBUGF(NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, ("netif: netmask of interface %c%c set to %"U16_F".%"U16_F".%"U16_F".%"U16_F"\n",
	((netif->name[0]) ?netif->name[0] :'-'),
	((netif->name[1]) ?netif->name[1] :'-'),
    ip4_addr1_16(&netif->netmask),
    ip4_addr2_16(&netif->netmask),
    ip4_addr3_16(&netif->netmask),
    ip4_addr4_16(&netif->netmask)));
}
开发者ID:EarlGray,项目名称:ling,代码行数:24,代码来源:netif.c

示例6: if_set_netmask

/**
 * Change the netmask of a network interface
 *
 * @param netif the network interface to change
 * @param netmask the new netmask
 *
 * @note call if_set_addr() if you also want to change ip address and
 * default gateway
 */
void
if_set_netmask (struct interface *netif, ip_addr_t * netmask)
{
#ifdef CONFIG_OPENSWITCH_TCP_IP
    snmp_delete_iprteidx_tree (0, netif);
#endif
    /* set new netmask to netif */
    ip_addr_set (&(netif->netmask), netmask);
#ifdef CONFIG_OPENSWITCH_TCP_IP
    snmp_insert_iprteidx_tree (0, netif);
#endif
    LWIP_DEBUGF (NETIF_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE,
                 ("netif: netmask of interface %c%c set to %" U16_F ".%" U16_F
                  ".%" U16_F ".%" U16_F "\n", netif->ifDescr[0], netif->ifDescr[1],
                  ip4_addr1_16 (&netif->netmask),
                  ip4_addr2_16 (&netif->netmask),
                  ip4_addr3_16 (&netif->netmask),
                  ip4_addr4_16 (&netif->netmask)));
}
开发者ID:balajig,项目名称:Layer3Switch,代码行数:28,代码来源:if.c


注:本文中的snmp_delete_iprteidx_tree函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。