You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
122 lines
2.8 KiB
C
122 lines
2.8 KiB
C
/************************************************************************/
|
|
/* SISCO SOFTWARE MODULE HEADER *****************************************/
|
|
/************************************************************************/
|
|
/* (c) Copyright Systems Integration Specialists Company, Inc., */
|
|
/* 1996, All Rights Reserved */
|
|
/* */
|
|
/* MODULE NAME : llcioctl.c */
|
|
/* PRODUCT(S) : OSI LLC NDIS 3.1 VxD */
|
|
/* */
|
|
/* MODULE DESCRIPTION : */
|
|
/* */
|
|
/* GLOBAL FUNCTIONS DEFINED IN THIS MODULE : */
|
|
/* */
|
|
/* MODIFICATION LOG : */
|
|
/* Date Who Rev Comments */
|
|
/* -------- --- ------ ------------------------------------------- */
|
|
/* 06/16/97 DSF 05 Added stats */
|
|
/* 09/10/96 DSF 04 Added Length field to SET_MULTI */
|
|
/* 09/05/96 DSF 03 Added SET_FILTER */
|
|
/* 08/14/96 DSF 02 Added Transmit Completion object */
|
|
/* 04/01/96 DSF 01 Initial Release */
|
|
/* */
|
|
/************************************************************************/
|
|
|
|
#define IOCTL_BASE 0x8100
|
|
#define IOCTL_GET_PHYS_ADDR (IOCTL_BASE + 1)
|
|
#define IOCTL_SET_MULTI (IOCTL_BASE + 2)
|
|
#define IOCTL_ARM_EVENT (IOCTL_BASE + 3)
|
|
#define IOCTL_SEND (IOCTL_BASE + 4)
|
|
#define IOCTL_RECEIVE (IOCTL_BASE + 5)
|
|
#define IOCTL_ARM_COMPLETE (IOCTL_BASE + 6)
|
|
#define IOCTL_SET_FILTER (IOCTL_BASE + 7)
|
|
#define IOCTL_GET_STATS (IOCTL_BASE + 8)
|
|
|
|
|
|
#define PHYS_ADDR_LENGTH 6
|
|
typedef struct _GET_PHYS_ADDR
|
|
{
|
|
UINT Status;
|
|
char PhysAddr[PHYS_ADDR_LENGTH];
|
|
} GET_PHYS_ADDR;
|
|
|
|
|
|
typedef struct _SET_MULTI
|
|
{
|
|
UINT Status;
|
|
UINT Length;
|
|
char MultiAddr[2 * PHYS_ADDR_LENGTH];
|
|
} SET_MULTI;
|
|
|
|
typedef struct _SET_FILTER
|
|
{
|
|
UINT Status;
|
|
} SET_FILTER;
|
|
|
|
typedef struct _ARM_EVENT
|
|
{
|
|
UINT Status;
|
|
HANDLE EventHandle;
|
|
} ARM_EVENT;
|
|
|
|
typedef struct _ARM_COMPLETE
|
|
{
|
|
UINT Status;
|
|
HANDLE CompleteHandle;
|
|
} ARM_COMPLETE;
|
|
|
|
#if !defined (GET_STATS_DEFINED)
|
|
typedef struct _MAC_STATS
|
|
{
|
|
ULONG HardwareStatus;
|
|
ULONG MaxLookahead;
|
|
ULONG MaxFrameSize;
|
|
ULONG LinkSpeed;
|
|
ULONG TransmitBufferSpace;
|
|
ULONG ReceiveBufferSpace;
|
|
ULONG TransmitBlockSize;
|
|
ULONG ReceiveBlockSize;
|
|
ULONG MaximumTotalSize;
|
|
ULONG MacOptions;
|
|
ULONG ConnectStatus;
|
|
ULONG XmitOk;
|
|
ULONG RcvOk;
|
|
ULONG XmitError;
|
|
ULONG RcvError;
|
|
ULONG RcvNoBuffer;
|
|
ULONG RcvCrcError;
|
|
ULONG TransmitQueueLength;
|
|
} MAC_STATS;
|
|
|
|
typedef struct _PROTO_STATS
|
|
{
|
|
ULONG XmitOk;
|
|
ULONG RcvOk;
|
|
ULONG XmitError;
|
|
ULONG RcvError;
|
|
ULONG RcvUnknown;
|
|
ULONG XmitInd;
|
|
ULONG RcvInd;
|
|
ULONG AllocError;
|
|
} PROTO_STATS;
|
|
|
|
typedef struct _USER_STATS
|
|
{
|
|
ULONG XmitOk;
|
|
ULONG RcvOk;
|
|
ULONG XmitError;
|
|
ULONG RcvError;
|
|
ULONG RcvUnknown;
|
|
} USER_STATS;
|
|
|
|
typedef struct _GET_STATS
|
|
{
|
|
UINT Status;
|
|
MAC_STATS mac;
|
|
PROTO_STATS proto;
|
|
USER_STATS user;
|
|
} GET_STATS;
|
|
|
|
#define GET_STATS_DEFINED
|
|
#endif
|