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.
73 lines
1.2 KiB
73 lines
1.2 KiB
/*++
|
|
|
|
Copyright (c) 1997-2001 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
NsIpSec.h
|
|
|
|
Abstract:
|
|
|
|
External interface declarations for IpSec NAT shim
|
|
|
|
Author:
|
|
|
|
Jonathan Burstein (jonburs) 10-July-2001
|
|
|
|
Environment:
|
|
|
|
Kernel mode
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#pragma once
|
|
|
|
//
|
|
// Function Type Definitions
|
|
//
|
|
|
|
typedef NTSTATUS
|
|
(*PNS_PROCESS_OUTGOING_PACKET)(
|
|
IN IPHeader UNALIGNED *pIpHeader,
|
|
IN PVOID pvProtocolHeader,
|
|
IN ULONG ulProtocolHeaderSize,
|
|
OUT PVOID *ppvIpSecContext
|
|
);
|
|
|
|
typedef NTSTATUS
|
|
(*PNS_PROCESS_INCOMING_PACKET)(
|
|
IN IPHeader UNALIGNED *pIpHeader,
|
|
IN PVOID pvProtocolHeader,
|
|
IN ULONG ulProtocolHeaderSize,
|
|
IN PVOID pvIpSecContext
|
|
);
|
|
|
|
typedef NTSTATUS
|
|
(*PNS_CLEANUP_SHIM)(
|
|
VOID
|
|
);
|
|
|
|
//
|
|
// Structure Definitions
|
|
//
|
|
|
|
typedef struct _IPSEC_NATSHIM_FUNCTIONS
|
|
{
|
|
OUT PNS_PROCESS_OUTGOING_PACKET pOutgoingPacketRoutine;
|
|
OUT PNS_PROCESS_INCOMING_PACKET pIncomingPacketRoutine;
|
|
OUT PNS_CLEANUP_SHIM pCleanupRoutine;
|
|
} IPSEC_NATSHIM_FUNCTIONS, *PIPSEC_NATSHIM_FUNCTIONS;
|
|
|
|
//
|
|
// Function Prototypes
|
|
//
|
|
|
|
NTSTATUS
|
|
NsInitializeShim(
|
|
IN PDEVICE_OBJECT pIpSecDeviceObject,
|
|
IN PIPSEC_NATSHIM_FUNCTIONS pShimFunctions
|
|
);
|
|
|
|
|