blob: 2926c7ca06e439b9c9e2b18a3cb9cd4ff4d4d4fc (
plain)
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
/*++
Copyright (c) Microsoft Corporation. All rights reserved.
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
PURPOSE.
Module Name:
DataPath.H
Abstract:
This module declares the TCB and RCB structures, and the functions to
manipulate them.
See the comments in TcbRcb.c.
--*/
#ifndef _DATAPATH_H
#define _DATAPATH_H
NDIS_STATUS
TXNblReference(
_In_ PMP_ADAPTER Adapter,
_In_ PNET_BUFFER_LIST NetBufferList);
VOID
TXNblRelease(
_In_ PMP_ADAPTER Adapter,
_In_ PNET_BUFFER_LIST NetBufferList,
_In_ BOOLEAN fAtDispatch);
NDIS_TIMER_FUNCTION TXSendCompleteDpc;
KDEFERRED_ROUTINE RXReceiveIndicateDpc;
VOID
RXDeliverFrameToEveryAdapter(
_In_ PMP_ADAPTER SendAdapter,
_In_ PNDIS_NET_BUFFER_LIST_8021Q_INFO Nbl1QInfo,
_In_ PFRAME Frame,
_In_ BOOLEAN fAtDispatch);
VOID
RXFlushReceiveQueue(
_In_ PMP_ADAPTER Adapter,
_In_ PMP_ADAPTER_RECEIVE_DPC AdapterDpc);
VOID
TXFlushSendQueue(
_In_ PMP_ADAPTER Adapter,
_In_ NDIS_STATUS CompleteStatus);
VOID
NICStartTheDatapath(
_In_ PMP_ADAPTER Adapter);
VOID
NICStopTheDatapath(
_In_ PMP_ADAPTER Adapter);
ULONG
NICGetFrameTypeFromDestination(
_In_reads_bytes_(NIC_MACADDR_SIZE) PUCHAR DestAddress);
#endif // _DATAPATH_H
|