mirror of https://github.com/tongzx/nt5src
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.
105 lines
2.0 KiB
105 lines
2.0 KiB
/*++
|
|
|
|
Copyright (c) 1997 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
D:\nt\private\ntos\tdi\rawwan\core\system.h
|
|
|
|
Abstract:
|
|
|
|
Raw WAN versions of system objects/definitions.
|
|
|
|
Revision History:
|
|
|
|
Who When What
|
|
-------- -------- ----------------------------------------------
|
|
arvindm 06-13-97 Created
|
|
|
|
Notes:
|
|
|
|
--*/
|
|
|
|
#ifndef __TDI_RWAN_SYSTEM__H
|
|
#define __TDI_RWAN_SYSTEM__H
|
|
|
|
|
|
#define RWAN_NDIS_MAJOR_VERSION 5
|
|
#define RWAN_NDIS_MINOR_VERSION 0
|
|
|
|
|
|
#define RWAN_NAME L"RawWan"
|
|
#define RWAN_NAME_STRING NDIS_STRING_CONST("RawWan")
|
|
#define RWAN_DEVICE_NAME L"\\Device\\RawWan"
|
|
|
|
|
|
#define LOCKIN
|
|
#define LOCKOUT
|
|
#define NOLOCKOUT
|
|
|
|
|
|
typedef struct _RWAN_EVENT
|
|
{
|
|
NDIS_EVENT Event;
|
|
NDIS_STATUS Status;
|
|
|
|
} RWAN_EVENT, *PRWAN_EVENT;
|
|
|
|
|
|
//
|
|
// List manipulation stuff
|
|
//
|
|
|
|
typedef SINGLE_LIST_ENTRY RWAN_SINGLE_LIST_ENTRY, *PRWAN_SINGLE_LIST_ENTRY;
|
|
|
|
#define NULL_PRWAN_SINGLE_LIST_ENTRY ((PRWAN_SINGLE_LIST_ENTRY)NULL)
|
|
|
|
#define RWAN_POP_FROM_SLIST ExInterlockedPopEntrySList
|
|
#define RWAN_PUSH_TO_SLIST ExInterlockedPushEntrySList
|
|
|
|
#if !BINARY_COMPATIBLE
|
|
|
|
#define RWAN_IRQL KIRQL
|
|
|
|
|
|
#if DBG
|
|
|
|
#define RWAN_GET_ENTRY_IRQL(Irql) \
|
|
Irql = KeGetCurrentIrql()
|
|
#define RWAN_CHECK_EXIT_IRQL(EntryIrql, ExitIrql) \
|
|
{ \
|
|
ExitIrql = KeGetCurrentIrql(); \
|
|
if (ExitIrql != EntryIrql) \
|
|
{ \
|
|
DbgPrint("File %s, Line %d, Exit IRQ %d != Entry IRQ %d\n", \
|
|
__FILE__, __LINE__, ExitIrql, EntryIrql); \
|
|
DbgBreakPoint(); \
|
|
} \
|
|
}
|
|
#else
|
|
|
|
#define RWAN_GET_ENTRY_IRQL(Irql)
|
|
#define RWAN_CHECK_EXIT_IRQL(EntryIrql, ExitIrql)
|
|
|
|
#endif // DBG
|
|
|
|
#else
|
|
|
|
#define RWAN_GET_ENTRY_IRQL(Irql)
|
|
#define RWAN_CHECK_EXIT_IRQL(EntryIrql, ExitIrql)
|
|
|
|
#define RWAN_IRQL ULONG
|
|
|
|
#endif // BINARY_COMPATIBLE
|
|
|
|
|
|
typedef PTDI_IND_CONNECT PConnectEvent;
|
|
typedef PTDI_IND_DISCONNECT PDisconnectEvent;
|
|
typedef PTDI_IND_ERROR PErrorEvent;
|
|
typedef PTDI_IND_RECEIVE PRcvEvent;
|
|
|
|
typedef IRP EventRcvBuffer;
|
|
typedef IRP ConnectEventInfo;
|
|
|
|
|
|
#endif // __TDI_RWAN_SYSTEM__H
|