1 /***********************************************************************\ 2 * lmaudit.d * 3 * * 4 * Windows API header module * 5 * * 6 * Translated from MinGW Windows headers * 7 * * 8 * Placed into public domain * 9 \***********************************************************************/ 10 // COMMENT: This file may be deprecated. 11 module win32.lmaudit; 12 version(Windows): 13 14 private import win32.lmcons, win32.windef; 15 16 const LOGFLAGS_FORWARD = 0; 17 const LOGFLAGS_BACKWARD = 1; 18 const LOGFLAGS_SEEK = 2; 19 20 const ACTION_LOCKOUT = 0; 21 const ACTION_ADMINUNLOCK = 1; 22 23 const AE_GUEST=0; 24 const AE_USER=1; 25 const AE_ADMIN=2; 26 const AE_NORMAL=0; 27 const AE_USERLIMIT=0; 28 const AE_GENERAL=0; 29 const AE_ERROR=1; 30 const AE_SESSDIS=1; 31 const AE_BADPW=1; 32 const AE_AUTODIS=2; 33 const AE_UNSHARE=2; 34 const AE_ADMINPRIVREQD=2; 35 const AE_ADMINDIS=3; 36 const AE_NOACCESSPERM=3; 37 const AE_ACCRESTRICT=4; 38 const AE_NORMAL_CLOSE=0; 39 const AE_SES_CLOSE=1; 40 const AE_ADMIN_CLOSE=2; 41 const AE_LIM_UNKNOWN=0; 42 const AE_LIM_LOGONHOURS=1; 43 const AE_LIM_EXPIRED=2; 44 const AE_LIM_INVAL_WKSTA=3; 45 const AE_LIM_DISABLED=4; 46 const AE_LIM_DELETED=5; 47 const AE_MOD=0; 48 const AE_DELETE=1; 49 const AE_ADD=2; 50 51 const AE_UAS_USER = 0; 52 const AE_UAS_GROUP = 1; 53 const AE_UAS_MODALS = 2; 54 55 const SVAUD_SERVICE = 1; 56 const SVAUD_GOODSESSLOGON = 6; 57 const SVAUD_BADSESSLOGON = 24; 58 const SVAUD_SESSLOGON = SVAUD_GOODSESSLOGON|SVAUD_BADSESSLOGON; 59 const SVAUD_GOODNETLOGON = 96; 60 const SVAUD_BADNETLOGON = 384; 61 const SVAUD_NETLOGON = SVAUD_GOODNETLOGON|SVAUD_BADNETLOGON; 62 const SVAUD_LOGON = SVAUD_NETLOGON|SVAUD_SESSLOGON; 63 const SVAUD_GOODUSE = 0x600; 64 const SVAUD_BADUSE = 0x1800; 65 const SVAUD_USE = SVAUD_GOODUSE|SVAUD_BADUSE; 66 const SVAUD_USERLIST = 8192; 67 const SVAUD_PERMISSIONS = 16384; 68 const SVAUD_RESOURCE = 32768; 69 const SVAUD_LOGONLIM = 65536; 70 71 const AA_AUDIT_ALL=1; 72 const AA_A_OWNER=4; 73 const AA_CLOSE=8; 74 const AA_S_OPEN=16; 75 const AA_S_WRITE=32; 76 const AA_S_CREATE=32; 77 const AA_S_DELETE=64; 78 const AA_S_ACL=128; 79 const AA_S_ALL=253; 80 const AA_F_OPEN=256; 81 const AA_F_WRITE=512; 82 const AA_F_CREATE=512; 83 const AA_F_DELETE=1024; 84 const AA_F_ACL=2048; 85 const AA_F_ALL = AA_F_OPEN|AA_F_WRITE|AA_F_DELETE|AA_F_ACL; 86 const AA_A_OPEN=2048; 87 const AA_A_WRITE=4096; 88 const AA_A_CREATE=8192; 89 const AA_A_DELETE=16384; 90 const AA_A_ACL=32768; 91 const AA_A_ALL = AA_F_OPEN|AA_F_WRITE|AA_F_DELETE|AA_F_ACL; 92 93 struct 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 } 101 alias AUDIT_ENTRY* PAUDIT_ENTRY, LPAUDIT_ENTRY; 102 103 struct HLOG{ 104 DWORD time; 105 DWORD last_flags; 106 DWORD offset; 107 DWORD rec_offset; 108 } 109 alias HLOG* PHLOG, LPHLOG; 110 111 struct AE_SRVSTATUS{ 112 DWORD ae_sv_status; 113 } 114 alias AE_SRVSTATUS* PAE_SRVSTATUS, LPAE_SRVSTATUS; 115 116 struct AE_SESSLOGON{ 117 DWORD ae_so_compname; 118 DWORD ae_so_username; 119 DWORD ae_so_privilege; 120 } 121 alias AE_SESSLOGON* PAE_SESSLOGON, LPAE_SESSLOGON; 122 123 struct AE_SESSLOGOFF{ 124 DWORD ae_sf_compname; 125 DWORD ae_sf_username; 126 DWORD ae_sf_reason; 127 } 128 alias AE_SESSLOGOFF* PAE_SESSLOGOFF, LPAE_SESSLOGOFF; 129 130 struct AE_SESSPWERR{ 131 DWORD ae_sp_compname; 132 DWORD ae_sp_username; 133 } 134 alias AE_SESSPWERR* PAE_SESSPWERR, LPAE_SESSPWERR; 135 136 struct AE_CONNSTART{ 137 DWORD ae_ct_compname; 138 DWORD ae_ct_username; 139 DWORD ae_ct_netname; 140 DWORD ae_ct_connid; 141 } 142 alias AE_CONNSTART* PAE_CONNSTART, LPAE_CONNSTART; 143 144 struct 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 } 151 alias AE_CONNSTOP* PAE_CONNSTOP, LPAE_CONNSTOP; 152 153 struct AE_CONNREJ{ 154 DWORD ae_cr_compname; 155 DWORD ae_cr_username; 156 DWORD ae_cr_netname; 157 DWORD ae_cr_reason; 158 } 159 alias AE_CONNREJ* PAE_CONNREJ, LPAE_CONNREJ; 160 161 struct 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 } 170 alias AE_RESACCESS* PAE_RESACCESS, LPAE_RESACCESS; 171 172 struct AE_RESACCESSREJ{ 173 DWORD ae_rr_compname; 174 DWORD ae_rr_username; 175 DWORD ae_rr_resname; 176 DWORD ae_rr_operation; 177 } 178 alias AE_RESACCESSREJ* PAE_RESACCESSREJ, LPAE_RESACCESSREJ; 179 180 struct 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 } 188 alias AE_CLOSEFILE* PAE_CLOSEFILE, LPAE_CLOSEFILE; 189 190 struct 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 } 199 alias AE_SERVICESTAT* PAE_SERVICESTAT, LPAE_SERVICESTAT; 200 201 struct 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 } 208 alias AE_ACLMOD* PAE_ACLMOD, LPAE_ACLMOD; 209 210 struct 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 } 218 alias AE_UASMOD* PAE_UASMOD, LPAE_UASMOD; 219 220 struct AE_NETLOGON{ 221 DWORD ae_no_compname; 222 DWORD ae_no_username; 223 DWORD ae_no_privilege; 224 DWORD ae_no_authflags; 225 } 226 alias AE_NETLOGON* PAE_NETLOGON, LPAE_NETLOGON; 227 228 struct AE_NETLOGOFF{ 229 DWORD ae_nf_compname; 230 DWORD ae_nf_username; 231 DWORD ae_nf_reserved1; 232 DWORD ae_nf_reserved2; 233 } 234 alias AE_NETLOGOFF* PAE_NETLOGOFF, LPAE_NETLOGOFF; 235 236 struct AE_ACCLIM{ 237 DWORD ae_al_compname; 238 DWORD ae_al_username; 239 DWORD ae_al_resname; 240 DWORD ae_al_limit; 241 } 242 alias AE_ACCLIM* PAE_ACCLIM, LPAE_ACCLIM; 243 244 struct 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 } 250 alias AE_LOCKOUT* PAE_LOCKOUT, LPAE_LOCKOUT; 251 252 struct 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 } 266 alias AE_GENERIC* PAE_GENERIC, LPAE_GENERIC; 267 268 extern (Windows) { 269 deprecated { 270 NET_API_STATUS NetAuditClear(LPCWSTR,LPCWSTR,LPCWSTR); 271 NET_API_STATUS NetAuditRead(LPTSTR,LPTSTR,LPHLOG,DWORD,PDWORD,DWORD,DWORD,PBYTE*,DWORD,PDWORD,PDWORD); 272 NET_API_STATUS NetAuditWrite(DWORD,PBYTE,DWORD,LPTSTR,PBYTE); 273 } 274 } 275 276 /+ 277 /* MinGW: These conflict with struct typedefs, why? */ 278 const AE_SRVSTATUS=0; 279 const AE_SESSLOGON=1; 280 const AE_SESSLOGOFF=2; 281 const AE_SESSPWERR=3; 282 const AE_CONNSTART=4; 283 const AE_CONNSTOP=5; 284 const AE_CONNREJ=6; 285 const AE_RESACCESS=7; 286 const AE_RESACCESSREJ=8; 287 const AE_CLOSEFILE=9; 288 const AE_SERVICESTAT=11; 289 const AE_ACLMOD=12; 290 const AE_UASMOD=13; 291 const AE_NETLOGON=14; 292 const AE_NETLOGOFF=15; 293 const AE_NETLOGDENIED=16; 294 const AE_ACCLIMITEXCD=17; 295 const AE_RESACCESS2=18; 296 const AE_ACLMODFAIL=19; 297 const AE_LOCKOUT=20; 298 const AE_GENERIC_TYPE=21; 299 const AE_SRVSTART=0; 300 const AE_SRVPAUSED=1; 301 const AE_SRVCONT=2; 302 const AE_SRVSTOP=3; 303 +/