/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ #ifndef __ipxfltdf_h #define __ipxfltdf_h typedef struct _IPX_TRAFFIC_FILTER_GLOBAL_INFO { ULONG FilterAction; } IPX_TRAFFIC_FILTER_GLOBAL_INFO,*PIPX_TRAFFIC_FILTER_GLOBAL_INFO; #define IPX_TRAFFIC_FILTER_ACTION_PERMIT 1 #define IPX_TRAFFIC_FILTER_ACTION_DENY 2 typedef struct _IPX_TRAFFIC_FILTER_INFO { ULONG FilterDefinition; UCHAR DestinationNetwork[4]; UCHAR DestinationNetworkMask[4]; UCHAR DestinationNode[6]; UCHAR DestinationSocket[2]; UCHAR SourceNetwork[4]; UCHAR SourceNetworkMask[4]; UCHAR SourceNode[6]; UCHAR SourceSocket[2]; UCHAR PacketType; } IPX_TRAFFIC_FILTER_INFO,*PIPX_TRAFFIC_FILTER_INFO; #define IPX_TRAFFIC_FILTER_ON_SRCNET 0x00000001 #define IPX_TRAFFIC_FILTER_ON_SRCNODE 0x00000002 #define IPX_TRAFFIC_FILTER_ON_SRCSOCKET 0x00000004 #define IPX_TRAFFIC_FILTER_ON_DSTNET 0x00000010 #define IPX_TRAFFIC_FILTER_ON_DSTNODE 0x00000020 #define IPX_TRAFFIC_FILTER_ON_DSTSOCKET 0x00000040 #define IPX_TRAFFIC_FILTER_ON_PKTTYPE 0x00000100 #define IPX_TRAFFIC_FILTER_LOG_MATCHES 0x80000000 typedef struct _FLT_IF_SET_PARAMS { ULONG InterfaceIndex; ULONG FilterAction; ULONG FilterSize; } FLT_IF_SET_PARAMS,*PFLT_IF_SET_PARAMS; typedef struct _FLT_IF_GET_PARAMS { ULONG FilterAction; ULONG FilterSize; ULONG TotalSize; } FLT_IF_GET_PARAMS,*PFLT_IF_GET_PARAMS; typedef struct _FLT_PACKET_LOG { ULONG SrcIfIdx; ULONG DstIfIdx; USHORT DataSize; USHORT SeqNum; UCHAR Header[30]; } FLT_PACKET_LOG,*PFLT_PACKET_LOG; #endif