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.
268 lines
5.1 KiB
268 lines
5.1 KiB
////////////////////////////////////////////////////////////
|
|
//Header: staticadd.h
|
|
//
|
|
// Purpose: Defining structures and prototypes for staticadd.cpp.
|
|
//
|
|
// Developers Name: surya
|
|
//
|
|
// Revision History:
|
|
//
|
|
// Date Author Comments
|
|
// 21th Aug 2001 surya Initial Version.
|
|
//
|
|
////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _STATICADD_H_
|
|
#define _STATICADD_H_
|
|
|
|
|
|
const DWORD MMPFS_QM_LIMIT = 1;
|
|
const time_t P2STORE_DEFAULT_KBLIFE = 0;
|
|
const time_t P2STORE_DEFAULT_LIFETIME = POTF_DEFAULT_P1REKEY_TIME;//60 * 480; by VKR to reflect the IPSECCMD defaults
|
|
const time_t QM_DEFAULT_LIFETIMEINKILOBYTES = 0;
|
|
const time_t QM_DEFAULT_LIFETIMEINSECONDS = 0;
|
|
const ULONG POTF_OAKLEY_ALGOKEYLEN = 64;
|
|
const ULONG POTF_OAKLEY_ALGOROUNDS = 8;
|
|
const DWORD PROTOCOL_ANY = 0;
|
|
const WORD PORT_ANY = 0;
|
|
const WORD DEF_NUMBER_OF_ADDR = 1;
|
|
const DWORD ADDR_ME = 0x00000000;
|
|
const DWORD MASK_ME = 0xFFFFFFFF;
|
|
|
|
|
|
|
|
typedef struct _FILTERDATA {
|
|
LPTSTR pszFLName;
|
|
LPTSTR pszDescription;
|
|
GUID FilterSpecGUID;
|
|
DNSIPADDR SourceAddr;
|
|
BOOL bSrcAddrSpecified;
|
|
DWORD SourMask;
|
|
BOOL bSrcMaskSpecified;
|
|
DNSIPADDR DestnAddr;
|
|
BOOL bDstAddrSpecified;
|
|
DWORD DestMask;
|
|
BOOL bDstMaskSpecified;
|
|
DWORD TunnAddr;
|
|
BOOL TunnFiltExists;
|
|
BOOL bMirrored;
|
|
DWORD dwProtocol;
|
|
WORD SourPort;
|
|
WORD DestPort;
|
|
UCHAR ExType;
|
|
BOOL bSrcServerSpecified;
|
|
BOOL bDstServerSpecified;
|
|
BOOL bSrcMeSpecified;
|
|
BOOL bSrcAnySpecified;
|
|
BOOL bDstMeSpecified;
|
|
BOOL bDstAnySpecified;
|
|
}FILTERDATA, *PFILTERDATA;
|
|
|
|
extern BOOL
|
|
IsDomainMember(
|
|
IN LPTSTR pszMachine
|
|
);
|
|
|
|
//
|
|
//Add policy prototypes
|
|
//
|
|
DWORD
|
|
CreateNewPolicy(
|
|
IN PPOLICYDATA pPolicyData
|
|
);
|
|
|
|
DWORD
|
|
LoadIkeDefaults(
|
|
IN OUT PPOLICYDATA pPolicy,
|
|
OUT IPSEC_MM_OFFER **ppIpSecMMOffer
|
|
);
|
|
|
|
DWORD
|
|
AddDefaultResponseRule(
|
|
IN OUT PIPSEC_POLICY_DATA pPolicy,
|
|
IN HANDLE hPolicyStorage,
|
|
IN BOOL bActivateDefaultRule,
|
|
IN BOOL bActivateDefaultRuleSpecified
|
|
);
|
|
|
|
PIPSEC_NFA_DATA
|
|
MakeDefaultResponseRule (
|
|
IN BOOL bActivate,
|
|
IN BOOL bActivateSpecified
|
|
);
|
|
|
|
PIPSEC_NEGPOL_DATA
|
|
MakeDefaultResponseNegotiationPolicy (
|
|
VOID
|
|
);
|
|
|
|
BOOL
|
|
CheckPolicyExistance(
|
|
IN HANDLE hPolicyStorage,
|
|
IN LPTSTR pszPolicyName
|
|
);
|
|
//
|
|
//Add filter action proto types
|
|
//
|
|
DWORD
|
|
LoadOfferDefaults(
|
|
OUT PIPSEC_QM_OFFER & pOffers,
|
|
OUT DWORD & dwNumOffers
|
|
);
|
|
|
|
DWORD
|
|
MakeNegotiationPolicy(
|
|
OUT PIPSEC_NEGPOL_DATA *ppNegPol,
|
|
IN PFILTERACTION pFilterAction
|
|
);
|
|
//
|
|
//Add rule
|
|
//
|
|
DWORD
|
|
CreateNewRule(
|
|
IN PRULEDATA pRuleData
|
|
);
|
|
|
|
BOOL
|
|
GetPolicyFromStore(
|
|
OUT PIPSEC_POLICY_DATA *ppPolicy,
|
|
IN LPTSTR szPolicyName,
|
|
IN HANDLE hPolicyStorage
|
|
);
|
|
|
|
BOOL
|
|
GetFilterListFromStore(
|
|
OUT PIPSEC_FILTER_DATA *ppFilter,
|
|
IN LPTSTR pszFLName,
|
|
IN HANDLE hPolicyStorage,
|
|
IN OUT BOOL &bFilterExists
|
|
);
|
|
|
|
BOOL
|
|
GetNegPolFromStore(
|
|
OUT PIPSEC_NEGPOL_DATA *ppNegPol,
|
|
IN LPTSTR pszFAName,
|
|
IN HANDLE hPolicyStorage
|
|
);
|
|
|
|
PIPSEC_NFA_DATA
|
|
MakeRule(
|
|
IN PRULEDATA pRuleData,
|
|
IN PIPSEC_NEGPOL_DATA pNegPolData,
|
|
IN PIPSEC_FILTER_DATA pFilterData
|
|
);
|
|
|
|
DWORD
|
|
AddRule(
|
|
IN OUT PIPSEC_POLICY_DATA pPolicy,
|
|
IN PRULEDATA pRuleData,
|
|
IN PIPSEC_NEGPOL_DATA pNegPolData,
|
|
IN PIPSEC_FILTER_DATA pFilterData ,
|
|
IN HANDLE hPolicyStorage
|
|
);
|
|
|
|
DWORD
|
|
LoadAuthenticationInfos(
|
|
IN STA_AUTH_METHODS AuthInfos,
|
|
IN OUT PIPSEC_NFA_DATA &pRule,
|
|
IN OUT BOOL &bCertConversionSuceeded
|
|
);
|
|
|
|
PIPSEC_NFA_DATA*
|
|
ReAllocRuleMem(
|
|
IN PIPSEC_NFA_DATA *ppOldMem,
|
|
IN DWORD cbOld,
|
|
IN DWORD cbNew
|
|
);
|
|
|
|
DWORD
|
|
DecodeCertificateName (
|
|
IN LPBYTE EncodedName,
|
|
IN DWORD EncodedNameLength,
|
|
IN OUT LPTSTR *ppszSubjectName
|
|
);
|
|
//
|
|
//Add Filter
|
|
//
|
|
PIPSEC_FILTER_SPEC *
|
|
ReAllocFilterSpecMem(
|
|
IN PIPSEC_FILTER_SPEC * ppOldMem,
|
|
IN DWORD cbOld,
|
|
IN DWORD cbNew
|
|
);
|
|
|
|
DWORD
|
|
FillAddPolicyInfo(
|
|
OUT PPOLICYDATA* ppFilter,
|
|
IN PARSER_PKT & parser,
|
|
IN const TOKEN_VALUE *vtokStaticAddPolicy
|
|
);
|
|
|
|
DWORD
|
|
FillAddFilterInfo(
|
|
OUT PFILTERDATA* ppFilterData,
|
|
IN PARSER_PKT & parser,
|
|
IN const TOKEN_VALUE *vtokStaticAddFilter
|
|
);
|
|
|
|
DWORD
|
|
FillAddFilterActionInfo(
|
|
OUT PFILTERACTION* ppFilterData,
|
|
IN PARSER_PKT & parser,
|
|
IN const TOKEN_VALUE *vtokStaticAddFilterAction
|
|
);
|
|
|
|
DWORD
|
|
FillAddRuleInfo(
|
|
OUT PRULEDATA* ppRuleData,
|
|
IN PARSER_PKT & parser,
|
|
IN const TOKEN_VALUE *vtokStaticAddRule
|
|
);
|
|
|
|
//
|
|
//add filterlist
|
|
//
|
|
DWORD
|
|
CreateNewFilterList(
|
|
IN HANDLE hPolicyStorage,
|
|
IN LPTSTR pszFLName,
|
|
IN LPTSTR pszFLDescription
|
|
);
|
|
|
|
DWORD
|
|
ValidateFilterSpec(
|
|
IN PFILTERDATA pFilterData
|
|
);
|
|
|
|
BOOL
|
|
CheckForRuleExistance(
|
|
IN PIPSEC_POLICY_DATA pPolicy,
|
|
IN LPTSTR pszRuleName
|
|
);
|
|
|
|
BOOL
|
|
CheckFilterListExistance(
|
|
IN HANDLE hPolicyStorage,
|
|
IN LPTSTR pszFLName
|
|
);
|
|
|
|
BOOL
|
|
CheckFilterActionExistance(
|
|
IN HANDLE hPolicyStorage,
|
|
IN LPTSTR pszFAName
|
|
);
|
|
|
|
DWORD
|
|
ConvertMMAuthToStaticLocal(
|
|
IN PINT_IPSEC_MM_AUTH_INFO pAuthenticationInfo,
|
|
IN DWORD dwAuthInfos,
|
|
IN OUT STA_AUTH_METHODS &AuthInfos
|
|
);
|
|
|
|
DWORD
|
|
ConnectStaticMachine(
|
|
IN LPCWSTR pwszMachine,
|
|
IN DWORD dwLocation
|
|
);
|
|
|
|
#endif //_STATICADD_H_
|