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

📄 ospf_mib_helper_update.h

📁 vxworks下ospf协议栈
💻 H
📖 第 1 页 / 共 3 页
字号:
/* ospf_mib_helper_update.h - helper routines for OSPF MIB API *//* Copyright 1998-2003 Wind River Systems, Inc. *//*  * Modification history * -------------------- * 02i,17jul03,kc  Fixed SPR#88975 - added ospf2Mapi_shutdown() prototype. * 02h,09may03,kc  Fixed SPR#88389 - modified doc for ospfExtLsdbCreateReqType - *                 added route protocol ID. * 02g,26may03,kc  Fixed SPR#87790 - removed ospfShutdownReqType ospf2MapiReqType_t. * 02f,25may02,kc  Fixed PR #2700 - Added ospfIfDeleteReqType ospf2MapiReqType_t. * 02e.25may02.kc  Fixed PR #2767- Added ospfIfChangeReqType ospf2MapiReqType_t. Also *                 added ospf2MapiSysCtl_t data structure. * 02d,18apr02,kc  Removed ospf2Mapi_destroy() prototype. * 02c,04apr02,kc  Modified doc for ospfGenGroupUpdateReqType request type - no longer *                 include the ABR status. * 02b,24mar02,kc  Changed ospf2Mapi_proto_register() return type from void to STATUS. * 02a,15feb02,kc  Added wrnOspfIfCreateReqType ospf2MapiReqType_t. * 01z,04feb02,kc  Update doc for ospfGenGroupCreateReqType request type. * 01y,16jan02,kc  Added ospfLsdbCreateReqType,ospfExtLsdbCreateReqType,  *                 wrnOspfLsdbCreateReqType, wrnOspfLocalLsdbCreateReqType, and *                 wrnOspfExtLsdbCreateReqType ospf2MapiReqType_t. * 01x,26dec01,kc  Update doc for ospfNbrUpdateReqType request type. * 01w,19dec01,kc  Redefined ospf2Mapi_proto_register() prototype. Moved ospfProtoType_t *                 enums to ospf_mib_api.h. * 01v,28nov01,kc  Changed pValueBuf poiner type from uchar_t to char. * 01u,21oct01,kc  Added ospfShutdownReqType ospf2MapiReqType_t. * 01t,21oct01,kc  Modified NVRAM_DELETE_FUNCPTR arguments. * 01s,21oct01,kc  Modified arguments for ospf2Mapi_proto_register()  prototype. Added  *                 ospf2Mapi_proto_deregister() prototype. * 01r,20oct01,kc  Added Area Aggregation relation prototypes and ospf2MapiReqType_t. * 01q,19oct01,kc  Added __OPAQUE_LSA__ preproc. * 01p,17oct01,kc  Added ospfProtoType_t enumeration values. * 01o,16oct01,kc  Removed __WRN_OSPF_MIB__ preproc. * 01n,13oct01,kc  Added more valueBuf[] explanations for ospfHostCreateReqType. * 01m,13oct01,kc  Added ospf2MapiReqBuf_t structure def. (moved from ospf_mApi_helper.c) * 01l,10oct01,kc  Added mApi2Ospf_configNbr() and mApi2Ospf_deletexxx() prototypes. * 01k,08oct01,kc  Removed *arg argument from ospf2Mapi_request() prototype. * 01j,07oct01,kc  Added support for WRN-OSPF MIB enumeration types. * 01i,07oct01,kc  Added NVRAM_SAVE_FUNCPTR and NVRAM_RETRIEVE_FUNCPTR typedefs. * 01h,07oct01,kc  Added ospf2Mapi_destroy() prototype. * 01g,06oct01,kc  Removed ospfHostUpdateReqType ospf2MapiReqType_t since there is  *                 nothing to update for ospfHostTable. * 01f,04oct01,kc  Added protypes for ospf2Mapi_xxx_create() * 01e,20sep01,kc  Added numOspfReqBufCnt argument to ospf2Mapi_init(). * 01d,18sep01,kc  Added ospfStubReqType and ospfIfMetricReqType ospf2MapiReqType_t. * 01c,15sep01,kc  Added prototypes for ospf2Mapi_xxx() routines. * 01b,12sep01,kc  Added prototypes for mApi2Ospf_xxx() routines. * 01a,07sep01,kc  Initial file creation. *//*DESCRIPTION:This file contains the functional prototypes for OSPF MIB helper routines. */#ifndef __INCospf_mib_helper_updateh#define __INCospf_mib_helper_updateh#ifdef __cplusplusextern "C" {#endif /* __cplusplus *//* NOTE: Ideally, the following system dependent function pointers typedefs should *       be defined in ospf_mib_api.h. However, that requires OSPF core code to *       also include a laundary list of header files that it doesn't need to *       know (such as ospf_mib_avl_lib.h). Since ospf_mib_utils.h and this header file  *       are the only two header files that are included by OSPF code code, this header  *       file becomes the logical place for the following typedefs. *//* this is the function pointer pointed to a system dependent save routine for saving * the given object to the nvram. */typedef STATUS (* NVRAM_SAVE_FUNCPTR)              (               ulong_t   *pInstance,     /* pointer to OID instance array */              ushort_t  instanceLen,    /* number of sub-ids in instance */              ulong_t   oidPrefixEnum,  /* enum value for object OID Prefix */              void      *pValueBuf,     /* pointer to value buffer */              ulong_t   valueLen       /* value byte length */              );/* this is the function pointer pointed to a system dependent delete routine for  * deleting a table row from nvram. */typedef STATUS (* NVRAM_DELETE_FUNCPTR)               (               ulong_t   *pInstance,     /* pointer to OID instance array */              ushort_t  instanceLen     /* number of sub-ids in instance */              );/* this is the function pointer pointed to a system dependent retrieve routine for * retrieving all prevously saved OSPF configuration from nvram. The retrieve routine * must invoke the MIB API for read-create objects in each ospf table with the  * mApiRequest_t set to MAPI_NVM_SET request type so that MIB API can repopulate its  * management database at system startup. */typedef STATUS (* NVRAM_RETRIEVE_FUNCPTR) (void );/* define the configuration type uses by the underlying OSPF protocol */typedef enum {    /* the following enumeration types are used by OSPF to update the statistical     * and operational status     */    ospfGenGroupUpdateReqType = 1, /* update General Group read-only variables */    ospfAreaUpdateReqType,         /* update an ospf area instance */     ospfLsdbUpdateReqType,         /* update an ospf lsdb instance */    ospfIfUpdateReqType,           /* update an ospf interface instance */    ospfVirtIfUpdateReqType,       /* update an ospf virtual interface instance */    ospfNbrUpdateReqType,          /* update an ospf neighbor instance */    ospfVirtNbrUpdateReqType,      /* update an ospf virtual neighbor instance */    ospfExtLsdbUpdateReqType,      /* update an ospf external lsdb instance */    /* the following enumeration types are used by OSPF to create new instance of link     * state database (including Opaques Lsa types)     */    ospfLsdbCreateReqType,        /* create an instance of lsdb */    ospfExtLsdbCreateReqType,     /* create an ospf external lsdb instance */    /* the following enumeration types are used by OSPF to delete an instance of a     * particular table from MIB API     */    ospfLsdbDeleteReqType,         /* delete an ospf lsdb instance */    ospfNbrDeleteReqType,          /* delete an ospf nbr instance */    ospfVirtNbrDeleteReqType,      /* delete an ospf virtual neighbor instance */    ospfExtLsdbDeleteReqType,      /* delete an ospf external lsdb instance */    /* the following enumeration types are used by OSPF to create an instance of     * ospf area, stub, interface, interface metric or virtual interface in MIB API      * during startup. These enumeration types are for backward compatibility to      * support the static configuration methodology. It shall not be used by any aother      * applications. These enumeration types will eventually be obsolote     */    ospfGenGroupCreateReqType,     /* setup ospf General Group scalar objects */    ospfAreaCreateReqType,         /* create an instance of ospf area */    ospfStubCreateReqType,         /* create an instance of ospf stub */    ospfHostCreateReqType,         /* create an instance of ospf host interface */    ospfIfCreateReqType,           /* create an instance of ospf interface */    ospfIfMetricCreateReqType,     /* create an instance of ospf interface metric */    ospfVirtIfCreateReq,           /* create an instance of ospf virtual interface */    ospfAreaAggregateCreateReq,    /* create an instance of ospf area aggregate */    ospfIfChangeReqType,   /* interface flag change event */    ospfIfDeleteReqType,   /* interface address deleted event */    /* the following enumeration types are for the wrn-ospf enterprise mib.      * wrnOspfLsdbTable is for Type-10 Opaque LSA, wrnOspfLocalLsdbTable     * is for Type-9 Opaque LSA and wrnOspfExtLsdbTable is for Type-11      * Opaque LSA support     */#if defined(__OPAQUE_LSA__)    wrnOspfGenGroupUpdateReqType,  /* update wrnOspf General Group */    wrnOspfAreaUpdateReqType,      /* update an instance of wrnOspfAreaTable */    wrnOspfLsdbUpdateReqType,      /* update an instance of wrnOspfLsdbTable */    wrnOspfLocalLsdbUpdateReqType, /* update an instance of wrnOspfLocalLsdbTable */    wrnOspfExtLsdbUpdateReqType,   /* update an instance of wrnOspfExtLsdbTable */    wrnOspfLsdbCreateReqType,      /* create an instance of wrnOspfLsdbTable */    wrnOspfLocalLsdbCreateReqType, /* create an instance of wrnOspfLocalLsdbTable */    wrnOspfExtLsdbCreateReqType,   /* create an instance of wrnOspfExtLsdbTable */    wrnOspfLsdbDeleteReqType,      /* delete an wrnOspfLsdbTable instance */    wrnOspfLocalLsdbDeleteReqType, /* delete an wrnOspfLocalLsdbTable instance, Type-9 */    wrnOspfExtLsdbDeleteReqType,    /* delete an wrnOspfExtLsdbTable instance */#endif /* __OPAQUE_LSA__ */    /* the following enumeration types are used by OSPF to create an instance of     * wrn-ospf interface during startup. These enumeration types are for backward      * compatibility to support the static configuration methodology. It shall not      * be used by any aother applications. These enumeration types will eventually      * be obsolote     */    wrnOspfIfCreateReqType        /* update an wrnOsfIfTable instance */} ospf2MapiReqType_t;/* ospf2MapiReqBuf_t structure is a generic data structure used internally by OSPF * protocol to provide operational status and statistics updates to the MIB API.  * In order to maintain backward compatibility with the existing static configuration * methodology, this data structure is also used by OSPF protocol at init time to update  * Management Database for any configuration that are statically created. This involves * creating the ospf area, stub area, interface, interface metric, and virtual interface  * instances in the Management Database. The ospf2MapiReqBuf_t data structure is  * initialized in the ospf2Mapi_request() function (invoked by the OSPF protocol). * Using this data strcuture, the OSPF protocol can provide the necessary updates to the * OSPF MIB API asynchronously, thus, minimize the disruption to the overall OSPF  * operation. Due to the multi-usage of the ospf2MapiReqBuf_t data structure, the  * representation of the data structure is highly depending on the type of request  * (defined as ospf2MapiReqType_t enumeration type). The following is the  * representation of the ospf2MapiReqBuf_t data structure for each ospf2MapiReqType_t  * request type: *  * ospfGeneralGroup (reqType = ospfGenGroupCreateReqType) * valueBuf[0] = the value of ospfRouterId  read-write object

⌨️ 快捷键说明

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