m2Lib.h
资源名称:ixp425BSP.rar [点击查看]
上传用户:luoyougen
上传日期:2008-05-12
资源大小:23136k
文件大小:43k
源码类别:
VxWorks
开发平台:
C/C++
- /* m2Lib.h - VxWorks MIB-II interface to SNMP Agent */
- /* Copyright 1984 - 2002 Wind River Systems, Inc. */
- #include "copyright_wrs.h"
- /*
- modification history
- --------------------
- 01i,22apr02,rae Fixed MAXOIDLENGH typo (SPR #73303)
- 01h,05dec01,vvv changed M2_IFSTACKTBL index to unsigned (SPR #71316)
- 01g,10oct01,rae merge from truestack ver 01n, base o1f
- 01f,25oct00,niq Merge RFC2233 changes from open_stack-p1-r1 branch
- 01j,18may00,ann merging from post R1 to include RFC2233 and the ipRouteMask
- bug fix
- 01i,14apr00,ann adding changes to make ipRouteMask writeable
- 01h,28mar00,rae merging in IGMPv2 changes
- 01g,10mar00,ead added function declaration for m2IfStackTblUpdate
- 01f,11feb00,ann making changes for RFC 2233 implementation
- 01e,24mar99,ead added m2SetIfLastChange() declaration (SPR #23290)
- 01d,10sep98,ann added doc to M2_INTERFACETBL fields spr# 21078
- 01c,11apr97,rjc fixed bad value of error define
- 01b,05feb97,rjc added new error codes to support phase-2 ospf mib
- 01a,08dec93,jag written
- */
- #ifndef __INCm2Libh
- #define __INCm2Libh
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include "net/if.h"
- #include "avlLib.h"
- #if ((CPU_FAMILY==I960) && (defined __GNUC__))
- #pragma align 1 /* tell gcc960 not to optimize alignments */
- #endif /* CPU_FAMILY==I960 */
- /* m2Lib.c Error Codes */
- #define S_m2Lib_INVALID_PARAMETER (M_m2Lib | 1)
- #define S_m2Lib_ENTRY_NOT_FOUND (M_m2Lib | 2)
- #define S_m2Lib_TCPCONN_FD_NOT_FOUND (M_m2Lib | 3)
- #define S_m2Lib_INVALID_VAR_TO_SET (M_m2Lib | 4)
- #define S_m2Lib_CANT_CREATE_SYS_SEM (M_m2Lib | 5)
- #define S_m2Lib_CANT_CREATE_IF_SEM (M_m2Lib | 6)
- #define S_m2Lib_CANT_CREATE_ROUTE_SEM (M_m2Lib | 7)
- #define S_m2Lib_ARP_PHYSADDR_NOT_SPECIFIED (M_m2Lib | 8)
- #define S_m2Lib_IF_TBL_IS_EMPTY (M_m2Lib | 9)
- #define S_m2Lib_IF_CNFG_CHANGED (M_m2Lib | 10)
- #define S_m2Lib_TOO_BIG (M_m2Lib | 11)
- #define S_m2Lib_BAD_VALUE (M_m2Lib | 12)
- #define S_m2Lib_READ_ONLY (M_m2Lib | 13)
- #define S_m2Lib_GEN_ERR (M_m2Lib | 14)
- #define ETHERADDRLEN 6
- #define M2DISPLAYSTRSIZE 256
- #define MAXOIDLENGTH 40
- #define MAXIFPHYADDR 16
- /* defines for enumerated types as specified by RFC 1213 */
- /* possible values for ifType (found in IANA-MIB) */
- #define M2_ifType_other 1 /* none of the following */
- #define M2_ifType_regular1822 2
- #define M2_ifType_hdh1822 3
- #define M2_ifType_ddnX25 4
- #define M2_ifType_rfc877x25 5
- #define M2_ifType_ethernetCsmacd 6
- #define M2_ifType_ethernet_csmacd M2_ifType_ethernetCsmacd
- #define M2_ifType_iso88023Csmacd 7
- #define M2_ifType_iso88023_csmacd M2_ifType_iso88023Csmacd
- #define M2_ifType_iso88024TokenBus 8
- #define M2_ifType_iso88024_tokenBus M2_ifType_iso88024TokenBus
- #define M2_ifType_iso88025TokenRing 9
- #define M2_ifType_iso88025_tokenRing M2_ifType_iso88025TokenRing
- #define M2_ifType_iso88026Man 10
- #define M2_ifType_iso88026_man M2_ifType_iso88026Man
- #define M2_ifType_starLan 11
- #define M2_ifType_proteon10Mbit 12
- #define M2_ifType_proteon80Mbit 13
- #define M2_ifType_hyperchannel 14
- #define M2_ifType_fddi 15
- #define M2_ifType_lapb 16
- #define M2_ifType_sdlc 17
- #define M2_ifType_ds1 18 /* DS1-MIB */
- #define M2_ifType_e1 19 /* Obsolete see DS1-MIB */
- #define M2_ifType_basicISDN 20
- #define M2_ifType_primaryISDN 21
- #define M2_ifType_propPointToPointSerial 22 /* proprietary serial */
- #define M2_ifType_ppp 23
- #define M2_ifType_softwareLoopback 24
- #define M2_ifType_eon 25 /* CLNP over IP */
- #define M2_ifType_ethernet3Mbit 26
- #define M2_ifType_nsip 27 /* XNS over IP */
- #define M2_ifType_slip 28 /* generic SLIP */
- #define M2_ifType_ultra 29 /* ULTRA technologies */
- #define M2_ifType_ds3 30 /* DS3-MIB */
- #define M2_ifType_sip 31 /* SMDS, coffee */
- #define M2_ifType_frameRelay 32 /* DTE only. */
- #define M2_ifType_rs232 33
- #define M2_ifType_para 34 /* parallel-port */
- #define M2_ifType_arcnet 35 /* arcnet */
- #define M2_ifType_arcnetPlus 36 /* arcnet plus */
- #define M2_ifType_atm 37 /* ATM cells */
- #define M2_ifType_miox25 38
- #define M2_ifType_sonet 39 /* SONET or SDH */
- #define M2_ifType_x25ple 40
- #define M2_ifType_iso88022llc 41
- #define M2_ifType_localTalk 42
- #define M2_ifType_smdsDxi 43
- #define M2_ifType_frameRelayService 44 /* FRNETSERV-MIB */
- #define M2_ifType_v35 45
- #define M2_ifType_hssi 46
- #define M2_ifType_hippi 47
- #define M2_ifType_modem 48 /* Generic modem */
- #define M2_ifType_aal5 49 /* AAL5 over ATM */
- #define M2_ifType_sonetPath 50
- #define M2_ifType_sonetVT 51
- #define M2_ifType_smdsIcip 52 /* SMDS InterCarrier Interface */
- #define M2_ifType_propVirtual 53 /* proprietary virtual/internal */
- #define M2_ifType_propMultiplexor 54 /* proprietary multiplexing */
- #define M2_ifType_ieee80212 55 /* 100BaseVG */
- #define M2_ifType_fibreChannel 56 /* Fibre Channel */
- #define M2_ifType_hippiInterface 57 /* HIPPI interfaces */
- #define M2_ifType_frameRelayInterconnect 58 /* Obsolete use either 32 or 44 */
- #define M2_ifType_aflane8023 59 /* ATM Emulated LAN for 802.3 */
- #define M2_ifType_aflane8025 60 /* ATM Emulated LAN for 802.5 */
- #define M2_ifType_cctEmul 61 /* ATM Emulated circuit */
- #define M2_ifType_fastEther 62 /* Fast Ethernet (100BaseT) */
- #define M2_ifType_isdn 63 /* ISDN and X.25 */
- #define M2_ifType_v11 64 /* CCITT V.11/X.21 */
- #define M2_ifType_v36 65 /* CCITT V.36 */
- #define M2_ifType_g703at64k 66 /* CCITT G703 at 64Kbps */
- #define M2_ifType_g703at2mb 67 /* Obsolete see DS1-MIB */
- #define M2_ifType_qllc 68 /* SNA QLLC */
- #define M2_ifType_fastEtherFX 69 /* Fast Ethernet (100BaseFX) */
- #define M2_ifType_channel 70 /* channel */
- #define M2_ifType_ieee80211 71 /* radio spread spectrum */
- #define M2_ifType_ibm370parChan 72 /* IBM 360/370 OEMI Channel */
- #define M2_ifType_escon 73 /* IBM Enterprise Systems Cnx */
- #define M2_ifType_dlsw 74 /* Data Link Switching */
- #define M2_ifType_isdns 75 /* ISDN S/T interface */
- #define M2_ifType_isdnu 76 /* ISDN U interface */
- #define M2_ifType_lapd 77 /* Link Access Protocol D */
- #define M2_ifType_ipSwitch 78 /* IP Switching Objects */
- #define M2_ifType_rsrb 79 /* Remote Source Route Bridging */
- #define M2_ifType_atmLogical 80 /* ATM Logical Port */
- #define M2_ifType_ds0 81 /* Digital Signal Level 0 */
- #define M2_ifType_ds0Bundle 82 /* ds0s on the same ds1 */
- #define M2_ifType_bsc 83 /* Bisynchronous Protocol */
- #define M2_ifType_async 84 /* Asynchronous Protocol */
- #define M2_ifType_cnr 85 /* Combat Net Radio */
- #define M2_ifType_iso88025Dtr 86 /* ISO 802.5r DTR */
- #define M2_ifType_eplrs 87 /* Ext Pos Loc Report Sys */
- #define M2_ifType_arap 88 /* Appletalk Remote Access Proto */
- #define M2_ifType_propCnls 89 /* Proprietary Cnx-less Proto */
- #define M2_ifType_hostPad 90 /* CCITT-ITU X.29 PAD Protocol */
- #define M2_ifType_termPad 91 /* CCITT-ITU X.3 PAD Facility */
- #define M2_ifType_frameRelayMPI 92 /* Multiproto Interconnect FR */
- #define M2_ifType_x213 93 /* CCITT-ITU X213 */
- #define M2_ifType_adsl 94 /* Asymmetric DSL */
- #define M2_ifType_radsl 95 /* Rate-Adapt. DSL */
- #define M2_ifType_sdsl 96 /* Symmetric DSL */
- #define M2_ifType_vdsl 97 /* Very H-Speed DSL */
- #define M2_ifType_iso88025CRFPInt 98 /* ISO 802.5 CRFP */
- #define M2_ifType_myrinet 99 /* Myricom Myrinet */
- #define M2_ifType_voiceEM 100 /* voice recEive and transMit */
- #define M2_ifType_voiceFXO 101 /* voice Foreign Exchg Office */
- #define M2_ifType_voiceFXS 102 /* voice Foreign Exchg Station */
- #define M2_ifType_voiceEncap 103 /* voice encapsulation */
- #define M2_ifType_voiceOverIp 104 /* voice over IP encapsulation */
- #define M2_ifType_atmDxi 105 /* ATM DXI */
- #define M2_ifType_atmFuni 106 /* ATM FUNI */
- #define M2_ifType_atmIma 107 /* ATM IMA */
- #define M2_ifType_pppMultilinkBundle 108 /* PPP Multilink Bundle */
- #define M2_ifType_ipOverCdlc 109 /* IBM ipOverCdlc */
- #define M2_ifType_ipOverClaw 110 /* IBM Common Link Access */
- #define M2_ifType_stackToStack 111 /* IBM stackToStack */
- #define M2_ifType_virtualIpAddress 112 /* IBM VIPA */
- #define M2_ifType_mpc 113 /* IBM multi-protocol channel */
- #define M2_ifType_ipOverAtm 114 /* IBM ipOverAtm */
- #define M2_ifType_iso88025Fiber 115 /* ISO 802.5j Fiber Token Ring */
- #define M2_ifType_tdlc 116 /* IBM twinaxial data link */
- #define M2_ifType_gigabitEthernet 117 /* Gigabit Ethernet */
- #define M2_ifType_hdlc 118 /* HDLC */
- #define M2_ifType_lapf 119 /* LAP F */
- #define M2_ifType_v37 120 /* V.37 */
- #define M2_ifType_x25mlp 121 /* Multi-Link Protocol */
- #define M2_ifType_x25huntGroup 122 /* X25 Hunt Group */
- #define M2_ifType_trasnpHdlc 123 /* Transp HDLC */
- #define M2_ifType_interleave 124 /* Interleave channel */
- #define M2_ifType_fast 125 /* Fast channel */
- #define M2_ifType_ip 126 /* IP (APPN HPR in IP networks) */
- #define M2_ifType_docsCableMaclayer 127 /* CATV Mac Layer */
- #define M2_ifType_docsCableDownstream 128 /* CATV Downstream interface */
- #define M2_ifType_docsCableUpstream 129 /* CATV Upstream interface */
- #define M2_ifType_a12MppSwitch 130 /* Avalon Parallel Processor */
- #define M2_ifType_tunnel 131 /* Encapsulation interface */
- #define M2_ifType_coffee 132 /* coffee pot */
- #define M2_ifType_ces 133 /* Circuit Emulation Service */
- #define M2_ifType_atmSubInterface 134 /* ATM Sub Interface */
- #define M2_ifType_l2vlan 135 /* Layer 2 V-LAN using 802.1Q */
- #define M2_ifType_l3ipvlan 136 /* Layer 3 V-LAN using IP */
- #define M2_ifType_l3ipxvlan 137 /* Layer 3 V-LAN using IPX */
- #define M2_ifType_digitalPowerline 138 /* IP over Power Lines */
- #define M2_ifType_mediaMailOverIp 139 /* Multimedia Mail over IP */
- #define M2_ifType_dtm 140 /* Dynamic sync Transfer Mode */
- #define M2_ifType_dcn 141 /* Data Communications Network */
- #define M2_ifType_ipForward 142 /* IP Forwarding Interface */
- #define M2_ifType_msdsl 143 /* Multi-rate Symmetric DSL */
- #define M2_ifType_ieee1394 144 /* IEEE1394 High Perf Serial Bus */
- #define M2_ifType_if_gsn 145 /* HIPPI-6400 */
- #define M2_ifType_dvbRccMacLayer 146 /* DVB-RCC MAC Layer */
- #define M2_ifType_dvbRccDownstream 147 /* DVB-RCC Downstream Channel */
- #define M2_ifType_dvbRccUpstream 148 /* DVB-RCC Upstream Channel */
- #define M2_ifType_atmVirtual 149 /* ATM Virtual Interface */
- #define M2_ifType_mplsTunnel 150 /* MPLS Tunnel Virtual Interface */
- #define M2_ifType_srp 151 /* Spatial Reuse Protocol */
- #define M2_ifType_voiceOverAtm 152 /* Voice Over ATM */
- #define M2_ifType_voiceOverFrameRelay 153 /* Voice Over Frame Relay */
- #define M2_ifType_idsl 154 /* DSL over ISDN */
- #define M2_ifType_compositeLink 155 /* Avici Composite Link */
- #define M2_ifType_ss7SigLink 156 /* SS7 Signaling Link */
- #define M2_ifType_pmp 157 /* Point to Multipoint */
- /* packet control used for stat counting routines (in or out) */
- #define M2_PACKET_IN 1
- #define M2_PACKET_OUT 2
- /* interface attach/insert and detach/remove */
- #define M2_IF_TABLE_INSERT 1
- #define M2_IF_TABLE_REMOVE 2
- /* stack layer insert/remove */
- #define M2_STACK_TABLE_INSERT 1
- #define M2_STACK_TABLE_REMOVE 2
- /* interface mib styles used by the MUX/drivers */
- #define MIB_STYLE_1213 1
- #define MIB_STYLE_2233 2
- /* interface counter IDs */
- #define M2_ctrId_ifInOctets 1
- #define M2_ctrId_ifInUcastPkts 2
- #define M2_ctrId_ifInNUcastPkts 3
- #define M2_ctrId_ifInDiscards 4
- #define M2_ctrId_ifInErrors 5
- #define M2_ctrId_ifInUnknownProtos 6
- #define M2_ctrId_ifOutOctets 7
- #define M2_ctrId_ifOutUcastPkts 8
- #define M2_ctrId_ifOutNUcastPkts 9
- #define M2_ctrId_ifOutDiscards 10
- #define M2_ctrId_ifOutErrors 11
- #define M2_ctrId_ifInMulticastPkts 12
- #define M2_ctrId_ifInBroadcastPkts 13
- #define M2_ctrId_ifOutMulticastPkts 14
- #define M2_ctrId_ifOutBroadcastPkts 15
- #define M2_ctrId_ifHCInOctets 16
- #define M2_ctrId_ifHCInUcastPkts 17
- #define M2_ctrId_ifHCInMulticastPkts 18
- #define M2_ctrId_ifHCInBroadcastPkts 19
- #define M2_ctrId_ifHCOutOctets 20
- #define M2_ctrId_ifHCOutUcastPkts 21
- #define M2_ctrId_ifHCOutMulticastPkts 22
- #define M2_ctrId_ifHCOutBroadcastPkts 23
- /* interface variable IDs */
- #define M2_varId_ifAdminStatus 1
- #define M2_varId_ifLinkUpDownTrapEnable 2
- #define M2_varId_ifMtu 3
- #define M2_varId_ifPromiscuousMode 4
- #define M2_varId_ifPhysAddress 5
- #define M2_varId_ifDescr 6
- #define M2_varId_ifOperStatus 7
- #define M2_varId_ifAlias 8
- #define M2_varId_ifOutQLen 9
- #define M2_varId_ifSpecific 10
- #define M2_varId_ifName 11
- #define M2_varId_ifType 12
- #define M2_varId_ifHighSpeed 13
- #define M2_varId_ifSpeed 14
- #define M2_varId_ifConnectorPresent 15
- #define M2_varId_ifLastChange 16
- /* possible values for ifAdminStatus */
- #define M2_ifAdminStatus_up 1
- #define M2_ifAdminStatus_down 2
- #define M2_ifAdminStatus_testing 3
- /* possible values for ifOperStatus */
- #define M2_ifOperStatus_up 1
- #define M2_ifOperStatus_down 2
- #define M2_ifOperStatus_testing 3
- /* possible values for ifPromiscuousMode */
- #define M2_ifPromiscuousMode_on 1
- #define M2_ifPromiscuousMode_off 2
- /* Row Status defines */
- #define ROW_ACTIVE 1
- #define ROW_NOTINSERVICE 2
- #define ROW_NOTREADY 3
- #define ROW_CREATEANDGO 4
- #define ROW_CREATEANDWAIT 5
- #define ROW_DESTROY 6
- /* Storage type defines */
- #define STORAGE_OTHER 1
- #define STORAGE_VOLATILE 2
- #define STORAGE_NONVOLATILE 3
- /* Boolean Values */
- #define M2_TRUE 1
- #define M2_FALSE 2
- /* defines for all the objects in the interface table */
- #define M2_IFLASTCHANGE 1
- #define M2_IFINOCTETS 2
- #define M2_IFINUCASTPKTS 3
- #define M2_IFINNUCASTPKTS 4
- #define M2_IFINDISCARDS 5
- #define M2_IFINERRORS 6
- #define M2_IFINUNKNOWNPROTOS 7
- #define M2_IFOUTOCTETS 8
- #define M2_IFOUTUCASTPKTS 9
- #define M2_IFOUTNUCASTPKTS 10
- #define M2_IFOUTDISCARDS 11
- #define M2_IFOUTERRORS 12
- #define M2_IFOUTQLEN 13
- #define M2_IFINMULTICASTPKTS 14
- #define M2_IFINBROADCASTPKTS 15
- #define M2_IFOUTMULTICASTPKTS 16
- #define M2_IFOUTBROADCASTPKTS 17
- #define M2_IFHCINOCTETS 18
- #define M2_IFHCINUCASTPKTS 19
- #define M2_IFHCINMULTICASTPKTS 20
- #define M2_IFHCINBROADCASTPKTS 21
- #define M2_IFHCOUTOCTETS 22
- #define M2_IFHCOUTUCASTPKTS 23
- #define M2_IFHCOUTMULTICASTPKTS 24
- #define M2_IFHCOUTBROADCASTPKTS 25
- #define M2_IFLINKUPDOWNTRAPENABLE 26
- #define M2_IFHIGHSPEED 27
- #define M2_IFPROMISCUOUSMODE 28
- #define M2_IFCONNECTORPRESENT 29
- /* defines for rcvAddr table entries */
- #define M2_IFRCVADDRSTATUS 1
- #define M2_IFRCVADDRTYPE 2
- /* possible values for ipForwarding */
- #define M2_ipForwarding_forwarding 1
- #define M2_ipForwarding_not_forwarding 2
- /* possible values for ipRouteType */
- #define M2_ipRouteType_other 1
- #define M2_ipRouteType_invalid 2
- #define M2_ipRouteType_direct 3
- #define M2_ipRouteType_indirect 4
- /* possible values for ipRouteProto */
- #define M2_ipRouteProto_other 1
- #define M2_ipRouteProto_local 2
- #define M2_ipRouteProto_netmgmt 3
- #define M2_ipRouteProto_icmp 4
- #define M2_ipRouteProto_egp 5
- #define M2_ipRouteProto_ggp 6
- #define M2_ipRouteProto_hello 7
- #define M2_ipRouteProto_rip 8
- #define M2_ipRouteProto_is_is 9
- #define M2_ipRouteProto_es_is 10
- #define M2_ipRouteProto_ciscoIgrp 11
- #define M2_ipRouteProto_bbnSpfIgp 12
- #define M2_ipRouteProto_ospf 13
- #define M2_ipRouteProto_bgp 14
- /* possible values for ipNetToMediaType */
- #define M2_ipNetToMediaType_other 1
- #define M2_ipNetToMediaType_invalid 2
- #define M2_ipNetToMediaType_dynamic 3
- #define M2_ipNetToMediaType_static 4
- /* possible values for tcpRtoAlgorithm */
- #define M2_tcpRtoAlgorithm_other 1
- #define M2_tcpRtoAlgorithm_constant 2
- #define M2_tcpRtoAlgorithm_rsre 3
- #define M2_tcpRtoAlgorithm_vanj 4
- /* possible values for tcpConnState */
- #define M2_tcpConnState_closed 1
- #define M2_tcpConnState_listen 2
- #define M2_tcpConnState_synSent 3
- #define M2_tcpConnState_synReceived 4
- #define M2_tcpConnState_established 5
- #define M2_tcpConnState_finWait1 6
- #define M2_tcpConnState_finWait2 7
- #define M2_tcpConnState_closeWait 8
- #define M2_tcpConnState_lastAck 9
- #define M2_tcpConnState_closing 10
- #define M2_tcpConnState_timeWait 11
- #define M2_tcpConnState_deleteTCB 12
- /*
- * When using vxWorks SNMP this constants must have the same value as NEXT and
- * EXACT
- */
- #define M2_EXACT_VALUE 0xA0
- #define M2_NEXT_VALUE 0xA1
- /* defines for IGMP varToSet */
- #define M2_var_igmpInterfaceQueryInterval 1
- #define M2_var_igmpInterfaceStatus 2
- #define M2_var_igmpInterfaceVersion 4
- #define M2_var_igmpInterfaceQueryMaxResponseTime 8
- #define M2_var_igmpInterfaceRobustness 16
- #define M2_var_igmpInterfaceLastMembQueryIntvl 32
- /* IGMP defines from leaf.h generated file */
- #define LEAF_igmpInterfaceIfIndex 1
- #define MIN_igmpInterfaceIfIndex 1L
- #define MAX_igmpInterfaceIfIndex 2147483647L
- #define LEAF_igmpInterfaceQueryInterval 2
- #define LEAF_igmpInterfaceStatus 3
- #define VAL_igmpInterfaceStatus_active 1L
- #define VAL_igmpInterfaceStatus_notInService 2L
- #define VAL_igmpInterfaceStatus_notReady 3L
- #define VAL_igmpInterfaceStatus_createAndGo 4L
- #define VAL_igmpInterfaceStatus_createAndWait 5L
- #define VAL_igmpInterfaceStatus_destroy 6L
- #define LEAF_igmpInterfaceVersion 4
- #define LEAF_igmpInterfaceQuerier 5
- #define LEAF_igmpInterfaceQueryMaxResponseTime 6
- #define LEAF_igmpInterfaceVersion1QuerierTimer 9
- #define LEAF_igmpInterfaceWrongVersionQueries 10
- #define LEAF_igmpInterfaceJoins 11
- #define LEAF_igmpInterfaceGroups 13
- #define LEAF_igmpInterfaceRobustness 14
- #define LEAF_igmpInterfaceLastMembQueryIntvl 15
- #define LEAF_igmpInterfaceProxyIfIndex 16
- #define MIN_igmpInterfaceProxyIfIndex 0L
- #define MAX_igmpInterfaceProxyIfIndex 2147483647L
- #define LEAF_igmpInterfaceQuerierUpTime 17
- #define LEAF_igmpInterfaceQuerierExpiryTime 18
- #define LEAF_igmpCacheAddress 1
- #define LEAF_igmpCacheIfIndex 2
- #define MIN_igmpCacheIfIndex 1L
- #define MAX_igmpCacheIfIndex 2147483647L
- #define LEAF_igmpCacheSelf 3
- #define VAL_igmpCacheSelf_true 1L
- #define VAL_igmpCacheSelf_false 2L
- #define LEAF_igmpCacheLastReporter 4
- #define LEAF_igmpCacheUpTime 5
- #define LEAF_igmpCacheExpiryTime 6
- #define LEAF_igmpCacheStatus 7
- #define VAL_igmpCacheStatus_active 1L
- #define VAL_igmpCacheStatus_notInService 2L
- #define VAL_igmpCacheStatus_notReady 3L
- #define VAL_igmpCacheStatus_createAndGo 4L
- #define VAL_igmpCacheStatus_createAndWait 5L
- #define VAL_igmpCacheStatus_destroy 6L
- #define LEAF_igmpCacheVersion1HostTimer 8
- /* simple type used for imitating 64 bit integers */
- typedef struct ui64
- {
- UINT high;
- UINT low;
- } UI64;
- /*
- * UI64_ZERO - Zero a UI64 struct
- *
- * PARAMETERS: UI64 * Pointer to the object to be zeroed.
- */
- #define UI64_ZERO(N) (N)->high = (N)->low = 0L
- /*
- * UI64_ADD32 - Add a UINT to a UI64
- *
- * PARAMETERS: UI64 * pointer to the object to be updated
- * UINT the quantity to add in.
- *
- * RESTRICTIONS: This routine will wrap the object if necessary and not give
- * any warning about having done so.
- */
- #define UI64_ADD32(N, I) (N)->low += I; if ((N)->low < I) (N)->high++
- /*
- * UI64_SUB64 - Subtract two UI64s
- *
- * PARAMETERS: UI64 * the result goes here
- * UI64 * Subtract from this object
- * UI64 * the object to subtract
- *
- * RESTRICTIONS: This routine will wrap the object if necessary and not give
- * any warning about having done so.
- */
- #define UI64_SUB64(X, Y, Z) (X)->low = (Y)->low - (Z)->low;
- (X)->high = (Y)->high - (Z)->high;
- if ((X)->low > (Y)->low) (X)->high--
- /*
- * UI64_COPY - Copy one UI64 to another
- *
- * PARAMETERS: UI64 * the result goes here
- * UI64 * copy from this object
- */
- #define UI64_COPY(X, Y) (X)->low = (Y)->low; (X)->high = (Y)->high
- /*
- * UI64_COMP - Compare two UI64s
- *
- * PARAMETERS: UI64 * The two objects to compare
- * UI64 *
- *
- * RETURNS: < 0 if the first is smaller than the second
- * > 0 if the first is greater than the second
- * 0 if they are equal.
- */
- #define UI64_COMP(X, Y)
- (((X)->high == (Y)->high) ?
- (((X)->low == (Y)->low) ? (0) : (((X)->low > (Y)->low) ? (1) : (-1))) :
- (((X)->high > (Y)->high) ? (1) : (-1)))
- typedef struct
- {
- long idLength; /* Length of the object identifier */
- long idArray [MAXOIDLENGTH]; /* Object Id numbers */
- } M2_OBJECTID;
- typedef struct
- {
- long addrLength; /* Length of address */
- unsigned char phyAddress [MAXIFPHYADDR]; /* physical address value */
- } M2_PHYADDR;
- /*
- * The structures that follow are based on the MIB-II RFC-1213. Each field in
- * each of the structures has the same name as the name specified in by the RFC.
- * Please refer to the RFC for a complete description of the variable and its
- * semantics.
- */
- /* System Group bit fields that map to variables that can be set */
- #define M2SYSNAME 0x01
- #define M2SYSCONTACT 0x02
- #define M2SYSLOCATION 0x04
- typedef struct
- {
- unsigned char sysDescr [M2DISPLAYSTRSIZE];
- M2_OBJECTID sysObjectID;
- unsigned long sysUpTime;
- unsigned char sysContact [M2DISPLAYSTRSIZE];
- unsigned char sysName [M2DISPLAYSTRSIZE];
- unsigned char sysLocation [M2DISPLAYSTRSIZE];
- long sysServices;
- } M2_SYSTEM;
- /* Interface group variables */
- typedef struct
- {
- long ifNumber; /* Number of Interfaces in the System */
- ULONG ifTableLastChange; /* Time the ifTable was last changed */
- ULONG ifStackLastChange; /* Time the stackTable was last changed */
- } M2_INTERFACE;
- /* values as per RFC 1215 */
- #define M2_LINK_DOWN_TRAP 2
- #define M2_LINK_UP_TRAP 3
- #define M2_LINK_UP_DOWN_TRAP_ENABLED 1
- #define M2_LINK_UP_DOWN_TRAP_DISABLED 2
- #define M2_PROMISCUOUS_MODE_ON 1
- #define M2_PROMISCUOUS_MODE_OFF 2
- #define M2_CONNECTOR_PRESENT 1
- #define M2_CONNECTOR_NOT_PRESENT 2
- typedef struct
- {
- int ifIndex; /* Unique value for each interface */
- char ifDescr [M2DISPLAYSTRSIZE]; /* Information about the interface */
- long ifType; /* Type of interface */
- long ifMtu; /* Max size of datagram for the interface */
- unsigned long ifSpeed; /* Interface's current bandwidth in bits/sec */
- M2_PHYADDR ifPhysAddress; /* Mac layer address of the interface */
- long ifAdminStatus; /* Desired state for the interface */
- long ifOperStatus; /* Current operational status of the interface */
- unsigned long ifLastChange; /* Value of sysUpTime when interface entered
- its current operational state */
- unsigned long ifInOctets; /* Number of octets received on the interface */
- unsigned long ifInUcastPkts; /* Number of subnetwork-unicast packets
- delivered to a higher-layer protocol */
- unsigned long ifInNUcastPkts; /* Number of non-unicast packets delivered
- to a higher layer protocol */
- unsigned long ifInDiscards; /* Number of inbound packets discarded */
- unsigned long ifInErrors; /* Inbound packets that contained errors */
- unsigned long ifInUnknownProtos; /* Inbound packets discarded due to unknown
- or unsupported protocol */
- unsigned long ifOutOctets; /* Number of octets transmitted on the interface */
- unsigned long ifOutUcastPkts; /* Number of packets transmitted to subnet
- unicast address */
- unsigned long ifOutNUcastPkts; /* Number of packets sent to non-unicast
- address */
- unsigned long ifOutDiscards; /* Number of outbound packets discarded */
- unsigned long ifOutErrors; /* Number of outbound packets that could not
- be transmitted due to errors */
- unsigned long ifOutQLen; /* Length of output packet queue */
- M2_OBJECTID ifSpecific; /* Reference to MIB definitions specific to
- particular media being used */
- } M2_INTERFACETBL;
- /* The RFC 2233 additions to the ifTable */
- typedef struct
- {
- char ifName [M2DISPLAYSTRSIZE];
- ULONG ifInMulticastPkts;
- ULONG ifInBroadcastPkts;
- ULONG ifOutMulticastPkts;
- ULONG ifOutBroadcastPkts;
- UI64 ifHCInOctets;
- UI64 ifHCInUcastPkts;
- UI64 ifHCInMulticastPkts;
- UI64 ifHCInBroadcastPkts;
- UI64 ifHCOutOctets;
- UI64 ifHCOutUcastPkts;
- UI64 ifHCOutMulticastPkts;
- UI64 ifHCOutBroadcastPkts;
- UINT ifLinkUpDownTrapEnable;
- ULONG ifHighSpeed;
- UINT ifPromiscuousMode;
- UINT ifConnectorPresent;
- char ifAlias [M2DISPLAYSTRSIZE];
- ULONG ifCounterDiscontinuityTime;
- } M2_2233TBL;
- /* Update Routines */
- typedef struct M2_ID_S M2_ID;
- typedef struct M2_IFSTACKTBL_S M2_IFSTACKTBL;
- typedef STATUS (* M2_PKT_COUNT_RTN) (M2_ID *, UINT, UCHAR *, ULONG);
- typedef STATUS (* M2_CTR_UPDATE_RTN) (M2_ID *, UINT, ULONG);
- typedef STATUS (* M2_VAR_UPDATE_RTN) (M2_ID *, UINT, caddr_t);
- /* Combination of the above interface structs */
- typedef struct
- {
- M2_INTERFACETBL mibIfTbl; /* the RFC 1213 objects */
- M2_2233TBL mibXIfTbl; /* the RFC 2233 extension */
- } M2_DATA;
- /* The interface table struct for RFC 2233 compliance */
- struct M2_ID_S
- {
- M2_DATA m2Data; /* the interface table */
- M2_PKT_COUNT_RTN m2PktCountRtn; /* packet counter function */
- M2_CTR_UPDATE_RTN m2CtrUpdateRtn; /* counter increment function */
- M2_VAR_UPDATE_RTN m2VarUpdateRtn; /* variable update routine */
- };
- /* The structure for the ifStack table as described in RFC 2233 */
- struct M2_IFSTACKTBL_S
- {
- UINT index; /* The ifIndex */
- int status; /* status of relationship */
- struct M2_IFSTACKTBL_S * pNextLower; /* Pointer to the next relation */
- };
- /* The structure for the ifRcv address table as described in RFC 2233 */
- typedef struct M2_IFRCVADDRTBL_S
- {
- M2_PHYADDR ifRcvAddrAddr;/* The physical address for which
- * system will accept pkts/frames
- */
- int ifRcvAddrStatus; /* The rowStatus */
- int ifRcvAddrType; /* The address type */
- struct M2_IFRCVADDRTBL_S * pNextEntry; /* Next pointer */
- } M2_IFRCVADDRTBL;
- /* The structure for the ifIndex value and corresponding ifnet pointer */
- typedef struct M2_IFINDEX_S
- {
- AVL_NODE ifNode; /* Node representing an if in AVL tree */
- int ifType; /* Interface type */
- int ifIndex; /* Unique value for each interface */
- M2_OBJECTID ifOid; /* I/F Object Id */
- void * pIfStats; /* Pointer to the driver specific
- * structure
- */
- M2_IFSTACKTBL * pNextLower; /* List of lower sub-layers */
- M2_IFRCVADDRTBL * pRcvAddr; /* rcvAddr list */
- /* Ioctl to munge interface flags */
- /* Called from m2IfTblEntrySet to change the values in */
- /* the ifnet structure in a non-protocol-specific way. */
- /* Callbacks are bad for tor3 (so I've heard). */
- int (*ifIoctl) (struct socket*, u_long, caddr_t);
- STATUS (*rcvAddrGet) (struct ifnet *, struct M2_IFINDEX_S *);
- BOOL mibStyle; /* RFC2233 supported if true */
- } M2_IFINDEX;
- /* Structure to perform the set operation for if table */
- typedef struct ifSetentry
- {
- unsigned int varToSet;
- int ifIndex;
- long ifAdminStatus;
- UINT ifPromiscuousMode;
- UINT ifLinkUpDownTrapEnable;
- char ifAlias[M2DISPLAYSTRSIZE];
- } IF_SETENTRY;
- /* IP group bit fields that map to variables that can be set */
- #define M2_IPFORWARDING 0x01
- #define M2_IPDEFAULTTTL 0x02
- typedef struct
- {
- long ipForwarding;
- long ipDefaultTTL;
- unsigned long ipInReceives;
- unsigned long ipInHdrErrors;
- unsigned long ipInAddrErrors;
- unsigned long ipForwDatagrams;
- unsigned long ipInUnknownProtos;
- unsigned long ipInDiscards;
- unsigned long ipInDelivers;
- unsigned long ipOutRequests;
- unsigned long ipOutDiscards;
- unsigned long ipOutNoRoutes;
- long ipReasmTimeout;
- unsigned long ipReasmReqds;
- unsigned long ipReasmOKs;
- unsigned long ipReasmFails;
- unsigned long ipFragOKs;
- unsigned long ipFragFails;
- unsigned long ipFragCreates;
- unsigned long ipRoutingDiscards;
- } M2_IP;
- /* IP Address Table group */
- typedef struct
- {
- unsigned long ipAdEntAddr;
- long ipAdEntIfIndex;
- unsigned long ipAdEntNetMask;
- long ipAdEntBcastAddr;
- long ipAdEntReasmMaxSize;
- } M2_IPADDRTBL;
- /* IP Routing Table group */
- typedef struct
- {
- unsigned long ipRouteDest;
- long ipRouteIfIndex;
- long ipRouteMetric1;
- long ipRouteMetric2;
- long ipRouteMetric3;
- long ipRouteMetric4;
- unsigned long ipRouteNextHop;
- long ipRouteType;
- long ipRouteProto;
- long ipRouteAge;
- unsigned long ipRouteMask;
- long ipRouteMetric5;
- M2_OBJECTID ipRouteInfo;
- } M2_IPROUTETBL;
- /* IP route table entry bit fields that map to variables that can be set */
- #define M2_IP_ROUTE_DEST 1
- #define M2_IP_ROUTE_NEXT_HOP 2
- #define M2_IP_ROUTE_TYPE 4
- #define M2_IP_ROUTE_MASK 8
- /* IP Address Translation Table group */
- typedef struct
- {
- long ipNetToMediaIfIndex;
- M2_PHYADDR ipNetToMediaPhysAddress;
- unsigned long ipNetToMediaNetAddress;
- long ipNetToMediaType;
- } M2_IPATRANSTBL;
- /* ICMP group */
- typedef struct
- {
- unsigned long icmpInMsgs;
- unsigned long icmpInErrors;
- unsigned long icmpInDestUnreachs;
- unsigned long icmpInTimeExcds;
- unsigned long icmpInParmProbs;
- unsigned long icmpInSrcQuenchs;
- unsigned long icmpInRedirects;
- unsigned long icmpInEchos;
- unsigned long icmpInEchoReps;
- unsigned long icmpInTimestamps;
- unsigned long icmpInTimestampReps;
- unsigned long icmpInAddrMasks;
- unsigned long icmpInAddrMaskReps;
- unsigned long icmpOutMsgs;
- unsigned long icmpOutErrors;
- unsigned long icmpOutDestUnreachs;
- unsigned long icmpOutTimeExcds;
- unsigned long icmpOutParmProbs;
- unsigned long icmpOutSrcQuenchs;
- unsigned long icmpOutRedirects;
- unsigned long icmpOutEchos;
- unsigned long icmpOutEchoReps;
- unsigned long icmpOutTimestamps;
- unsigned long icmpOutTimestampReps;
- unsigned long icmpOutAddrMasks;
- unsigned long icmpOutAddrMaskReps;
- } M2_ICMP;
- /* TCP Group */
- typedef struct
- {
- long tcpRtoAlgorithm;
- long tcpRtoMin;
- long tcpRtoMax;
- long tcpMaxConn;
- unsigned long tcpActiveOpens;
- unsigned long tcpPassiveOpens;
- unsigned long tcpAttemptFails;
- unsigned long tcpEstabResets;
- unsigned long tcpCurrEstab;
- unsigned long tcpInSegs;
- unsigned long tcpOutSegs;
- unsigned long tcpRetransSegs;
- unsigned long tcpInErrs;
- unsigned long tcpOutRsts;
- } M2_TCPINFO;
- /* TCP Connection Table Entry */
- typedef struct
- {
- long tcpConnState;
- unsigned long tcpConnLocalAddress;
- long tcpConnLocalPort;
- unsigned long tcpConnRemAddress;
- long tcpConnRemPort;
- } M2_TCPCONNTBL;
- /* User Datagram Protocol Group */
- typedef struct
- {
- unsigned long udpInDatagrams;
- unsigned long udpNoPorts;
- unsigned long udpInErrors;
- unsigned long udpOutDatagrams;
- } M2_UDP;
- /* UDP Connection Table Entry */
- typedef struct
- {
- unsigned long udpLocalAddress;
- long udpLocalPort;
- } M2_UDPTBL;
- /* IGMP */
- typedef struct
- {
- ULONG igmpInterfaceIfIndex;
- ULONG igmpInterfaceQueryInterval;
- ULONG igmpInterfaceStatus;
- ULONG igmpInterfaceVersion;
- ULONG igmpInterfaceQuerier;
- ULONG igmpInterfaceQueryMaxResponseTime;
- ULONG igmpInterfaceQuerierPresentTimeout;
- ULONG igmpInterfaceLeaveEnabled;
- ULONG igmpInterfaceVersion1QuerierTimer;
- ULONG igmpInterfaceWrongVersionQueries;
- ULONG igmpInterfaceJoins;
- ULONG igmpInterfaceLeaves;
- ULONG igmpInterfaceGroups;
- ULONG igmpInterfaceRobustness;
- ULONG igmpInterfaceQuerierUpTime;
- ULONG igmpInterfaceLastMembQueryIntvl;
- } M2_IGMP;
- typedef struct
- {
- ULONG igmpCacheAddress;
- ULONG igmpCacheIfIndex;
- ULONG igmpCacheSelf; /* was BOOLEAN */
- ULONG igmpCacheLastReporter;
- ULONG igmpCacheUpTime;
- ULONG igmpCacheExpiryTime;
- ULONG igmpCacheStatus;
- ULONG igmpCacheVersion1HostTimer;
- } M2_IGMP_CACHE;
- /* function declarations */
- #if defined(__STDC__) || defined(__cplusplus)
- extern STATUS m2SysInit (char * mib2SysDescr, char * mib2SysContact,
- char * mib2SysLocation, M2_OBJECTID * pObjectId);
- extern STATUS m2SysGroupInfoGet (M2_SYSTEM * pSysInfo);
- extern STATUS m2SysGroupInfoSet (unsigned int varToSet, M2_SYSTEM * pSysInfo);
- extern STATUS m2SysDelete (void);
- extern M2_ID * m2IfAlloc (ULONG, UCHAR *, ULONG, ULONG, ULONG, char *, int);
- extern STATUS m2IfFree (M2_ID *);
- extern STATUS m2IfGenericPacketCount (M2_ID *, UINT, UCHAR *, ULONG);
- extern STATUS m2IfCounterUpdate (M2_ID *, UINT, ULONG);
- extern STATUS m2IfVariableUpdate (M2_ID *, UINT, caddr_t);
- extern STATUS m2IfPktCountRtnInstall (M2_ID *, M2_PKT_COUNT_RTN);
- extern STATUS m2IfCtrUpdateRtnInstall (M2_ID *, M2_CTR_UPDATE_RTN);
- extern STATUS m2IfVarUpdateRtnInstall (M2_ID *, M2_VAR_UPDATE_RTN);
- extern STATUS m2If8023PacketCount (M2_ID *, UINT, UCHAR *, ULONG);
- extern STATUS m2IfInit (FUNCPTR pTrapRtn, void * pTrapArg);
- extern STATUS m2IfTableUpdate (struct ifnet *, UINT,
- int (*func) (struct socket*, u_long, caddr_t),
- STATUS (func2) (struct ifnet*, M2_IFINDEX*));
- extern STATUS m2IfGroupInfoGet (M2_INTERFACE * pIfInfo);
- extern STATUS m2IfTblEntryGet (int search, void * pIfTblEntry);
- extern STATUS m2IfTblEntrySet (void *);
- extern STATUS m2IfStackTblUpdate (UINT lowerIndex, UINT higherIndex, int action);
- extern STATUS m2IfStackEntryGet (int, int *, M2_IFSTACKTBL *);
- extern STATUS m2IfStackEntrySet (int, M2_IFSTACKTBL *);
- extern STATUS m2IfRcvAddrEntryGet (int, int *, M2_IFRCVADDRTBL *);
- extern STATUS m2IfRcvAddrEntrySet (int, int, M2_IFRCVADDRTBL *);
- extern STATUS m2IfDelete (void);
- extern STATUS m2IpInit (int maxRouteTableSize);
- extern STATUS m2IpGroupInfoGet (M2_IP * pIpInfo);
- extern STATUS m2IpGroupInfoSet (unsigned int varToSet, M2_IP * pIpInfo);
- extern STATUS
- m2IpAddrTblEntryGet (int search, M2_IPADDRTBL * pIpAddrTblEnry);
- extern STATUS
- m2IpRouteTblEntryGet (int search, M2_IPROUTETBL * pIpRouteTblEntry);
- extern STATUS
- m2IpRouteTblEntrySet (int varToSet, M2_IPROUTETBL * pIpRouteTblEntry);
- extern STATUS
- m2IpAtransTblEntryGet (int search, M2_IPATRANSTBL * pIpAtEntry);
- extern STATUS
- m2IpAtransTblEntrySet (M2_IPATRANSTBL * pIpAtEntry);
- extern STATUS m2IpDelete (void);
- extern STATUS m2IcmpInit (void);
- extern STATUS m2IcmpGroupInfoGet (M2_ICMP * pIcmpInfo);
- extern STATUS m2TcpInit (void);
- extern STATUS m2TcpGroupInfoGet (M2_TCPINFO * pTcpInfo);
- extern STATUS m2TcpConnEntryGet (int search, M2_TCPCONNTBL * pTcpConnEntry);
- extern STATUS m2TcpConnEntrySet (M2_TCPCONNTBL * pTcpConnEntry);
- extern STATUS m2UdpInit (void);
- extern STATUS m2UdpGroupInfoGet (M2_UDP * pUdpInfo);
- extern STATUS m2UdpTblEntryGet (int search, M2_UDPTBL * pUdpEntry);
- STATUS m2Init (char * mib2SysDescr, char * mib2SysContact,
- char * mib2SysLocation, M2_OBJECTID * pMib2SysObjectId,
- FUNCPTR pTrapRtn, void * pTrapArg, int maxRouteTableSize);
- extern STATUS m2Delete (void);
- extern STATUS m2TcpDelete (void);
- extern STATUS m2UdpDelete (void);
- extern STATUS m2IcmpDelete (void);
- extern STATUS m2SetIfLastChange (int ifIndex);
- extern STATUS m2IgmpInterfaceEntrySet(M2_IGMP *data, int varsToSet);
- extern STATUS m2IgmpInterfaceEntryGet(M2_IGMP *data);
- extern STATUS m2IgmpInterfaceEntryNextGet(M2_IGMP *data);
- extern STATUS m2IgmpCacheEntryGet(M2_IGMP_CACHE *data);
- extern STATUS m2IgmpCacheEntryNextGet(M2_IGMP_CACHE *data);
- extern M2_IGMP_CACHE * igmpCacheEntry_first(void);
- extern M2_IGMP_CACHE * igmpCacheEntry_next_inst(M2_IGMP_CACHE * data);
- extern unsigned igmpCacheEntry_build_instance(M2_IGMP_CACHE * data, int * inst);
- #else /* __STDC__ */
- extern STATUS m2SysInit ();
- extern STATUS m2SysGroupInfoGet ();
- extern STATUS m2SysGroupInfoSet ();
- extern STATUS m2SysDelete ();
- extern M2_ID * m2IfAlloc ();
- extern STATUS m2IfFree ();
- extern STATUS m2IfGenericPacketCount ();
- extern STATUS m2IfCounterUpdate ();
- extern STATUS m2IfVariableUpdate ();
- extern STATUS m2IfPktCountRtnInstall ();
- extern STATUS m2IfCtrUpdateRtnInstall ();
- extern STATUS m2IfVarUpdateRtnInstall ();
- extern STATUS m2If8023PacketCount ();
- extern STATUS m2IfInit ();
- extern STATUS m2IfTableUpdate ();
- extern STATUS m2IfGroupInfoGet ();
- extern STATUS m2IfTblEntryGet ();
- extern STATUS m2IfTblEntrySet ();
- extern STATUS m2IfStackTblUpdate ();
- extern STATUS m2IfStackEntryGet ();
- extern STATUS m2IfStackEntrySet ();
- extern STATUS m2IfRcvAddrEntryGet ();
- extern STATUS m2IfRcvAddrEntrySet ();
- extern STATUS m2IfDelete ();
- extern STATUS m2IpInit ();
- extern STATUS m2IpGroupInfoGet ();
- extern STATUS m2IpGroupInfoSet ();
- extern STATUS m2IpAddrTblEntryGet ();
- extern STATUS m2IpRouteTblEntryGet ();
- extern STATUS m2IpRouteTblEntrySet ();
- extern STATUS m2IpAtransTblEntryGet ();
- extern STATUS m2IpAtransTblEntrySet ();
- extern STATUS m2IpDelete ();
- extern STATUS m2IcmpInit ();
- extern STATUS m2IcmpGroupInfoGet ();
- extern STATUS m2TcpInit ();
- extern STATUS m2TcpGroupInfoGet ();
- extern STATUS m2TcpConnEntryGet ();
- extern STATUS m2TcpConnEntrySet ();
- extern STATUS m2UdpInit ();
- extern STATUS m2UdpGroupInfoGet ();
- extern STATUS m2UdpTblEntryGet ();
- extern STATUS m2Init ();
- extern STATUS m2Delete ();
- extern STATUS m2TcpDelete ();
- extern STATUS m2UdpDelete ();
- extern STATUS m2IcmpDelete ();
- extern STATUS m2SetIfLastChange ();
- extern STATUS m2IgmpInterfaceEntrySet();
- extern STATUS m2IgmpInterfaceEntryGet();
- extern STATUS m2IgmpInterfaceEntryNextGet();
- extern STATUS m2IgmpCacheEntryGet();
- extern STATUS m2IgmpCacheEntryNextGet();
- extern M2_IGMP_CACHE * igmpCacheEntry_first();
- extern M2_IGMP_CACHE * igmpCacheEntry_next_inst();
- extern unsigned igmpCacheEntry_build_instance();
- #endif /* __STDC__ */
- #if ((CPU_FAMILY==I960) && (defined __GNUC__))
- #pragma align 0 /* turn off alignment requirement */
- #endif /* CPU_FAMILY==I960 */
- #ifdef __cplusplus
- }
- #endif
- #endif /* __INCm2Libh */