|
|
/*++
Copyright (c) 1999 Microsoft Corporation
Module Name:
txspecific.h
Abstract:
This module contains all of the code prototypes to drive the specific transport filter list management of IPSecSPD Service.
Author:
abhisheV 29-October-1999
Environment
User Level: Win32
Revision History:
--*/
DWORD ApplyTxTransform( PINITXFILTER pFilter, MATCHING_ADDR * pMatchingAddresses, DWORD dwAddrCnt, PINITXSFILTER * ppSpecificFilters );
DWORD FormTxOutboundInboundAddresses( PINITXFILTER pFilter, MATCHING_ADDR * pMatchingAddresses, DWORD dwAddrCnt, PADDR * ppOutSrcAddrList, PDWORD pdwOutSrcAddrCnt, PADDR * ppInSrcAddrList, PDWORD pdwInSrcAddrCnt, PADDR * ppOutDesAddrList, PDWORD pdwOutDesAddrCnt, PADDR * ppInDesAddrList, PDWORD pdwInDesAddrCnt );
DWORD FormAddressList( ADDR InAddr, MATCHING_ADDR * pMatchingAddresses, DWORD dwAddrCnt, PADDR * ppOutAddr, PDWORD pdwOutAddrCnt );
DWORD SeparateAddrList( ADDR_TYPE AddrType, PADDR pAddrList, DWORD dwAddrCnt, MATCHING_ADDR * pMatchingAddresses, DWORD dwLocalAddrCnt, PADDR * ppOutAddrList, PDWORD pdwOutAddrCnt, PADDR * ppInAddrList, PDWORD pdwInAddrCnt );
DWORD FormSpecificTxFilters( PINITXFILTER pFilter, PADDR pSrcAddrList, DWORD dwSrcAddrCnt, PADDR pDesAddrList, DWORD dwDesAddrCnt, DWORD dwDirection, PINITXSFILTER * ppSpecificFilters );
DWORD SeparateUniqueAddresses( PADDR pAddrList, DWORD dwAddrCnt, MATCHING_ADDR * pMatchingAddresses, DWORD dwLocalAddrCnt, PADDR * ppIsMeAddrList, PDWORD pdwIsMeAddrCnt, PADDR * ppIsNotMeAddrList, PDWORD pdwIsNotMeAddrCnt );
DWORD SeparateSubNetAddresses( PADDR pAddrList, DWORD dwAddrCnt, MATCHING_ADDR * pMatchingAddresses, DWORD dwLocalAddrCnt, PADDR * ppIsMeAddrList, PDWORD pdwIsMeAddrCnt, PADDR * ppIsNotMeAddrList, PDWORD pdwIsNotMeAddrCnt );
DWORD CreateSpecificTxFilter( PINITXFILTER pGenericFilter, ADDR SrcAddr, ADDR DesAddr, PINITXSFILTER * ppSpecificFilter );
VOID AssignTxFilterWeight( PINITXSFILTER pSpecificFilter );
VOID AddToSpecificTxList( PINITXSFILTER * ppSpecificTxFilterList, PINITXSFILTER pSpecificTxFilters );
VOID FreeIniTxSFilterList( PINITXSFILTER pIniTxSFilterList );
VOID FreeIniTxSFilter( PINITXSFILTER pIniTxSFilter );
VOID LinkTxSpecificFilters( PINIQMPOLICY pIniQMPolicy, PINITXSFILTER pIniTxSFilters );
VOID RemoveIniTxSFilter( PINITXSFILTER pIniTxSFilter );
DWORD EnumSpecificTxFilters( PINITXSFILTER pIniTxSFilterList, DWORD dwResumeHandle, DWORD dwPreferredNumEntries, PTRANSPORT_FILTER * ppTxFilters, PDWORD pdwNumTxFilters );
DWORD CopyTxSFilter( PINITXSFILTER pIniTxSFilter, PTRANSPORT_FILTER pTxFilter );
DWORD EnumSelectSpecificTxFilters( PINITXFILTER pIniTxFilter, DWORD dwResumeHandle, DWORD dwPreferredNumEntries, PTRANSPORT_FILTER * ppTxFilters, PDWORD pdwNumTxFilters );
DWORD ValidateTxFilterTemplate( PTRANSPORT_FILTER pTxFilter );
BOOL MatchIniTxSFilter( PINITXSFILTER pIniTxSFilter, PTRANSPORT_FILTER pTxFilter );
DWORD CopyTxMatchDefaults( PTRANSPORT_FILTER * ppTxFilters, PIPSEC_QM_POLICY * ppQMPolicies, PDWORD pdwNumMatches );
DWORD CopyDefaultTxFilter( PTRANSPORT_FILTER pTxFilter, PINIQMPOLICY pIniQMPolicy );
DWORD SeparateInterfaceAddresses( PADDR pAddrList, DWORD dwAddrCnt, MATCHING_ADDR * pMatchingAddresses, DWORD dwLocalAddrCnt, PADDR * ppIsMeAddrList, PDWORD pdwIsMeAddrCnt, PADDR * ppIsNotMeAddrList, PDWORD pdwIsNotMeAddrCnt );
|