blob: e96f1366551451a8552516b7116f5d9b016509a6 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
NTSTATUS IrdaNdisInitialize();
#define IRDA_NDIS_BUFFER_POOL_SIZE 4
#define IRDA_NDIS_PACKET_POOL_SIZE 4
#define IRDA_MSG_LIST_LEN 2
#define IRDA_MSG_DATA_SIZE 64
typedef struct
{
PIRDA_MSG pIMsg;
MEDIA_SPECIFIC_INFORMATION MediaInfo;
} IRDA_PROTOCOL_RESERVED, *PIRDA_PROTOCOL_RESERVED;
typedef struct IrdaLinkControlBlock
{
LIST_ENTRY Linkage;
NDIS_SPIN_LOCK SpinLock;
NDIS_HANDLE BindContext;
NDIS_HANDLE NdisBindingHandle;
NDIS_EVENT SyncEvent;
NDIS_STATUS SyncStatus;
int MediaBusy;
PVOID IrlapContext;
PVOID IrlmpContext;
NDIS_HANDLE BufferPool;
NDIS_HANDLE PacketPool;
LIST_ENTRY IMsgList;
int IMsgListLen;
UINT ExtraBofs; // These should be per connection for
UINT MinTat; // multipoint
} IRDA_LINK_CB, *PIRDA_LINK_CB;
IRDA_MSG *AllocMacIMsg(PIRDA_LINK_CB);
|