* include/ntsecpkg.h: New file.
* include/schannel.h: New file.
* include/schnlsp.h: New file.
* include/security.h: New file.
* include/sspi.h: New file.
* include/ntsecapi.h (KERB_WRAP_NO_ENCRYPT,
MICROSOFT_KERBEROS_NAME_[AW]): Add missing constants
* include/wincrypt.h (CALG_*, X509_ASN_ENCODING.
PKCS_7_ASN_ENCODING, CERT_*, USAGE_MATCH_TYPE_AND,
USAGE_MATCH_TYPE_OR, szOID_*): Add missing constants
(struct _CRYPTOAPI_BLOB): Add structure and typedefs.
(SSL_EXTRA_CERT_CHAIN_POLICY_PARA,HTTPSPolicyCallbackData,
CERT_CHAIN_POLICY_PARA,CERT_CHAIN_POLICY_STATUS,
CRYPT_ALGORITHM_IDENTIFIER, CRYPT_BIT_BLOB,
CERT_PUBLIC_KEY_INFO, CERT_EXTENSION, CERT_INFO, CERT_CONTEXT,
CTL_USAGE, CERT_ENHKEY_USAGE, CERT_USAGE_MATCH,
CERT_CHAIN_PARA, CERT_CHAIN_FIND_BY_ISSUER_PARA,
CERT_TRUST_STATUS, CRL_ENTRY, CRL_INFO, CRL_CONTEXT,
CERT_REVOCATION_CRL_INFO, CERT_REVOCATION_INFO,
CERT_CHAIN_ELEMENT, CRYPT_ATTRIBUTE, CTL_ENTRY, CTL_INFO,
CTL_CONTEXT, CERT_TRUST_LIST_INFO, CERT_SIMPLE_CHAIN,
CERT_CHAIN_CONTEXT): Add missing structures.
(CertCloseStore, CertGetCertificateChain,
CertVerifyCertificateChainPolicy, CertFreeCertificateChain,
CertNameToStr[AW], CertOpenSystemStore[AW], CertOpenStore,
CertFindCertificateInStore, CertFreeCertificateContext,
CertGetIssuerCertificateFromStore,
CertFindChainInStore): Add missing functions.
(CertNameToStr, CertOpenSystemStore, CERT_FIND_SUBJECT_STR,
CERT_FIND_ISSUER_STR): Add Unicode mappings.
* lib/crypt32.def: New file.
* lib/secur32.def: Add mising stubs.
* lib/test.c: Include new headers.
2002-02-14 08:24:52 +08:00
|
|
|
#ifndef _SCHANNEL_H
|
|
|
|
#define _SCHANNEL_H
|
* include/accctrl.h, aclapi.h, basetsd.h, basetyps.h, cderr.h,
cguid.h, commctrl.h, commdlg.h, cpl.h, cplext.h, custcntl.h,
dbt.h, dde.h, ddeml.h, dlgs.h, excpt.h, httpext.h, imagehlp.h,
imm.h, initguid.h, intshcut.h, ipexport.h, iphlpapi.h,
ipifcons.h, iprtrmib.h, iptypes.h, isguids.h, largeint.h, lm.h,
lmaccess.h, lmalert.h, lmapibuf.h, lmat.h, lmaudit.h,
lmbrowsr.h, lmchdev.h, lmconfig.h, lmcons.h, lmerr.h,
lmerrlog.h, lmmsg.h, lmremutl.h, lmrepl.h, lmserver.h,
lmshare.h, lmsname.h, lmstats.h, lmsvc.h, lmuse.h, lmuseflg.h,
lmwksta.h, lzexpand.h, mapi.h, mciavi.h, mcx.h, mmsystem.h,
mswsock.h, nb30.h, nddeapi.h, nspapi.h, ntdef.h, ntsecapi.h,
ntsecpkg.h, oaidl.h, objbase.h, objfwd.h, objidl.h, odbcinst.h,
ole.h, ole2.h, ole2ver.h, oleauto.h, olectl.h, olectlid.h,
oledlg.h, oleidl.h, pbt.h, prsht.h, psapi.h, rapi.h, ras.h,
raserror.h, rassapi.h, regstr.h, richedit.h, richole.h, rpc.h,
rpcdce.h, rpcdce2.h, rpcdcep.h, rpcndr.h, rpcnsi.h, rpcnsip.h,
rpcnterr.h, rpcproxy.h, schannel.h, schnlsp.h, scrnsave.h,
security.h, setupapi.h, shellapi.h, shlguid.h, shlobj.h, sql.h,
sqlext.h, sqltypes.h, sqlucode.h, sspi.h, subauth.h,
tlhelp32.h, unknwn.h, userenv.h, w32api.h, winbase.h, wincon.h,
wincrypt.h, windef.h, windows.h, windowsx.h, winerror.h,
wingdi.h, wininet.h, winioctl.h, winnetwk.h, winnls.h, winnt.h,
winperf.h, winreg.h, winresrc.h, winsock.h, winsock2.h,
winspool.h, winsvc.h, winuser.h, winver.h, ws2tcpip.h,
wsnetbs.h, wtypes.h, zmouse.h: Add #pragma GCC system_header
if __GNUC__ >= 3.
* include/mapi.h: Change header guard name to _MAPI_H for
consistency.
2002-03-09 17:04:10 +08:00
|
|
|
#if __GNUC__ >=3
|
|
|
|
#pragma GCC system_header
|
|
|
|
#endif
|
* include/ntsecpkg.h: New file.
* include/schannel.h: New file.
* include/schnlsp.h: New file.
* include/security.h: New file.
* include/sspi.h: New file.
* include/ntsecapi.h (KERB_WRAP_NO_ENCRYPT,
MICROSOFT_KERBEROS_NAME_[AW]): Add missing constants
* include/wincrypt.h (CALG_*, X509_ASN_ENCODING.
PKCS_7_ASN_ENCODING, CERT_*, USAGE_MATCH_TYPE_AND,
USAGE_MATCH_TYPE_OR, szOID_*): Add missing constants
(struct _CRYPTOAPI_BLOB): Add structure and typedefs.
(SSL_EXTRA_CERT_CHAIN_POLICY_PARA,HTTPSPolicyCallbackData,
CERT_CHAIN_POLICY_PARA,CERT_CHAIN_POLICY_STATUS,
CRYPT_ALGORITHM_IDENTIFIER, CRYPT_BIT_BLOB,
CERT_PUBLIC_KEY_INFO, CERT_EXTENSION, CERT_INFO, CERT_CONTEXT,
CTL_USAGE, CERT_ENHKEY_USAGE, CERT_USAGE_MATCH,
CERT_CHAIN_PARA, CERT_CHAIN_FIND_BY_ISSUER_PARA,
CERT_TRUST_STATUS, CRL_ENTRY, CRL_INFO, CRL_CONTEXT,
CERT_REVOCATION_CRL_INFO, CERT_REVOCATION_INFO,
CERT_CHAIN_ELEMENT, CRYPT_ATTRIBUTE, CTL_ENTRY, CTL_INFO,
CTL_CONTEXT, CERT_TRUST_LIST_INFO, CERT_SIMPLE_CHAIN,
CERT_CHAIN_CONTEXT): Add missing structures.
(CertCloseStore, CertGetCertificateChain,
CertVerifyCertificateChainPolicy, CertFreeCertificateChain,
CertNameToStr[AW], CertOpenSystemStore[AW], CertOpenStore,
CertFindCertificateInStore, CertFreeCertificateContext,
CertGetIssuerCertificateFromStore,
CertFindChainInStore): Add missing functions.
(CertNameToStr, CertOpenSystemStore, CERT_FIND_SUBJECT_STR,
CERT_FIND_ISSUER_STR): Add Unicode mappings.
* lib/crypt32.def: New file.
* lib/secur32.def: Add mising stubs.
* lib/test.c: Include new headers.
2002-02-14 08:24:52 +08:00
|
|
|
|
|
|
|
#include <wincrypt.h>
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define SCHANNEL_CRED_VERSION 4
|
|
|
|
#define SCHANNEL_SHUTDOWN 1
|
|
|
|
/* ? Do these belong here or in wincrypt.h */
|
|
|
|
#define AUTHTYPE_CLIENT 1
|
|
|
|
#define AUTHTYPE_SERVER 2
|
|
|
|
|
|
|
|
#define SP_PROT_TLS1_CLIENT 128
|
|
|
|
#define SP_PROT_TLS1_SERVER 64
|
|
|
|
#define SP_PROT_SSL3_CLIENT 32
|
|
|
|
#define SP_PROT_SSL3_SERVER 16
|
|
|
|
#define SP_PROT_SSL2_CLIENT 8
|
|
|
|
#define SP_PROT_SSL2_SERVER 4
|
|
|
|
#define SP_PROT_PCT1_SERVER 1
|
|
|
|
#define SP_PROT_PCT1_CLIENT 2
|
|
|
|
|
|
|
|
#define SP_PROT_PCT1 (SP_PROT_PCT1_CLIENT|SP_PROT_PCT1_SERVER)
|
|
|
|
#define SP_PROT_TLS1 (SP_PROT_TLS1_CLIENT|SP_PROT_TLS1_SERVER)
|
|
|
|
#define SP_PROT_SSL2 (SP_PROT_SSL2_CLIENT|SP_PROT_SSL2_SERVER)
|
|
|
|
#define SP_PROT_SSL3 (SP_PROT_SSL3_CLIENT|SP_PROT_SSL3_SERVER)
|
|
|
|
|
|
|
|
#define SCH_CRED_NO_SYSTEM_MAPPER 2
|
|
|
|
#define SCH_CRED_NO_SERVERNAME_CHECK 4
|
|
|
|
#define SCH_CRED_MANUAL_CRED_VALIDATION 8
|
|
|
|
#define SCH_CRED_NO_DEFAULT_CREDS 16
|
|
|
|
#define SCH_CRED_AUTO_CRED_VALIDATION 32
|
|
|
|
#define SCH_CRED_REVOCATION_CHECK_CHAIN 512
|
|
|
|
#define SCH_CRED_REVOCATION_CHECK_END_CERT 256
|
|
|
|
#define SCH_CRED_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT 1024
|
|
|
|
#define SCH_CRED_IGNORE_NO_REVOCATION_CHECK 2048
|
|
|
|
#define SCH_CRED_IGNORE_REVOCATION_OFFLINE 4096
|
|
|
|
#define SCH_CRED_USE_DEFAULT_CREDS 64
|
|
|
|
|
|
|
|
typedef struct _SCHANNEL_CRED {
|
|
|
|
DWORD dwVersion;
|
|
|
|
DWORD cCreds;
|
|
|
|
PCCERT_CONTEXT* paCred;
|
|
|
|
HCERTSTORE hRootStore;
|
|
|
|
DWORD cMappers;
|
|
|
|
struct _HMAPPER** aphMappers;
|
|
|
|
DWORD cSupportedAlgs;
|
|
|
|
ALG_ID* palgSupportedAlgs;
|
|
|
|
DWORD grbitEnabledProtocols;
|
|
|
|
DWORD dwMinimumCypherStrength;
|
|
|
|
DWORD dwMaximumCypherStrength;
|
|
|
|
DWORD dwSessionLifespan;
|
|
|
|
DWORD dwFlags;
|
|
|
|
DWORD reserved;
|
|
|
|
} SCHANNEL_CRED, *PSCHANNEL_CRED;
|
|
|
|
typedef struct _SecPkgCred_SupportedAlgs {
|
|
|
|
DWORD cSupportedAlgs;
|
|
|
|
ALG_ID* palgSupportedAlgs;
|
|
|
|
} SecPkgCred_SupportedAlgs, *PSecPkgCred_SupportedAlgs;
|
|
|
|
typedef struct _SecPkgCred_CypherStrengths {
|
|
|
|
DWORD dwMinimumCypherStrength;
|
|
|
|
DWORD dwMaximumCypherStrength;
|
|
|
|
} SecPkgCred_CypherStrengths, *PSecPkgCred_CypherStrengths;
|
|
|
|
typedef struct _SecPkgCred_SupportedProtocols {
|
|
|
|
DWORD grbitProtocol;
|
|
|
|
} SecPkgCred_SupportedProtocols, *PSecPkgCred_SupportedProtocols;
|
|
|
|
typedef struct _SecPkgContext_IssuerListInfoEx {
|
|
|
|
PCERT_NAME_BLOB aIssuers;
|
|
|
|
DWORD cIssuers;
|
|
|
|
} SecPkgContext_IssuerListInfoEx, *PSecPkgContext_IssuerListInfoEx;
|
|
|
|
typedef struct _SecPkgContext_ConnectionInfo {
|
|
|
|
DWORD dwProtocol;
|
|
|
|
ALG_ID aiCipher;
|
|
|
|
DWORD dwCipherStrength;
|
|
|
|
ALG_ID aiHash;
|
|
|
|
DWORD dwHashStrength;
|
|
|
|
ALG_ID aiExch;
|
|
|
|
DWORD dwExchStrength;
|
|
|
|
} SecPkgContext_ConnectionInfo, *PSecPkgContext_ConnectionInfo;
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* _SCHANNEL_H */
|