93 lines
2.6 KiB
C
93 lines
2.6 KiB
C
/********************************************************************/
|
|
/** Microsoft LAN Manager **/
|
|
/** Copyright (c) Microsoft Corporation. All rights reserved. **/
|
|
/********************************************************************/
|
|
|
|
//** LLINFO.H - Lower layer SNMP information definitions.
|
|
//
|
|
// This file contains all of the definitions for SNMP information collected
|
|
// by layers below IP.
|
|
|
|
#ifndef LLINFO_INCLUDED
|
|
#define LLINFO_INCLUDED
|
|
|
|
#include <ipifcons.h>
|
|
|
|
#ifndef CTE_TYPEDEFS_DEFINED
|
|
#define CTE_TYPEDEFS_DEFINED
|
|
|
|
typedef unsigned long ulong;
|
|
typedef unsigned short ushort;
|
|
typedef unsigned char uchar;
|
|
typedef unsigned int uint;
|
|
|
|
#endif // CTE_TYPEDEFS_DEFINED
|
|
|
|
|
|
#define IF_MIB_STATS_ID 1
|
|
#define IF_FRIENDLY_NAME_ID 2
|
|
|
|
#define MAX_PHYSADDR_SIZE 8
|
|
|
|
typedef struct IPNetToMediaEntry {
|
|
ulong inme_index;
|
|
ulong inme_physaddrlen;
|
|
uchar inme_physaddr[MAX_PHYSADDR_SIZE];
|
|
ulong inme_addr;
|
|
ulong inme_type;
|
|
} IPNetToMediaEntry;
|
|
|
|
#define INME_TYPE_OTHER 1
|
|
#define INME_TYPE_INVALID 2
|
|
#define INME_TYPE_DYNAMIC 3
|
|
#define INME_TYPE_STATIC 4
|
|
|
|
#define MAX_IFDESCR_LEN 256
|
|
|
|
#define IFE_FIXED_SIZE offsetof(struct IFEntry, if_descr)
|
|
|
|
typedef struct IFEntry {
|
|
ulong if_index;
|
|
ulong if_type;
|
|
ulong if_mtu;
|
|
ulong if_speed;
|
|
ulong if_physaddrlen;
|
|
uchar if_physaddr[MAX_PHYSADDR_SIZE];
|
|
ulong if_adminstatus;
|
|
ulong if_operstatus;
|
|
ulong if_lastchange;
|
|
ulong if_inoctets;
|
|
ulong if_inucastpkts;
|
|
ulong if_innucastpkts;
|
|
ulong if_indiscards;
|
|
ulong if_inerrors;
|
|
ulong if_inunknownprotos;
|
|
ulong if_outoctets;
|
|
ulong if_outucastpkts;
|
|
ulong if_outnucastpkts;
|
|
ulong if_outdiscards;
|
|
ulong if_outerrors;
|
|
ulong if_outqlen;
|
|
ulong if_descrlen;
|
|
uchar if_descr[1];
|
|
} IFEntry;
|
|
|
|
//
|
|
// MIB-II interface status values. The latest definition of these values
|
|
// is in RFC 2863. ifOperStatus can use all values. ifAdminStatus only
|
|
// uses the first three values.
|
|
//
|
|
typedef enum {
|
|
IF_STATUS_UP = 1,
|
|
IF_STATUS_DOWN = 2,
|
|
IF_STATUS_TESTING = 3,
|
|
IF_STATUS_UNKNOWN = 4,
|
|
IF_STATUS_DORMANT = 5,
|
|
IF_STATUS_NOT_PRESENT = 6,
|
|
IF_STATUS_LOWER_LAYER_DOWN = 7
|
|
} IF_STATUS_ENUM;
|
|
|
|
|
|
#endif // LLINFO_INCLUDED
|
|
|