📄 rip.h
字号:
/** Copyright (c) 1998-2001 by NETsilicon Inc.** This software is copyrighted by and is the sole property of* NETsilicon. All rights, title, ownership, or other interests* in the software remain the property of NETsilicon. This* software may only be used in accordance with the corresponding* license agreement. Any unauthorized use, duplication, transmission,* distribution, or disclosure of this software is expressly forbidden.** This Copyright notice may not be removed or modified without prior* written consent of NETsilicon.** NETsilicon, reserves the right to modify this software* without notice.** NETsilicon* 411 Waverley Oaks Road USA 781.647.1234* Suite 227 http://www.netsilicon.com* Waltham, MA 02452 AmericaSales@netsilicon.com*************************************************************************** $Name: Fusion 6.52 Fusion 6.51 $* $Date: 2001/09/20 10:32:06 $* $Source: M:/psisrc/routing/incl/rcs/rip.h $* $Revision: 1.6 $************************************************************************** File Description: Rip global node and RIP cicuits definitions. *************************************************************************/#ifndef _RIP_H#define _RIP_H#define RIP_MAX_TRUST 20typedef struct rprot_node{ dword rn_tics; int rn_impmet; /* import metric */ int rn_trig; /* trig update */ int rn_riptimer; int rn_radmst; /* rip state */ word rn_rdom; /*rip domain */ int rn_dotrust; int rn_numtrust; rripa rn_trustnbr[RIP_MAX_TRUST]; counter rn_rip2GlobalRouteChanges; counter rn_rip2GlobalQueries; struct iproute_entry *rn_garb_fwd; /* garbage collect */ struct iproute_entry *rn_garb_bwd; /* garbage collect */ /* EMBEDDED STRUCTS ONLY BELOW HERE */ rrTHEAD rn_ripTimers; struct dll rn_rip_circ_hash[CIRC_HASHES]; int rn_ripClock; int rn_rxvers; rripa rn_locNet; rripa rn_locMask; rripa rn_locClassMask; struct rip_circ *rn_locCirc;}RNODE, *rnode_pt;extern RNODE *r_node;#define rip_circ_hash r_node->rn_rip_circ_hash#define ripTimers r_node->rn_ripTimers#define rip_clock r_node->rn_ripClock#define ripvers r_node->rn_rxvers#define loc_net r_node->rn_locNet#define loc_mask r_node->rn_locMask#define loc_class_mask r_node->rn_locClassMask#define loc_circ r_node->rn_locCirc/* circuit structure, one for each logical channel */typedef struct rip_circ{ struct rip_circ *rc_fwd; /* link */ struct rip_circ *rc_bwd; /* link */ void *rc_gptr; /* environment use */ int rc_id; int rc_type; /* type of circuit */ int rc_met; /* L1 default metric */ int rc_talk; /* does talk */ int rc_listen; /* does listen */ int rc_poison; /* does poison */ int rc_r2txmode; /* rip2 tx mode */ int rc_r2rxmode; /* rip2 rx mode */ int rc_state; /* oper state */ int rc_auth_type; byte rc_auth_key[16]; IPNA rc_ipa[MAX_IF_IPADD]; rripa rc_srcipa; /* for unnum ptpt */ struct rip_nbr *rc_nbr_fwd; struct rip_nbr *rc_nbr_bwd; int rc_distlist_in; int rc_distlist_out;#ifdef SNMP /* mib counters */ counter rc_ripRcvBadPkts; counter rc_ripRcvBadRoutes; counter rc_ripSentUpdates; counter rc_ripRcvUpdates;#endif}RCIRC, *rcirc_pt;/*circuit types */#define RCIRC_ETH 1 /* EHTERNET TYPE */#define RCIRC_TR 2 /* token ring type */#define RCIRC_TRGRP 4 /* tkn rng- group addr*/#define RCIRC_FDDI 8 /* FDDI */#define RCIRC_P2MP 0x40 /* pt 2 multipt */#define RCIRC_LEM 0x80 /* lan emulation (nbma)*/#define RCIRC_LAN 0xff /* any multiaccess */#define RCIRC_PTPT 0x100 /* leased line or direct *//*circuit states */#define RCIRC_DOWN 1 /* initial state */#define RCIRC_UP 2 /* alive *//* ripv2 modes */#define R2M_TXOFF 1#define R2M_TXV1 2#define R2M_TXV1COMP 3#define R2M_TXV2 4#define R2M_RXV1 1#define R2M_RXV2 2#define R2M_RXV1V2 3/* routing metric defaults */#define METRIC_DEF 0 /* default metric *//* links in route struct used for garbage collect list, linked list independent of FDB organization*/#ifdef IP_USE_PTREE#define iprt_gfwd iprt_bwd#define iprt_gbwd iprt_llink#else#define iprt_gfwd iprt_fwd#define iprt_gbwd iprt_bwd#endif#define RIP_AUTH_NONE 1#define RIP_AUTH_SIMPLE 2#define RIP_AUTH_MD5 3#define RIP_DEF_AUTH RIP_AUTH_NONE/* neighbor struct for implementing rfc1724 peer group */typedef struct rip_nbr{ struct rip_nbr *n_fwd; struct rip_nbr *n_bwd; rripa n_ipa; int n_version; dword n_tstamp; counter n_badpackets; counter n_badroutes;}RNEIGH;#endif /* _RIP_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -