NF_IP_PACKET_OPTIONS

IP packet options.

typedef enum _NF_IP_FLAG
{
	NFIF_NONE = 0,		// No flags
	NFIF_READONLY = 1,	// The packet was not blocked and indicated only for monitoring in read-only mode 
						// (see NF_READONLY flags from NF_FILTERING_FLAG).
} NF_IP_FLAG;

typedef struct _NF_IP_PACKET_OPTIONS
{	
	unsigned short	ip_family;			// AF_INET for IPv4 and AF_INET6 for IPv6
	unsigned int	ipHeaderSize;   	// Size in bytes of IP header
	unsigned long	compartmentId;		// Network routing compartment identifier (can be zero)
	unsigned long	interfaceIndex;   	// Index of the interface on which the original packet data was received (irrelevant to outgoing packets)
	unsigned long	subInterfaceIndex;  // Index of the subinterface on which the original packet data was received (irrelevant to outgoing packets)
	unsigned long	flags;				// Can be a combination of flags from NF_IP_FLAG enumeration
} NF_IP_PACKET_OPTIONS, *PNF_IP_PACKET_OPTIONS;

Members

ip_family
AF_INET for IPv4 and AF_INET6 for IPv6
ipHeaderSize
Size in bytes of IP header
compartmentId
Network routing compartment identifier
interfaceIndex
Index of the interface on which the original packet data was received (irrelevant to outgoing packets)
subInterfaceIndex
Index of the subinterface on which the original packet data was received (irrelevant to outgoing packets)
flags
Can be a combination of flags from NF_IP_FLAG enumeration

Requirements

Driver type WFP
Header nfapi.h
Library nfapi.lib