Source code of Windows XP (NT5)
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.
|
|
/*
Copyright (c) 1995-1999 Microsoft Corporation File ipxfltdf.h
Defines structures used with the ipx filter driver. */
#ifndef __ipxfltdf_h
#define __ipxfltdf_h
#if _MSC_VER > 1000
#pragma once
#endif
//*** IPX Traffic Filters ***
typedef struct _IPX_TRAFFIC_FILTER_GLOBAL_INFO { ULONG FilterAction; // Action if there is a match with
// any filter on the interface
} IPX_TRAFFIC_FILTER_GLOBAL_INFO, *PIPX_TRAFFIC_FILTER_GLOBAL_INFO;
// FilterAction
#define IPX_TRAFFIC_FILTER_ACTION_PERMIT 1
#define IPX_TRAFFIC_FILTER_ACTION_DENY 2
// general traffic filter info structure
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;
// FilterDefinition - Flags to specify relevant IPX address fields to filter on
#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; // Index of the interface
ULONG FilterAction; // Filter action
ULONG FilterSize; // sizeof (IPX_TRAFFIC_FILTER_INFO)
} FLT_IF_SET_PARAMS, *PFLT_IF_SET_PARAMS;
typedef struct _FLT_IF_GET_PARAMS { ULONG FilterAction; // Filter action
ULONG FilterSize; // sizeof (IPX_TRAFFIC_FILTER_INFO)
ULONG TotalSize; // Total size of filter description
// array
} FLT_IF_GET_PARAMS, *PFLT_IF_GET_PARAMS;
typedef struct _FLT_PACKET_LOG { ULONG SrcIfIdx; // Index of source if (-1 - unknown)
ULONG DstIfIdx; // Index of dest if (-1 - unknown)
USHORT DataSize; // Total size of the data (at least 30)
USHORT SeqNum; // Sequence number to account for
// packets lost to lack of buffer space
UCHAR Header[30]; // IPX packet header followed by the
// data if any
} FLT_PACKET_LOG, *PFLT_PACKET_LOG;
#endif
|