windows-nt/Source/XPSP1/NT/net/ipsec/inc/oakdll.h
2020-09-26 16:20:57 +08:00

93 lines
2 KiB
C

#ifndef OAKDLL_H
#define OAKDLL_H
#ifdef __cplusplus
extern "C"{
#endif
/* Forward Declarations */
/* header files for imported files */
#include "wtypes.h"
#include "ipsec.h"
#include "oakdefs.h"
#include "winipsec.h"
typedef enum _POLICY_GUID_TYPE {
POLICY_GUID_MM = 1,
POLICY_GUID_QM,
POLICY_GUID_AUTH,
POLICY_GUID_MM_FILTER
} POLICY_GUID_TYPE, *PPOLICY_GUID_TYPE;
DWORD WINAPI IKEInit () ;
DWORD WINAPI IKEShutdown () ;
DWORD WINAPI IKEInitiateIKENegotiation(
PIPSEC_QM_FILTER Filter,
DWORD dwClientProcessId,
HANDLE hClientEvent,
DWORD dwFlags,
PHANDLE phNegotiationHandle);
DWORD WINAPI IKEQueryIKENegotiationStatus(
HANDLE hNegotiationHandle,
SA_NEGOTIATION_STATUS_INFO *NegotiationStatus,
DWORD dwFlags);
DWORD WINAPI IKECloseIKENegotiationHandle(
HANDLE hNegotiationHandle);
DWORD WINAPI IKEQueryStatistics(
PIKE_STATISTICS IKEStatistics);
DWORD WINAPI IKEDeleteAssociation(
IPSEC_MM_SA *MMTemplate,
DWORD dwFlags);
DWORD WINAPI IKEQuerySpiChange(
HANDLE hNotifyHandle,
LPDWORD dwListCount,
IPSEC_QM_SA **FilterSpiList);
DWORD WINAPI IKERegisterNotifyClient(
DWORD dwClientProcessId,
HANDLE hClientEvent,
IPSEC_QM_SA QMInfo,
PHANDLE phNotifyHandle);
DWORD WINAPI IKECloseIKENotifyHandle(HANDLE hNotifyHandle);
DWORD WINAPI IKEInterfaceChange();
DWORD WINAPI IKEEnumMMs(IPSEC_MM_SA *MMTemplate,
IPSEC_MM_SA **MMArray,
LPDWORD pdwNumEntries,
LPDWORD pdwTotalMMsAvailable,
LPDWORD pdwEnumHandle,
DWORD dwFlags);
DWORD WINAPI
IKENotifyPolicyChange(GUID *pPolicyGuid, POLICY_GUID_TYPE GuidType);
DWORD WINAPI
IKEAddSAs(
PIPSEC_QM_OFFER pQMOffer,
PIPSEC_QM_FILTER pQMFilter,
HANDLE *hLarvalContext,
DWORD dwInboundKeyMatLen,
BYTE *InboundKeyMat,
DWORD dwOutboundKeyMatLen,
BYTE *OutboundKeyMat,
BYTE *ContextInfo,
DWORD dwFlags
);
#ifdef __cplusplus
}
#endif
#endif