1/**
2 * Windows API header module
3 *
4 * Translated from MinGW Windows headers
5 *
6 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
7 * Source: $(DRUNTIMESRC core/sys/windows/_lmaudit.d)
8 */
9// COMMENT: This file may be deprecated.
10module core.sys.windows.lmaudit;
11version (Windows):
12@system:
13
14import core.sys.windows.lmcons, core.sys.windows.windef;
15
16enum LOGFLAGS_FORWARD  = 0;
17enum LOGFLAGS_BACKWARD = 1;
18enum LOGFLAGS_SEEK     = 2;
19
20enum ACTION_LOCKOUT     = 0;
21enum ACTION_ADMINUNLOCK = 1;
22
23enum AE_GUEST=0;
24enum AE_USER=1;
25enum AE_ADMIN=2;
26enum AE_NORMAL=0;
27enum AE_USERLIMIT=0;
28enum AE_GENERAL=0;
29enum AE_ERROR=1;
30enum AE_SESSDIS=1;
31enum AE_BADPW=1;
32enum AE_AUTODIS=2;
33enum AE_UNSHARE=2;
34enum AE_ADMINPRIVREQD=2;
35enum AE_ADMINDIS=3;
36enum AE_NOACCESSPERM=3;
37enum AE_ACCRESTRICT=4;
38enum AE_NORMAL_CLOSE=0;
39enum AE_SES_CLOSE=1;
40enum AE_ADMIN_CLOSE=2;
41enum AE_LIM_UNKNOWN=0;
42enum AE_LIM_LOGONHOURS=1;
43enum AE_LIM_EXPIRED=2;
44enum AE_LIM_INVAL_WKSTA=3;
45enum AE_LIM_DISABLED=4;
46enum AE_LIM_DELETED=5;
47enum AE_MOD=0;
48enum AE_DELETE=1;
49enum AE_ADD=2;
50
51enum AE_UAS_USER   = 0;
52enum AE_UAS_GROUP  = 1;
53enum AE_UAS_MODALS = 2;
54
55enum SVAUD_SERVICE       = 1;
56enum SVAUD_GOODSESSLOGON = 6;
57enum SVAUD_BADSESSLOGON  = 24;
58enum SVAUD_SESSLOGON     = SVAUD_GOODSESSLOGON|SVAUD_BADSESSLOGON;
59enum SVAUD_GOODNETLOGON  = 96;
60enum SVAUD_BADNETLOGON   = 384;
61enum SVAUD_NETLOGON      = SVAUD_GOODNETLOGON|SVAUD_BADNETLOGON;
62enum SVAUD_LOGON         = SVAUD_NETLOGON|SVAUD_SESSLOGON;
63enum SVAUD_GOODUSE       = 0x600;
64enum SVAUD_BADUSE        = 0x1800;
65enum SVAUD_USE           = SVAUD_GOODUSE|SVAUD_BADUSE;
66enum SVAUD_USERLIST      = 8192;
67enum SVAUD_PERMISSIONS   = 16384;
68enum SVAUD_RESOURCE      = 32768;
69enum SVAUD_LOGONLIM      = 65536;
70
71enum AA_AUDIT_ALL=1;
72enum AA_A_OWNER=4;
73enum AA_CLOSE=8;
74enum AA_S_OPEN=16;
75enum AA_S_WRITE=32;
76enum AA_S_CREATE=32;
77enum AA_S_DELETE=64;
78enum AA_S_ACL=128;
79enum AA_S_ALL=253;
80enum AA_F_OPEN=256;
81enum AA_F_WRITE=512;
82enum AA_F_CREATE=512;
83enum AA_F_DELETE=1024;
84enum AA_F_ACL=2048;
85enum AA_F_ALL = AA_F_OPEN|AA_F_WRITE|AA_F_DELETE|AA_F_ACL;
86enum AA_A_OPEN=2048;
87enum AA_A_WRITE=4096;
88enum AA_A_CREATE=8192;
89enum AA_A_DELETE=16384;
90enum AA_A_ACL=32768;
91enum AA_A_ALL = AA_F_OPEN|AA_F_WRITE|AA_F_DELETE|AA_F_ACL;
92
93struct AUDIT_ENTRY{
94    DWORD ae_len;
95    DWORD ae_reserved;
96    DWORD ae_time;
97    DWORD ae_type;
98    DWORD ae_data_offset;
99    DWORD ae_data_size;
100}
101alias AUDIT_ENTRY* PAUDIT_ENTRY, LPAUDIT_ENTRY;
102
103struct HLOG{
104    DWORD time;
105    DWORD last_flags;
106    DWORD offset;
107    DWORD rec_offset;
108}
109alias HLOG* PHLOG, LPHLOG;
110
111struct AE_SRVSTATUS{
112    DWORD ae_sv_status;
113}
114alias AE_SRVSTATUS* PAE_SRVSTATUS, LPAE_SRVSTATUS;
115
116struct AE_SESSLOGON{
117    DWORD ae_so_compname;
118    DWORD ae_so_username;
119    DWORD ae_so_privilege;
120}
121alias AE_SESSLOGON* PAE_SESSLOGON, LPAE_SESSLOGON;
122
123struct AE_SESSLOGOFF{
124    DWORD ae_sf_compname;
125    DWORD ae_sf_username;
126    DWORD ae_sf_reason;
127}
128alias AE_SESSLOGOFF* PAE_SESSLOGOFF, LPAE_SESSLOGOFF;
129
130struct AE_SESSPWERR{
131    DWORD ae_sp_compname;
132    DWORD ae_sp_username;
133}
134alias AE_SESSPWERR* PAE_SESSPWERR, LPAE_SESSPWERR;
135
136struct AE_CONNSTART{
137    DWORD ae_ct_compname;
138    DWORD ae_ct_username;
139    DWORD ae_ct_netname;
140    DWORD ae_ct_connid;
141}
142alias AE_CONNSTART* PAE_CONNSTART, LPAE_CONNSTART;
143
144struct AE_CONNSTOP{
145    DWORD ae_cp_compname;
146    DWORD ae_cp_username;
147    DWORD ae_cp_netname;
148    DWORD ae_cp_connid;
149    DWORD ae_cp_reason;
150}
151alias AE_CONNSTOP* PAE_CONNSTOP, LPAE_CONNSTOP;
152
153struct AE_CONNREJ{
154    DWORD ae_cr_compname;
155    DWORD ae_cr_username;
156    DWORD ae_cr_netname;
157    DWORD ae_cr_reason;
158}
159alias AE_CONNREJ* PAE_CONNREJ, LPAE_CONNREJ;
160
161struct AE_RESACCESS{
162    DWORD ae_ra_compname;
163    DWORD ae_ra_username;
164    DWORD ae_ra_resname;
165    DWORD ae_ra_operation;
166    DWORD ae_ra_returncode;
167    DWORD ae_ra_restype;
168    DWORD ae_ra_fileid;
169}
170alias AE_RESACCESS* PAE_RESACCESS, LPAE_RESACCESS;
171
172struct AE_RESACCESSREJ{
173    DWORD ae_rr_compname;
174    DWORD ae_rr_username;
175    DWORD ae_rr_resname;
176    DWORD ae_rr_operation;
177}
178alias AE_RESACCESSREJ* PAE_RESACCESSREJ, LPAE_RESACCESSREJ;
179
180struct AE_CLOSEFILE{
181    DWORD ae_cf_compname;
182    DWORD ae_cf_username;
183    DWORD ae_cf_resname;
184    DWORD ae_cf_fileid;
185    DWORD ae_cf_duration;
186    DWORD ae_cf_reason;
187}
188alias AE_CLOSEFILE* PAE_CLOSEFILE, LPAE_CLOSEFILE;
189
190struct AE_SERVICESTAT{
191    DWORD ae_ss_compname;
192    DWORD ae_ss_username;
193    DWORD ae_ss_svcname;
194    DWORD ae_ss_status;
195    DWORD ae_ss_code;
196    DWORD ae_ss_text;
197    DWORD ae_ss_returnval;
198}
199alias AE_SERVICESTAT* PAE_SERVICESTAT, LPAE_SERVICESTAT;
200
201struct AE_ACLMOD{
202    DWORD ae_am_compname;
203    DWORD ae_am_username;
204    DWORD ae_am_resname;
205    DWORD ae_am_action;
206    DWORD ae_am_datalen;
207}
208alias AE_ACLMOD* PAE_ACLMOD, LPAE_ACLMOD;
209
210struct AE_UASMOD{
211    DWORD ae_um_compname;
212    DWORD ae_um_username;
213    DWORD ae_um_resname;
214    DWORD ae_um_rectype;
215    DWORD ae_um_action;
216    DWORD ae_um_datalen;
217}
218alias AE_UASMOD* PAE_UASMOD, LPAE_UASMOD;
219
220struct AE_NETLOGON{
221    DWORD ae_no_compname;
222    DWORD ae_no_username;
223    DWORD ae_no_privilege;
224    DWORD ae_no_authflags;
225}
226alias AE_NETLOGON* PAE_NETLOGON, LPAE_NETLOGON;
227
228struct AE_NETLOGOFF{
229    DWORD ae_nf_compname;
230    DWORD ae_nf_username;
231    DWORD ae_nf_reserved1;
232    DWORD ae_nf_reserved2;
233}
234alias AE_NETLOGOFF* PAE_NETLOGOFF, LPAE_NETLOGOFF;
235
236struct AE_ACCLIM{
237    DWORD ae_al_compname;
238    DWORD ae_al_username;
239    DWORD ae_al_resname;
240    DWORD ae_al_limit;
241}
242alias AE_ACCLIM* PAE_ACCLIM, LPAE_ACCLIM;
243
244struct AE_LOCKOUT{
245    DWORD ae_lk_compname;
246    DWORD ae_lk_username;
247    DWORD ae_lk_action;
248    DWORD ae_lk_bad_pw_count;
249}
250alias AE_LOCKOUT* PAE_LOCKOUT, LPAE_LOCKOUT;
251
252struct AE_GENERIC{
253    DWORD ae_ge_msgfile;
254    DWORD ae_ge_msgnum;
255    DWORD ae_ge_params;
256    DWORD ae_ge_param1;
257    DWORD ae_ge_param2;
258    DWORD ae_ge_param3;
259    DWORD ae_ge_param4;
260    DWORD ae_ge_param5;
261    DWORD ae_ge_param6;
262    DWORD ae_ge_param7;
263    DWORD ae_ge_param8;
264    DWORD ae_ge_param9;
265}
266alias AE_GENERIC* PAE_GENERIC, LPAE_GENERIC;
267
268extern (Windows) {
269deprecated {
270NET_API_STATUS NetAuditClear(LPCWSTR,LPCWSTR,LPCWSTR);
271NET_API_STATUS NetAuditRead(LPTSTR,LPTSTR,LPHLOG,DWORD,PDWORD,DWORD,DWORD,PBYTE*,DWORD,PDWORD,PDWORD);
272NET_API_STATUS NetAuditWrite(DWORD,PBYTE,DWORD,LPTSTR,PBYTE);
273}
274}
275
276/+
277/* MinGW: These conflict with struct typedefs, why? */
278enum AE_SRVSTATUS=0;
279enum AE_SESSLOGON=1;
280enum AE_SESSLOGOFF=2;
281enum AE_SESSPWERR=3;
282enum AE_CONNSTART=4;
283enum AE_CONNSTOP=5;
284enum AE_CONNREJ=6;
285enum AE_RESACCESS=7;
286enum AE_RESACCESSREJ=8;
287enum AE_CLOSEFILE=9;
288enum AE_SERVICESTAT=11;
289enum AE_ACLMOD=12;
290enum AE_UASMOD=13;
291enum AE_NETLOGON=14;
292enum AE_NETLOGOFF=15;
293enum AE_NETLOGDENIED=16;
294enum AE_ACCLIMITEXCD=17;
295enum AE_RESACCESS2=18;
296enum AE_ACLMODFAIL=19;
297enum AE_LOCKOUT=20;
298enum AE_GENERIC_TYPE=21;
299enum AE_SRVSTART=0;
300enum AE_SRVPAUSED=1;
301enum AE_SRVCONT=2;
302enum AE_SRVSTOP=3;
303+/
304