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

📄 vsmcast.h

📁 vxworks 6.x 的全部头文件
💻 H
字号:
/* vsMcast.h - virtual stack data for IGMP *//* * Copyright (c) 2000-2005 Wind River Systems, Inc. * * The right to copy, distribute or otherwise make use of this software * may be licensed only pursuant to the terms of an applicable Wind River * license agreement. No license to Wind River intellectual property rights * is granted herein. All rights not licensed by Wind River are reserved * by Wind River. *//*modification history--------------------01j,16jul05,dlk  Remove tbf_reprocess_qHandle; it must be vif-specific, and		 is now a member of struct tbf.01i,27apr05,kch  Move ip_mrouter definition to VS_IP.01h,25feb05,niq  add support for router alert01g,31jan05,niq  merge mroute changes from comp_wn_ipv6_multicast_interim-dev                 branch  (ver 1)01f,19sep04,rae  fix up01e,04nov03,rlm  Ran batch header path update for header re-org.01d,14jun01,spm  added modification history entries for automatic merges01c,14jun01,wrs  automatic merge from version 2 of tor3_x.synth.irvine remote                 branch: updated to use new multicast routing support01b,17may01,wrs  automatic merge from version 1 of tor3_x.synth.irvine remote                 branch: new implementation for PIM support from BSD 4.4 Net/301a,29mar01,spm  file creation: copied from version 01a of tor2_0.open_stack                 branch (wpwr VOB) for unified code base*/#ifndef __INCvsMcasth#define __INCvsMcasth/* includes */#include "netinet/ip_mroute.h"#include "sys/callout.h"#ifdef PIM#include <netinet/pim.h>#include <netinet/pim_var.h>#endif/* defines */#define VS_IP_MROUTE_DATA ((VS_IP_MROUTE *)vsTbl[myStackNum]->pMrouteGlobals)typedef struct vs_ip_mroute{/* * Globals.  All but ip_mrouter and ip_mrtproto could be static, * except for netstat or debugging purposes. */#ifdef RSVP	u_int				rsvpdebug;#endif /* RSVP */	struct mrtstat			_mrtstat;	struct mfc *			mfctable[MFCTBLSIZ];	struct vif 			viftable[MAXVIFS];	u_char 				nexpire[MFCTBLSIZ];	u_int				mrtdebug ;  /*debug level 	*/	struct callout_handle  		expire_upcalls_ch;	/* * Define the token bucket filter structures * tbftable -> each vif has one of these for storing info  */	struct tbf 			tbftable[MAXVIFS];	void *				tbf_reprocess_qHandle;/* * 'Interfaces' associated with decapsulator (so we can tell * packets that went through it from ones that get reflected * by a broken gateway).  These interfaces are never linked into * the system ifnet list & no routes point to them.  I.e., packets * can't be sent this way.  They only exist as a placeholder for * multicast source verification. */	struct ifnet 			multicast_decap_if[MAXVIFS];/* * Bandwidth meter variables and constants *//* * Pending timeouts are stored in a hash table, the key being the * expiration time. Periodically, the entries are analysed and processed. */	struct bw_meter *		bw_meter_timers[BW_METER_BUCKETS];	struct callout_handle 		bw_meter_ch;/* * Pending upcalls are stored in a vector which is flushed when * full, or periodically */	struct bw_upcall			bw_upcalls[BW_UPCALLS_MAX];	u_int				bw_upcalls_n; /*# of pending upcalls */	struct callout_handle 		bw_upcalls_ch;#ifdef PIM	struct pimstat 			_pimstat;	struct ifnet 			multicast_register_if;	vifi_t 				reg_vif_num;#endif /* VIRTUAL_STACK *//* * Private variables. */	vifi_t	   			numvifs;	int 				have_encap_tunnel;/* * one-back cache used by ipip_input to locate a tunnel's vif * given a datagram's src ip address. */	u_long 				last_encap_src;	struct vif *			last_encap_vif;/* * whether or not special PIM assert processing is enabled. */	int 				pim_assert;	uint32_t 			mrt_api_config;/* * Static stack variables */	int				ipm_last_log;	struct route			ipm_ro;	uint32_t 			ipm_last_tv_sec;} VS_IP_MROUTE;/* typedefs *//* macros */#define _mrtstat  		VS_IP_MROUTE_DATA->_mrtstat#define _mfctable  		VS_IP_MROUTE_DATA->mfctable#define _viftable  		VS_IP_MROUTE_DATA->viftable#define nexpire  		VS_IP_MROUTE_DATA->nexpire#define mrtdebug  		VS_IP_MROUTE_DATA->mrtdebug #define rsvpdebug  		VS_IP_MROUTE_DATA->rsvpdebug #define expire_upcalls_ch  	VS_IP_MROUTE_DATA->expire_upcalls_ch#define tbftable  		VS_IP_MROUTE_DATA->tbftable#define tbf_reprocess_qHandle  	VS_IP_MROUTE_DATA->tbf_reprocess_qHandle#define multicast_decap_if  	VS_IP_MROUTE_DATA->multicast_decap_if#define bw_meter_timers  	VS_IP_MROUTE_DATA->bw_meter_timers#define bw_meter_ch  		VS_IP_MROUTE_DATA->bw_meter_ch#define bw_upcalls  		VS_IP_MROUTE_DATA->bw_upcalls#define bw_upcalls_n  		VS_IP_MROUTE_DATA->bw_upcalls_n#define bw_upcalls_ch  		VS_IP_MROUTE_DATA->bw_upcalls_ch#define _pimstat  		VS_IP_MROUTE_DATA->_pimstat#define multicast_register_if  	VS_IP_MROUTE_DATA->multicast_register_if#define reg_vif_num  		VS_IP_MROUTE_DATA->reg_vif_num/* * Private variables. */#define numvifs  		VS_IP_MROUTE_DATA->numvifs#define have_encap_tunnel  	VS_IP_MROUTE_DATA->have_encap_tunnel/* * one-back cache used by ipip_input to locate a tunnel's vif * given a datagram's src ip address. */#define last_encap_src  		VS_IP_MROUTE_DATA->last_encap_src#define last_encap_vif 		VS_IP_MROUTE_DATA->last_encap_vif/* * whether or not special PIM assert processing is enabled. */#define pim_assert 		VS_IP_MROUTE_DATA->pim_assert#define mrt_api_config 		VS_IP_MROUTE_DATA->mrt_api_config#define ipm_last_log 		VS_IP_MROUTE_DATA->ipm_last_log#define ipm_ro 			VS_IP_MROUTE_DATA->ipm_ro#define ipm_last_tv_sec 	VS_IP_MROUTE_DATA->ipm_last_tv_sec#endif /* __INCvsMcasth */

⌨️ 快捷键说明

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