ReactOS 0.4.15-dev-7918-g2a2556c
efilter.h
Go to the documentation of this file.
1/*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS NDIS library
4 * FILE: ndis/miniport.h
5 * PURPOSE: Definitions for Ethernet filter
6 */
7
8#pragma once
9
10#define DECLARE_UNKNOWN_STRUCT(BaseName) \
11 typedef struct _##BaseName BaseName, *P##BaseName;
12
13#define DECLARE_UNKNOWN_PROTOTYPE(Name) \
14 typedef VOID (*(Name))(VOID);
15
16#define ETH_LENGTH_OF_ADDRESS 6
17
18DECLARE_UNKNOWN_STRUCT(ETH_BINDING_INFO)
19
20DECLARE_UNKNOWN_PROTOTYPE(ETH_ADDRESS_CHANGE)
21DECLARE_UNKNOWN_PROTOTYPE(ETH_FILTER_CHANGE)
22DECLARE_UNKNOWN_PROTOTYPE(ETH_DEFERRED_CLOSE)
23
26 CHAR (*MCastAddressBuf)[ETH_LENGTH_OF_ADDRESS];
29 PETH_BINDING_INFO OpenList;
30 ETH_ADDRESS_CHANGE AddressChangeAction;
31 ETH_FILTER_CHANGE FilterChangeAction;
32 ETH_DEFERRED_CLOSE CloseAction;
37 CHAR (*OldMCastAddressBuf)[ETH_LENGTH_OF_ADDRESS];
39 PETH_BINDING_INFO DirectedList;
40 PETH_BINDING_INFO BMList;
41 PETH_BINDING_INFO MCastSet;
42#if defined(NDIS_WRAPPER)
43 UINT NumOpens;
44 PVOID BindListLock;
45#endif
47
48
52 IN UINT MaximumMulticastAddresses,
53 IN PUCHAR AdapterAddress,
55
56VOID
60
61VOID
65 IN NDIS_HANDLE MacReceiveContext,
67 IN PVOID HeaderBuffer,
68 IN UINT HeaderBufferSize,
69 IN PVOID LookaheadBuffer,
70 IN UINT LookaheadBufferSize,
72
73VOID
77
78/* EOF */
unsigned char BOOLEAN
#define CHAR(Char)
VOID NTAPI EthFilterDprIndicateReceiveComplete(IN PETH_FILTER Filter)
Definition: efilter.c:113
#define DECLARE_UNKNOWN_PROTOTYPE(Name)
Definition: efilter.h:13
struct ETHI_FILTER * PETHI_FILTER
BOOLEAN NTAPI EthCreateFilter(IN UINT MaximumMulticastAddresses, IN PUCHAR AdapterAddress, OUT PETH_FILTER *Filter)
Definition: efilter.c:16
VOID NTAPI EthFilterDprIndicateReceive(IN PETH_FILTER Filter, IN NDIS_HANDLE MacReceiveContext, IN PCHAR Address, IN PVOID HeaderBuffer, IN UINT HeaderBufferSize, IN PVOID LookaheadBuffer, IN UINT LookaheadBufferSize, IN UINT PacketSize)
Definition: efilter.c:69
#define DECLARE_UNKNOWN_STRUCT(BaseName)
Definition: efilter.h:10
#define ETH_LENGTH_OF_ADDRESS
Definition: efilter.h:16
VOID NTAPI EthDeleteFilter(IN PETH_FILTER Filter)
Definition: efilter.c:57
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
Definition: fltkernel.h:1801
struct _X_FILTER * PETH_FILTER
Definition: ndis.h:2266
unsigned int UINT
Definition: ndis.h:50
static WCHAR Address[46]
Definition: ping.c:68
PETH_BINDING_INFO MCastSet
Definition: efilter.h:41
UINT MaxMulticastAddresses
Definition: efilter.h:33
PNDIS_SPIN_LOCK Lock
Definition: efilter.h:25
UINT OldCombinedPacketFilter
Definition: efilter.h:36
UINT NumAddresses
Definition: efilter.h:34
UINT CombinedPacketFilter
Definition: efilter.h:28
PETH_BINDING_INFO DirectedList
Definition: efilter.h:39
UINT OldNumAddresses
Definition: efilter.h:38
struct _NDIS_MINIPORT_BLOCK * Miniport
Definition: efilter.h:27
PETH_BINDING_INFO BMList
Definition: efilter.h:40
ETH_FILTER_CHANGE FilterChangeAction
Definition: efilter.h:31
ETH_DEFERRED_CLOSE CloseAction
Definition: efilter.h:32
PETH_BINDING_INFO OpenList
Definition: efilter.h:29
ETH_ADDRESS_CHANGE AddressChangeAction
Definition: efilter.h:30
#define NTAPI
Definition: typedefs.h:36
#define IN
Definition: typedefs.h:39
unsigned char * PUCHAR
Definition: typedefs.h:53
#define OUT
Definition: typedefs.h:40
char * PCHAR
Definition: typedefs.h:51
_In_ USHORT PacketSize
Definition: iofuncs.h:1058
unsigned char UCHAR
Definition: xmlstorage.h:181