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

📄 route.h

📁 net_snmp应用程序示例
💻 H
字号:
/* * route data access header * * $Id: route.h,v 1.11 2005/11/16 20:20:31 rstory Exp $ */#ifndef NETSNMP_ACCESS_ROUTE_H#define NETSNMP_ACCESS_ROUTE_H# ifdef __cplusplusextern          "C" {#endif/**---------------------------------------------------------------------*//* * structure definitions */#if defined( INET6 )#   define NETSNMP_ACCESS_ROUTE_ADDR_BUF_SIZE 16#else#   define NETSNMP_ACCESS_ROUTE_ADDR_BUF_SIZE 4#endif/* * netsnmp_route_entry *   - primary route structure for both ipv4 & ipv6 */typedef struct netsnmp_route_s {   netsnmp_index oid_index;   /* MUST BE FIRST!! for container use */   oid           ns_rt_index; /* arbitrary index */   int       flags; /* for net-snmp use */   oid       if_index;    /*     * addresses, in network byte order     */   u_char    rt_dest[NETSNMP_ACCESS_ROUTE_ADDR_BUF_SIZE];   u_char    rt_nexthop[NETSNMP_ACCESS_ROUTE_ADDR_BUF_SIZE];#ifdef USING_IP_FORWARD_MIB_INETCIDRROUTETABLE_INETCIDRROUTETABLE_MODULE   /*    * define the maximum oid length for a policy, for use by the    * inetCidrRouteTable. Must be at least 2, for default nullOid case.    */#define NETSNMP_POLICY_OID_MAX_LEN  2   oid      *rt_policy;      /* NULL should be interpreted as { 0, 0 } */   u_char    rt_policy_len;  /* 0-128 oids */#endif   u_char    rt_dest_len;    /* 4 | 16 since we only do ipv4|ipv6 */   u_char    rt_dest_type;   /* InetAddressType 0-16 */   u_char    rt_nexthop_len; /* 4 | 16 since we only do ipv4|ipv6*/   u_char    rt_nexthop_type;/* InetAddressType 0-16 */   u_char    rt_pfx_len;     /* 0-128 bits */   u_char    rt_type;        /* ip(1-4) != inet(1-5) */   u_char    rt_proto;       /* ip(enum 1-16) ?= inet(IANAipRouteProtocol 1-17) */#ifdef USING_IP_FORWARD_MIB_IPCIDRROUTETABLE_IPCIDRROUTETABLE_MODULE   /** rt_info != inet_policy, because that would have made sense */   uint8_t   rt_info_len;    /* 0-128 oids */   oid      *rt_info;        /* NULL should be interpreted as { 0, 0 } */   uint32_t  rt_mask;        /* ipv4 only */   uint32_t  rt_tos;         /* Integer32 (0..2147483647) */#endif   uint32_t  rt_age;         /* seconds (ip == inet) */   int32_t   rt_nexthop_as;  /* ip(int32) == inet(InetAutonomousSystemNumber) */   int32_t   rt_metric1;   int32_t   rt_metric2;   int32_t   rt_metric3;   int32_t   rt_metric4;   int32_t   rt_metric5;} netsnmp_route_entry;/**---------------------------------------------------------------------*//* * ACCESS function prototypes *//* * ifcontainer init */netsnmp_container * netsnmp_access_route_container_init(u_int init_flags);#define NETSNMP_ACCESS_ROUTE_INIT_NOFLAGS               0x0000#define NETSNMP_ACCESS_ROUTE_INIT_ADDL_IDX_BY_NAME      0x0001/* * ifcontainer load and free */netsnmp_container*netsnmp_access_route_container_load(netsnmp_container* container,                                    u_int load_flags);#define NETSNMP_ACCESS_ROUTE_LOAD_NOFLAGS               0x0000#define NETSNMP_ACCESS_ROUTE_LOAD_IPV4_ONLY             0x0001void netsnmp_access_route_container_free(netsnmp_container *container,                                         u_int free_flags);#define NETSNMP_ACCESS_ROUTE_FREE_NOFLAGS               0x0000#define NETSNMP_ACCESS_ROUTE_FREE_DONT_CLEAR            0x0001#define NETSNMP_ACCESS_ROUTE_FREE_KEEP_CONTAINER        0x0002/* * create/copy/free a route entry */netsnmp_route_entry *netsnmp_access_route_entry_create(void);void netsnmp_access_route_entry_free(netsnmp_route_entry * entry);intnetsnmp_access_route_entry_copy(netsnmp_route_entry *lhs,                                netsnmp_route_entry *rhs);/* * find entry in container *//** not yet *//* * create/change/delete */intnetsnmp_access_route_entry_set(netsnmp_route_entry * entry);/* * route flags *   upper bits for internal use *   lower bits indicate changed fields. see FLAG_INETCIDRROUTE* definitions in *         inetCidrRouteTable_constants.h */#define NETSNMP_ACCESS_ROUTE_CREATE                         0x80000000#define NETSNMP_ACCESS_ROUTE_DELETE                         0x40000000#define NETSNMP_ACCESS_ROUTE_CHANGE                         0x20000000#define NETSNMP_ACCESS_ROUTE_POLICY_STATIC                  0x10000000#define NETSNMP_ACCESS_ROUTE_POLICY_DEEP_COPY               0x08000000/*  * mask for change flag bits */#define NETSNMP_ACCESS_ROUTE_RESERVED_BITS                  0x000001ff/**---------------------------------------------------------------------*/# ifdef __cplusplus}#endif#endif /* NETSNMP_ACCESS_ROUTE_H */

⌨️ 快捷键说明

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