Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

142 lines
2.9 KiB

//*****************************************************************************
//
// Name: snmpinfo.h
//
// Description:
//
// History:
// 01/13/94 JayPh Created.
//
//*****************************************************************************
//*****************************************************************************
//
// Copyright (c) 1994 by Microsoft Corp. All rights reserved.
//
//*****************************************************************************
//
// Include Files
//
#include "ipexport.h"
#include "ipinfo.h"
#include "llinfo.h"
#include "tcpinfo.h"
//
// Definitions
//
#define MAX_ID_LENGTH 50
// Table Types
#define TYPE_IF 0
#define TYPE_IP 1
#define TYPE_IPADDR 2
#define TYPE_ROUTE 3
#define TYPE_ARP 4
#define TYPE_ICMP 5
#define TYPE_TCP 6
#define TYPE_TCPCONN 7
#define TYPE_UDP 8
#define TYPE_UDPCONN 9
#define TYPE_IP6 10
#define TYPE_TCP6 11
#define TYPE_TCP6CONN 12
#define TYPE_UDP6 13
#define TYPE_UDP6LISTENER 14
#define TYPE_ICMP6 15
#define TYPE_MAX TYPE_ICMP6
//
// Structure Definitions
//
typedef struct _GenericTable {
LIST_ENTRY ListEntry;
} GenericTable;
typedef struct _IfEntry {
LIST_ENTRY ListEntry;
IFEntry Info;
} IfEntry;
typedef struct _IpEntry {
LIST_ENTRY ListEntry;
IPSNMPInfo Info;
} IpEntry;
typedef struct _IpAddrEntry {
LIST_ENTRY ListEntry;
IPAddrEntry Info;
} IpAddrEntry;
typedef struct _RouteEntry {
LIST_ENTRY ListEntry;
IPRouteEntry Info;
} RouteEntry;
typedef struct _ArpEntry {
LIST_ENTRY ListEntry;
IPNetToMediaEntry Info;
} ArpEntry;
typedef struct _IcmpEntry {
LIST_ENTRY ListEntry;
ICMPStats InInfo;
ICMPStats OutInfo;
} IcmpEntry;
typedef struct _Icmp6Entry {
LIST_ENTRY ListEntry;
ICMPv6Stats InInfo;
ICMPv6Stats OutInfo;
} Icmp6Entry;
typedef struct _TcpEntry {
LIST_ENTRY ListEntry;
TCPStats Info;
} TcpEntry;
typedef struct _TcpConnEntry {
LIST_ENTRY ListEntry;
TCPConnTableEntry Info;
} TcpConnEntry;
typedef struct _Tcp6ConnEntry {
LIST_ENTRY ListEntry;
TCP6ConnTableEntry Info;
} Tcp6ConnEntry;
typedef struct _UdpEntry {
LIST_ENTRY ListEntry;
UDPStats Info;
} UdpEntry;
typedef struct _UdpConnEntry {
LIST_ENTRY ListEntry;
UDPEntry Info;
} UdpConnEntry;
typedef struct _Udp6ListenerEntry {
LIST_ENTRY ListEntry;
UDP6ListenerEntry Info;
} Udp6ListenerEntry;
//
// Function Prototypes
//
ulong InitSnmp( void );
void *GetTable( ulong Type, ulong *pResult );
void FreeTable( GenericTable *pList );
ulong MapSnmpErrorToNt( ulong ErrCode );
ulong InetEqual( uchar *Inet1, uchar *Inet2 );
ulong PutMsg(ulong Handle, ulong MsgNum, ... );
uchar *LoadMsg( ulong MsgNum, ... );