source: branches/gcc-kmk/include/win/ntdef.h@ 21717

Last change on this file since 21717 was 21717, checked in by dmik, 14 years ago

Use const char * for arguments accepting literal strings.

This is more correct and also clears GCC warnings.

File size: 1.8 KB
Line 
1#ifndef __WINE_NTDEF_H
2#define __WINE_NTDEF_H
3
4/* fixme: include basestd.h instead */
5#include "windef.h"
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11#define NTAPI __stdcall
12
13#ifndef IN
14#define IN
15#endif
16
17#ifndef OUT
18#define OUT
19#endif
20
21#ifndef OPTIONAL
22#define OPTIONAL
23#endif
24
25#ifndef VOID
26#define VOID void
27#endif
28
29typedef LONG NTSTATUS;
30typedef NTSTATUS *PNTSTATUS;
31
32typedef char *PSZ;
33typedef CONST char *PCSZ;
34
35typedef short CSHORT;
36typedef CSHORT *PCSHORT;
37
38/* NT lowlevel Strings (handled by Rtl* functions in NTDLL)
39 * If they are zero terminated, Length does not include the terminating 0.
40 */
41
42typedef struct _STRING {
43 USHORT Length;
44 USHORT MaximumLength;
45 PSTR Buffer;
46} STRING,*PSTRING,ANSI_STRING,*PANSI_STRING, OEM_STRING, *POEM_STRING;
47/* @@@PH 1999/06/08 OEM-String support is experimental */
48
49typedef struct _CSTRING {
50 USHORT Length;
51 USHORT MaximumLength;
52 PCSTR Buffer;
53} CSTRING,*PCSTRING;
54
55#ifndef __UNICODE_STRING_DEFINED__
56#define __UNICODE_STRING_DEFINED__
57typedef struct _UNICODE_STRING {
58 USHORT Length; /* bytes */
59 USHORT MaximumLength; /* bytes */
60 PWSTR Buffer;
61} UNICODE_STRING,*PUNICODE_STRING;
62#endif
63/*
64 Objects
65*/
66
67#define OBJ_INHERIT 0x00000002L
68#define OBJ_PERMANENT 0x00000010L
69#define OBJ_EXCLUSIVE 0x00000020L
70#define OBJ_CASE_INSENSITIVE 0x00000040L
71#define OBJ_OPENIF 0x00000080L
72#define OBJ_OPENLINK 0x00000100L
73#define OBJ_KERNEL_HANDLE 0x00000200L
74#define OBJ_VALID_ATTRIBUTES 0x000003F2L
75
76typedef struct _OBJECT_ATTRIBUTES
77{ ULONG Length;
78 HANDLE RootDirectory;
79 PUNICODE_STRING ObjectName;
80 ULONG Attributes;
81 PVOID SecurityDescriptor; /* type SECURITY_DESCRIPTOR */
82 PVOID SecurityQualityOfService; /* type SECURITY_QUALITY_OF_SERVICE */
83} OBJECT_ATTRIBUTES;
84
85typedef OBJECT_ATTRIBUTES *POBJECT_ATTRIBUTES;
86
87#ifdef __cplusplus
88}
89#endif
90
91#endif
Note: See TracBrowser for help on using the repository browser.