OSDN Git Service

720636a9ac3ae6e5d1467062a39e7390747545aa
[mingw/mingw-org-wsl.git] / include / secext.h
1 /**
2  * @file secext.h
3  * @copy 2012 MinGW.org project
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  * 
12  * The above copyright notice and this permission notice (including the next
13  * paragraph) shall be included in all copies or substantial portions of the
14  * Software.
15  * 
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  * DEALINGS IN THE SOFTWARE.
23  */
24 #ifndef _SECEXT_H
25 #define _SECEXT_H
26 #pragma GCC system_header
27
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31
32 #ifndef RC_INVOKED
33 #if (_WIN32_WINNT >= 0x0500)
34 typedef enum 
35 {
36   NameUnknown = 0, 
37   NameFullyQualifiedDN = 1, 
38   NameSamCompatible = 2, 
39   NameDisplay = 3, 
40   NameUniqueId = 6, 
41   NameCanonical = 7, 
42   NameUserPrincipal = 8, 
43   NameCanonicalEx = 9, 
44   NameServicePrincipal = 10, 
45   NameDnsDomain = 12
46 } EXTENDED_NAME_FORMAT, *PEXTENDED_NAME_FORMAT;
47
48 BOOLEAN WINAPI GetComputerObjectNameA(EXTENDED_NAME_FORMAT,LPSTR,PULONG);
49 BOOLEAN WINAPI GetComputerObjectNameW(EXTENDED_NAME_FORMAT,LPWSTR,PULONG);
50 BOOLEAN WINAPI GetUserNameExA(EXTENDED_NAME_FORMAT,LPSTR,PULONG);
51 BOOLEAN WINAPI GetUserNameExW(EXTENDED_NAME_FORMAT,LPWSTR,PULONG);
52 BOOLEAN WINAPI TranslateNameA(LPCSTR,EXTENDED_NAME_FORMAT,EXTENDED_NAME_FORMAT,LPSTR,PULONG);
53 BOOLEAN WINAPI TranslateNameW(LPCWSTR,EXTENDED_NAME_FORMAT,EXTENDED_NAME_FORMAT,LPWSTR,PULONG);
54
55 #ifdef UNICODE
56 #define GetComputerObjectName GetComputerObjectNameW
57 #define GetUserNameEx GetUserNameExW
58 #define TranslateName TranslateNameW
59 #else
60 #define GetComputerObjectName GetComputerObjectNameA
61 #define GetUserNameEx GetUserNameExA
62 #define TranslateName TranslateNameA
63 #endif
64
65 #endif /* ! RC_INVOKED */
66 #endif /* _WIN32_WINNT >= 0x0500 */
67
68 #ifdef __cplusplus
69 }
70 #endif
71
72 #endif /* ! _SECEXT_H */