📄 ospf_mib_helper.h
字号:
mApiOspfExtLsdbChecksum, mApiOspfExtLsdbAdvertisement, mApiOspfAreaAggregateAreaID, /* mApiOspf_t enumeration value = 110 */ mApiOspfAreaAggregateLsdbType, mApiOspfAreaAggregateNet, mApiOspfAreaAggregateMask, mApiOspfAreaAggregateStatus, mApiOspfAreaAggregateEffect, mApiRfc1850MaxLocalIds /* 115 - Number of objects in rfc1850 */} mApiOspf_t;/***************************************************************************************** Manamgenet Interface RFC1850 MIB object enumerations*/typedef enum { EmApiOspf_true = 1, EmApiOspf_false = 2} mApiOspfTrueValue_t;typedef enum { EmApiOspf_enabled = 1, EmApiOspf_disabled = 2} mApiOspfStatus_t;/* Row Status enumerations. This is the same for all tables with the rowStatus object */typedef enum { EmApiOspfRowStatus_active = 1, EmApiOspfRowStatus_notInService = 2, EmApiOspfRowStatus_notReady = 3, EmApiOspfRowStatus_createAndGo = 4, EmApiOspfRowStatus_createAndWait = 5, EmApiOspfRowStatus_destroy = 6} mApiOspfRowStatus_t;typedef enum { EmApiOspfImportAsExtern_importExternal = 1, EmApiOspfImportAsExtern_importNoExternal = 2, EmApiOspfImportAsExtern_importNssa = 3} mApiOspfAreaImportAsType_t;typedef enum { EmApiOspfAreaSummary_noAreaSummary = 1, EmApiOspfAreaSummary_sendAreaSummary = 2} mApiOspfAreaSummary_t;typedef enum { EmApiOspfStubMetricType_mApiOspfMetric = 1, EmApiOspfStubMetricType_comparableCost = 2, EmApiOspfStubMetricType_nonComparable = 3} mApiOspfStubMetricType_t;typedef enum { EmApiOspfIfState_down = 1, EmApiOspfIfState_loopback = 2, EmApiOspfIfState_waiting = 3, EmApiOspfIfState_pointToPoint = 4, EmApiOspfIfState_designatedRouter = 5, EmApiOspfIfState_backupDesignatedRouter = 6, EmApiOspfIfState_otherDesignatedRouter = 7} mApiOspfIfState_t;typedef enum { EmApiOspfIfType_broadcast = 1, EmApiOspfIfType_nbma = 2, EmApiOspfIfType_pointToPoint = 3, EmApiOspfIfType_pointToMultipoint = 5} mApiOspfIfType_t;typedef enum { EmApiOspfIfMulticastForwarding_blocked = 1, EmApiOspfIfMulticastForwarding_multicast = 2, EmApiOspfIfMulticastForwarding_unicast = 3} mApiOspfIfMcastType_t;typedef enum { EmApiOspfVirtIfState_down = 1, EmApiOspfVirtIfState_pointToPoint = 4} mApiOspfVirtIfState_t;typedef enum { EmApiOspfLsdbType_routerLink = 1, EmApiOspfLsdbType_networkLink = 2, EmApiOspfLsdbType_summaryLink = 3, EmApiOspfLsdbType_asSummaryLink = 4, EmApiOspfLsdbType_asExternalLink = 5, EmApiOspfLsdbType_multicastLink = 6, EmApiOspfLsdbType_nssaExternalLink = 7, EmApiOspfLsdbType_type9 = 9, EmApiOspfLsdbType_type10 = 10, EmApiOspfLsdbType_type11 = 11} mApiOspfLsdbType_t;typedef enum { EmApiOspfExtLsdbType_asExternalLink = 5} mApiOspfExtLsdbType_t;typedef enum { EmApiOspfNbrState_down = 1, EmApiOspfNbrState_attempt = 2, EmApiOspfNbrState_init = 3, EmApiOspfNbrState_twoWay = 4, EmApiOspfNbrState_exchangeStart = 5, EmApiOspfNbrState_exchange = 6, EmApiOspfNbrState_loading = 7, EmApiOspfNbrState_full = 8} mApiOspfNbrState_t;typedef enum { EmApiOspfNbmaNbrPermanence_dynamic = 1, EmApiOspfNbmaNbrPermanence_permanent = 2} mApiOspfNbmaNbrPermanence_t;/* supported Authentication Type */typedef enum { EmApiOspfAuthType_none = 0, EmApiOspfAuthType_simplePasswd = 1, EmApiOspfAuthType_md5 = 2} mApiOspfAuthType_t;typedef enum { EmApiOspfAggregateLsdbType_summaryLink = 3, EmApiOspfAggregateLsdbType_nssaExternalLink = 7} mApiOspfAggregateLsdbType_t;typedef enum { EmApiOspfAggregateEffect_advertiseMatching = 1, EmApiOspfAggregateEffect_doNotAdvertiseMatching = 2} mApiOspfAggregateEffect_t;/* mApiOspfClientType_t enumeration type is used to identify the type of client * that attaches to the mApiOspfArea_t or mApiOspfIf_t. It is used when * creating an mApiOspfClient_t node */typedef enum { EmApiOspfClientType_intf = 1, /* client is physical interface */ EmApiOspfClientType_vintf = 2, /* client is virtual interface */ EmApiOspfClientType_host = 3, /* client is host interface */ EmApiOspfClientType_nbr = 4, /* client is neighbor */ EmApiOspfClientType_ag /* client is area aggregation */} mApiOspfClientType_t;/**************************************************************************************** * Mamagement Interface RFC1850 Data Structure. *//* mApiOspfClient_t is used by mApiOspfArea_t to track instances of interface, * virtual interface and host interface that are attached to this area. It is also * used by mApiOspfIf_t to track instances of neighbor that are associated * with the interface. The <clientOldState> mApiOspfRowStatus_t enumeration type is * only used by mApiOspfArea_t to remember the existing rowStatus of the clients * before it forces the client to make the rowStatus state transition due to the * rowStatus changes occur in the mApiOspfArea_t itself */typedef struct mApiOspfClient{ NODE node; /* linked list node */ void *pClient; /* pointer to client data structure */ int oldStatus; /* previous row stauts of the attached client */ mApiOspfClientType_t clientType; /* the type of client */} mApiOspfClient_t;/* OSPF General Group variables * NOTE: * - RFC2178 only supports TOS 0. Thus the ospfTOSSupport scalar object is implemented * as read-only and its value is always set to TRUE * - ospfExitOverflowInterval and ospfExtLsdbLimit scalar objects are implemented as * read-write if and only if the __DBASE_OVERFLOW_SUPPORT__ compiler preprocessor * is turned on. Otherwise, these scalars will be implemented as read-only */typedef struct mApiOspfGenGroup{ ulong_t ospfRouterId; /* read-write */ mApiOspfStatus_t ospfAdminStat; /* read-write */ ulong_t ospfVersionNumber; /* read-only */ mApiOspfTrueValue_t ospfAreaBdrRtrStatus; /* read-only */ mApiOspfTrueValue_t ospfASBdrRtrStatus; /* read-write */ ulong_t ospfExternLsaCount; /* read-only */ ulong_t ospfExternLsaCksumSum; /* read-only */ mApiOspfTrueValue_t ospfTOSSupport; /* read-write, implemented as read-only */ ulong_t ospfOriginateNewLsas; /* read-only */ ulong_t ospfRxNewLsas; /* read-only */ long ospfExtLsdbLimit; /* read-write */ ulong_t ospfExitOverflowInterval; /* read-write */ /* the following read-write objects are implemented as read-only */ ulong_t ospfMulticastExtensions; mApiOspfTrueValue_t ospfDemandExtensions;} mApiOspfGenGroup_t;/* an instance of mApiOspfAreaClass_t object will always be created each time a new * OSPF Area is added to the Management Database. */typedef struct mApiOspfArea{ AVL_NODE node; /* AVL Tree node */ void *pSpfStub; /* pointer to the stub associate with this area */ LIST listIfAttached; /* If clients attached, unsorted */ LIST listAreaAggregate; /* Area Aggregate instances */ ulong_t defaultStubMetric; /* default stub metric */ ushort_t numActiveIf; /* number of active interface attached */ ushort_t numActiveVirtIf; /* number of active virtual interface attached */ ushort_t numActiveHost; /* number of active host interface attached */ ushort_t numIfAttached; /* number of interface instances attached */ ushort_t numVirtIfAttached; /* number of virtual interface instances attached */ ushort_t numHostAttached; /* number of host interface instances attached */ ushort_t numAgAttached; /* number of area aggregate instances attached */ rsAction_t createdAs; /* the method this row is created */ mApiOspfTrueValue_t isTransitArea; /* TRUE if this is a transit area */ void *pOpaqueArea; /* Type-10 Opaque LSA Area */ /* objects associate with the ospfAreaTable */ /* NOTE: ospfAuthType has been obsolete, thus not implemented */ ulong_t ospfAreaId; /* index object, read-only */ ulong_t ospfSpfRuns; /* read-only */ ulong_t ospfAreaBdrRtrCount; /* read-only */ ulong_t ospfAsBdrRtrCount; /* read-only */ ulong_t ospfAreaLsaCount; /* read-only */ ulong_t ospfAreaLsaCksumSum; /* read-only */ mApiOspfAreaImportAsType_t ospfImportAsExtern; /* read-create */ mApiOspfAreaSummary_t ospfAreaSummary; /* read-create */ mApiOspfRowStatus_t ospfAreaStatus; /* read-create */} mApiOspfArea_t;/* objects associate with the ospfStubTable */typedef struct mApiOspfStub{ AVL_NODE node; /* AVL Tree node */ void *pArea; /* pointer to area associated with this stub */ rsAction_t createdAs; /* the method this row is created */ ulong_t ospfStubAreaId; /* index object, read-only */ ulong_t ospfStubTOS; /* index object, read-only */ ulong_t ospfStubMetric; /* read-create */ mApiOspfRowStatus_t ospfStubStatus; /* read-create */ mApiOspfStubMetricType_t ospfStubMetricType; /* read-create */} mApiOspfStub_t;/* objects associate with the ospfLsdbTable */typedef struct mApiOspfLsdb{ AVL_NODE node; /* AVL Tree node */ ulong_t ospfLsdbAreaId; /* index object, read-only */ mApiOspfLsdbType_t ospfLsdbType; /* index object, read-only */ ulong_t ospfLsdbLsid; /* index object, read-only */ ulong_t ospfLsdbRouterId; /* index object, read-only */ long ospfLsdbSequence; /* read-only */ ulong_t ospfLsdbAge; /* read-only */ ulong_t ospfLsdbChecksum; /* read-only */ char *ospfLsdbAdvertisement; /* read-only */ ushort_t lsdbLen; /* advertisement length, not a MIB object */} mApiOspfLsdb_t;/* objects associate with the ospfHostTable */typedef struct mApiOspfHost{ AVL_NODE node; /* AVL Tree node */ ulong_t defaultMtu; /* default mtu from in_ifaddr structure */ ulong_t defaultNetmask; /* default netmask from in_ifaddr structure */ ulong_t defaultMetric; /* default metric from in_ifaddr structure */ rsAction_t createdAs; /* the method this row is created */ void *pArea; /* area associated with this interface */ ulong_t ospfHostIpAddress; /* index object, read-only */ ulong_t ospfHostTOS; /* index object, read-only */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -