VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/shaderlib/wine/include/schannel.h@ 69505

Last change on this file since 69505 was 53206, checked in by vboxsync, 10 years ago

Devices/vmsvga: header fixes

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 9.8 KB
Line 
1/*
2 * Copyright (C) 2005 Juan Lang
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19/*
20 * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
21 * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
22 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
23 * a choice of LGPL license versions is made available with the language indicating
24 * that LGPLv2 or any later version may be used, or where a choice of which version
25 * of the LGPL is applied is otherwise unspecified.
26 */
27
28#ifndef __WINE_SCHANNEL_H__
29#define __WINE_SCHANNEL_H__
30
31#include <wincrypt.h>
32
33/* Package names */
34#define UNISP_NAME_A "Microsoft Unified Security Protocol Provider"
35#if defined(__GNUC__)
36#define UNISP_NAME_W (const WCHAR []){ 'M','i','c','r','o','s','o','f','t',\
37 ' ','U','n','i','f','i','e','d',' ','S','e','c','u','r','i','t','y',' ',\
38 'P','r','o','t','o','c','o','l',' ','P','r','o','v','i','d','e','r',0 }
39#elif defined(_MSC_VER)
40#define UNISP_NAME_W L"Microsoft Unified Security Protocol Provider"
41#else
42static const WCHAR UNISP_NAME_W[] = { 'M','i','c','r','o','s','o','f','t',
43 ' ','U','n','i','f','i','e','d',' ','S','e','c','u','r','i','t','y',' ',
44 'P','r','o','t','o','c','o','l',' ','P','r','o','v','i','d','e','r',0 };
45#endif
46#define UNISP_NAME WINELIB_NAME_AW(UNISP_NAME_)
47
48#define SSL2SP_NAME_A "Microsoft SSL 2.0"
49#if defined(__GNUC__)
50#define SSL2SP_NAME_W (const WCHAR []){ 'M','i','c','r','o','s','o','f','t',\
51 ' ','S','S','L',' ','2','.','0',0 }
52#elif defined(_MSC_VER)
53#define SSL2SP_NAME_W L"Microsoft SSL 2.0"
54#else
55static const WCHAR SSL2SP_NAME_W[] = { 'M','i','c','r','o','s','o','f','t',
56 ' ','S','S','L',' ','2','.','0',0 };
57#endif
58#define SSL2SP_NAME WINELIB_NAME_AW(SSL2SP_NAME_)
59
60#define SSL3SP_NAME_A "Microsoft SSL 3.0"
61#if defined(__GNUC__)
62#define SSL3SP_NAME_W (const WCHAR []){ 'M','i','c','r','o','s','o','f','t',\
63 ' ','S','S','L',' ','3','.','0',0 }
64#elif defined(_MSC_VER)
65#define SSL3SP_NAME_W L"Microsoft SSL 3.0"
66#else
67static const WCHAR SSL3SP_NAME_W[] = { 'M','i','c','r','o','s','o','f','t',
68 ' ','S','S','L',' ','3','.','0',0 };
69#endif
70#define SSL3SP_NAME WINELIB_NAME_AW(SSL3SP_NAME_)
71
72#define TLS1SP_NAME_A "Microsoft TLS 1.0"
73#if defined(__GNUC__)
74#define TLS1SP_NAME_W (const WCHAR []){ 'M','i','c','r','o','s','o','f','t',\
75 ' ','T','L','S',' ','1','.','0',0 }
76#elif defined(_MSC_VER)
77#define TLS1SP_NAME_W L"Microsoft TLS 1.0"
78#else
79static const WCHAR TLS1SP_NAME_W[] = { 'M','i','c','r','o','s','o','f','t',
80 ' ','T','L','S',' ','1','.','0',0 };
81#endif
82#define TLS1SP_NAME WINELIB_NAME_AW(TLS1SP_NAME_)
83
84#define PCT1SP_NAME_A "Microsoft PCT 1.0"
85#if defined(__GNUC__)
86#define PCT1SP_NAME_W (const WCHAR []){ 'M','i','c','r','o','s','o','f','t',\
87 ' ','P','C','T',' ','1','.','0',0 }
88#elif defined(_MSC_VER)
89#define PCT1SP_NAME_W L"Microsoft PCT 1.0"
90#else
91static const WCHAR PCT1SP_NAME_W[] = { 'M','i','c','r','o','s','o','f','t',
92 ' ','P','C','T',' ','1','.','0',0 };
93#endif
94#define PCT1SP_NAME WINELIB_NAME_AW(PCT1SP_NAME_)
95
96#define SCHANNEL_NAME_A "Schannel"
97#if defined(__GNUC__)
98#define SCHANNEL_NAME_W (const WCHAR []){ 'S','c','h','a','n','n','e','l',0 }
99#elif defined(_MSC_VER)
100#define SCHANNEL_NAME_W L"Schannel"
101#else
102static const WCHAR SCHANNEL_NAME_W[] = { 'S','c','h','a','n','n','e','l',0 };
103#endif
104#define SCHANNEL_NAME WINELIB_NAME_AW(SCHANNEL_NAME_)
105
106#define SCH_CRED_V1 1
107#define SCH_CRED_V2 2
108#define SCH_CRED_VERSION 2
109#define SCH_CRED_V3 3
110#define SCHANNEL_CRED_VERSION 4
111
112#define SCHANNEL_RENEGOTIATE 0
113#define SCHANNEL_SHUTDOWN 1
114#define SCHANNEL_ALERT 2
115#define SCHANNEL_SESSION 3
116
117#define SP_PROT_ALL 0xffffffff
118#define SP_PROT_UNI_CLIENT 0x80000000
119#define SP_PROT_UNI_SERVER 0x40000000
120#define SP_PROT_TLS1_2_CLIENT 0x00000800
121#define SP_PROT_TLS1_2_SERVER 0x00000400
122#define SP_PROT_TLS1_1_CLIENT 0x00000200
123#define SP_PROT_TLS1_1_SERVER 0x00000100
124#define SP_PROT_TLS1_0_CLIENT SP_PROT_TLS1_CLIENT
125#define SP_PROT_TLS1_0_SERVER SP_PROT_TLS1_SERVER
126#define SP_PROT_TLS1_CLIENT 0x00000080
127#define SP_PROT_TLS1_SERVER 0x00000040
128#define SP_PROT_SSL3_CLIENT 0x00000020
129#define SP_PROT_SSL3_SERVER 0x00000010
130#define SP_PROT_SSL2_CLIENT 0x00000008
131#define SP_PROT_SSL2_SERVER 0x00000004
132#define SP_PROT_PCT1_CLIENT 0x00000002
133#define SP_PROT_PCT1_SERVER 0x00000001
134#define SP_PROT_NONE 0x00000000
135
136#define SP_PROT_UNI (SP_PROT_UNI_CLIENT | SP_PROT_UNI_SERVER)
137#define SP_PROT_TLS1_2 (SP_PROT_TLS1_2_CLIENT | SP_PROT_TLS1_2_SERVER)
138#define SP_PROT_TLS1_1 (SP_PROT_TLS1_1_CLIENT | SP_PROT_TLS1_1_SERVER)
139#define SP_PROT_TLS1_0 (SP_PROT_TLS1_0_CLIENT | SP_PROT_TLS1_0_SERVER)
140#define SP_PROT_TLS1 (SP_PROT_TLS1_CLIENT | SP_PROT_TLS1_SERVER)
141#define SP_PROT_SSL3 (SP_PROT_SSL3_CLIENT | SP_PROT_SSL3_SERVER)
142#define SP_PROT_SSL2 (SP_PROT_SSL2_CLIENT | SP_PROT_SSL2_SERVER)
143#define SP_PROT_PCT1 (SP_PROT_PCT1_CLIENT | SP_PROT_PCT1_SERVER)
144
145#define SP_PROT_SSL3TLS1_CLIENTS (SP_PROT_SSL3_CLIENT | SP_PROT_TLS1_CLIENT)
146#define SP_PROT_SSL3TLS1_SERVERS (SP_PROT_SSL3_SERVER | SP_PROT_TLS1_SERVER)
147#define SP_PROT_SSL3TLS1_X_CLIENTS (SP_PROT_SSL3_CLIENT | SP_PROT_TLS1_X_CLIENT)
148#define SP_PROT_SSL3TLS1_X_SERVERS (SP_PROT_SSL3_SERVER | SP_PROT_TLS1_X_SERVER)
149#define SP_PROT_TLS1_X_CLIENT (SP_PROT_TLS1_0_CLIENT | SP_PROT_TLS1_1_CLIENT | SP_PROT_TLS1_2_CLIENT)
150#define SP_PROT_TLS1_X_SERVER (SP_PROT_TLS1_0_SERVER | SP_PROT_TLS1_1_SERVER | SP_PROT_TLS1_2_SERVER)
151#define SP_PROT_TLS1_1PLUS_CLIENT (SP_PROT_TLS1_1_CLIENT | SP_PROT_TLS1_2_CLIENT)
152#define SP_PROT_TLS1_1PLUS_SERVER (SP_PROT_TLS1_1_SERVER | SP_PROT_TLS1_2_SERVER)
153#define SP_PROT_CLIENTS (SP_PROT_PCT1_CLIENT | SP_PROT_SSL2_CLIENT | SP_PROT_SSL3_CLIENT \
154 | SP_PROT_TLS1_CLIENT | SP_PROT_UNI_CLIENT)
155#define SP_PROT_SERVERS (SP_PROT_PCT1_SERVER | SP_PROT_SSL2_SERVER | SP_PROT_SSL3_SERVER \
156 | SP_PROT_TLS1_SERVER | SP_PROT_UNI_SERVER)
157#define SP_PROT_X_CLIENTS (SP_PROT_CLIENTS | SP_PROT_TLS1_X_CLIENT)
158#define SP_PROT_X_SERVERS (SP_PROT_SERVERS | SP_PROT_TLS1_X_SERVER)
159
160#define SP_PROT_SSL3TLS1 (SP_PROT_SSL3 | SP_PROT_TLS1)
161#define SP_PROT_SSL3TLS1_X (SP_PROT_SSL3 | SP_PROT_TLS1_X)
162#define SP_PROT_TLS1_X (SP_PROT_TLS1_X_CLIENT | SP_PROT_TLS1_X_SERVER)
163#define SP_PROT_TLS1_1PLUS (SP_PROT_TLS1_1PLUS_CLIENT | SP_PROT_TLS1_1PLUS_SERVER)
164
165#define SCH_CRED_NO_SYSTEM_MAPPER 2
166#define SCH_CRED_NO_SERVERNAME_CHECK 4
167#define SCH_CRED_MANUAL_CRED_VALIDATION 8
168#define SCH_CRED_NO_DEFAULT_CREDS 16
169#define SCH_CRED_AUTO_CRED_VALIDATION 32
170#define SCH_CRED_USE_DEFAULT_CREDS 64
171#define SCH_CRED_REVOCATION_CHECK_CHAIN_END_CERT 256
172#define SCH_CRED_REVOCATION_CHECK_CHAIN 512
173#define SCH_CRED_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT 1024
174#define SCH_CRED_IGNORE_NO_REVOCATION_CHECK 2048
175#define SCH_CRED_IGNORE_REVOCATION_OFFLINE 4096
176
177#define SECPKG_ATTR_ISSUER_LIST 0x50
178#define SECPKG_ATTR_REMOTE_CRED 0x51
179#define SECPKG_ATTR_LOCAL_CRED 0x52
180#define SECPKG_ATTR_REMOTE_CERT_CONTEXT 0x53
181#define SECPKG_ATTR_LOCAL_CERT_CONTEXT 0x54
182#define SECPKG_ATTR_ROOT_STORE 0x55
183#define SECPKG_ATTR_SUPPORTED_ALGS 0x56
184#define SECPKG_ATTR_CIPHER_STRENGTHS 0x57
185#define SECPKG_ATTR_SUPPORTED_PROTOCOLS 0x58
186#define SECPKG_ATTR_ISSUER_LIST_EX 0x59
187#define SECPKG_ATTR_CONNECTION_INFO 0x5a
188#define SECPKG_ATTR_EAP_KEY_BLOCK 0x5b
189#define SECPKG_ATTR_MAPPED_CRED_ATTR 0x5c
190#define SECPKG_ATTR_SESSION_INFO 0x5d
191#define SECPKG_ATTR_APP_DATA 0x5e
192
193#define UNISP_RPC_ID 14
194
195struct _HMAPPER;
196
197typedef struct _SCHANNEL_CRED
198{
199 DWORD dwVersion;
200 DWORD cCreds;
201 PCCERT_CONTEXT *paCred;
202 HCERTSTORE hRootStore;
203 DWORD cMappers;
204 struct _HMAPPER **aphMappers;
205 DWORD cSupportedAlgs;
206 ALG_ID *palgSupportedAlgs;
207 DWORD grbitEnabledProtocols;
208 DWORD dwMinimumCipherStrength;
209 DWORD dwMaximumCipherStrength;
210 DWORD dwSessionLifespan;
211 DWORD dwFlags;
212 DWORD dwCredFormat;
213} SCHANNEL_CRED, *PSCHANNEL_CRED;
214
215typedef struct _SecPkgCred_SupportedAlgs
216{
217 DWORD cSupportedAlgs;
218 ALG_ID *palgSupportedAlgs;
219} SecPkgCred_SupportedAlgs, *PSecPkgCred_SupportedAlgs;
220
221typedef struct _SecPkgCred_CipherStrengths
222{
223 DWORD dwMinimumCipherStrength;
224 DWORD dwMaximumCipherStrength;
225} SecPkgCred_CipherStrengths, *PSecPkgCred_CipherStrengths;
226
227typedef struct _SecPkgCred_SupportedProtocols
228{
229 DWORD grbitProtocol;
230} SecPkgCred_SupportedProtocols, *PSecPkgCred_SupportedProtocols;
231
232typedef struct _SecPkgContext_IssuerListInfoEx
233{
234 PCERT_NAME_BLOB aIssuers;
235 DWORD cIssuers;
236} SecPkgContext_IssuerListInfoEx, *PSecPkgContext_IssuerListInfoEx;
237
238typedef struct _SecPkgContext_ConnectionInfo
239{
240 DWORD dwProtocol;
241 ALG_ID aiCipher;
242 DWORD dwCipherStrength;
243 ALG_ID aiHash;
244 DWORD dwHashStrength;
245 ALG_ID aiExch;
246 DWORD dwExchStrength;
247} SecPkgContext_ConnectionInfo, *PSecPkgContext_ConnectionInfo;
248
249#endif /* __WINE_SCHANNEL_H__ */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette