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

📄 igmprouterlib.h

📁 vxworks 6.x 的全部头文件
💻 H
字号:
/* igmpRouterLib.h - igmp include file for router side code *//* * Copyright (c) 2000-2005 Wind River Systems, Inc. * * The right to copy, distribute, modify or otherwise make use * of this software may be licensed only pursuant to the terms * of an applicable Wind River license agreement. *//*modification history--------------------02b,30mar05,kch  Removed igmpCapSend() prototype.02a,02aug04,rae  Ported to Dual Stack 01m,04nov03,rlm  Ran batch header path update for header re-org.01l,03nov03,rlm  Removed wrn/coreip/ prefix from #includes for header re-org.01k,03nov03,rlm  Relocated from .wind_vxw_h to /vobs/Clarinet_IPv6 vob for                 header re-org.01j,13jan03,rae  Merged from velocecp branch (SPRs 83920, 72379)01i,21dec01,niq  added missing #else for non-ANSI C prototypes01h,18dec01,spm  added modification history entry for automatic merge01g,18dec01,wrs  automatic merge from version 5 of tor3_x.synth.irvine remote                 branch: added callback to report interface status to PIM01f,31jul01,rae  add new error code01e,28jul01,spm  added modification history entry for automatic merge; fixed                 version numbers from 01f changes01d,27jul01,cjh  fixed prototype for igmpSetPimCallback01c,28jun01,cjh  added APIs for new mroute/PIM01b,29may01,rae  added fixes from Beta01a,29mar01,spm  file creation: copied from version 01d of tor2_0.open_stack                 branch (wpwr VOB, written by rae) for unified code base*/#ifndef __INCigmpRouterLibh#define __INCigmpRouterLibh#include <netinet/igmp.h>#include <netinet/igmp_var.h>#include <netinet/ip_mroute.h>#include "lstLib.h"#ifdef __cplusplusextern "C" {#endif/* defines */#define S_igmpRouterLib_NOT_INITIALIZED      (M_igmpRouterLib | 1)#define S_igmpRouterLib_VIF_OUT_OF_RANGE     (M_igmpRouterLib | 2)#define S_igmpRouterLib_NO_FREE_VIFS         (M_igmpRouterLib | 3)#define S_igmpRouterLib_INVALID_PORT_NUM     (M_igmpRouterLib | 4)#define S_igmpRouterLib_NOT_ALL_IFS_DOWN     (M_igmpRouterLib | 5)#define S_igmpRouterLib_THRESHOLD_REQUIRED   (M_igmpRouterLib | 6)#define MAX_PORT_NUM MAXVIFS/* typedefs and enum */enum iCapType { IGMP_TIMER_CAP, IGMP_MSG_CAP };enum igmpIfMsgType { IGMP_IF_DOWN, IGMP_IF_UP };typedef struct		    {    struct in_addr   addr;    struct in_addr   mask;    struct ifnet *   pIfnet;    int              index;    } IGMP_PORT_INFO;    typedef struct    {    int              type;    int              index;    struct in_addr   source;    struct igmp      igmp;    } IGMP_CAPSULE;    typedef struct    {    NODE node;    VOIDFUNCPTR pNotifyHook;    } IGMP_HOOK_LIST;/* function declarations */extern STATUS igmpInterfaceEnable (char* pDrv, int unit, UINT32 threshold, 				   UINT32 rate_limit);extern STATUS igmpInterfaceDisable (char* pDrv, int unit);extern STATUS igmpGroupDelete(int port, struct in_addr groupAddr);extern STATUS igmpGroupAdd(int port, struct in_addr groupAddr);extern int igmpPktSend(int port, caddr_t buf, int bufLen, struct sockaddr * to,                int toLen);extern struct in_addr * portToIP(int port);extern UINT32 portToIf(int port);extern struct ifnet * portToIfnet(int port);extern STATUS igmpRouterLibInit(void);extern STATUS igmpRouterLibQuit(void);extern STATUS igmpPimCallbackSet(VOIDFUNCPTR _pimHook);extern STATUS igmpPimInterfaceCallbackSet(VOIDFUNCPTR _pimInterfaceHook);extern STATUS igmpAssertSet(FUNCPTR _pAssertHook);extern struct ifnet* igmpPortToIfnet (int port);extern STATUS igmpNameToPort(char*pDrv, int unit);extern STATUS igmpDebugSet(int debug);extern STATUS igmpMfcSet(int messageType, struct mfcctl* gCtl);extern STATUS igmpNotifyHookAdd (VOIDFUNCPTR);extern STATUS igmpNotifyHookDelete (VOIDFUNCPTR);#ifdef __cplusplus}#endif#endif /* __INCigmpRouterLibh */

⌨️ 快捷键说明

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