]> gitweb.factorcode.org Git - factor.git/blob - basis/windows/advapi32/advapi32.factor
Add some more win32 symbols
[factor.git] / basis / windows / advapi32 / advapi32.factor
1 USING: alien.c-types alien.syntax kernel math windows.types
2 windows.kernel32 math.bitwise classes.struct ;
3 IN: windows.advapi32
4
5 LIBRARY: advapi32
6
7 CONSTANT: PROV_RSA_FULL       1
8 CONSTANT: PROV_RSA_SIG        2
9 CONSTANT: PROV_DSS            3
10 CONSTANT: PROV_FORTEZZA       4
11 CONSTANT: PROV_MS_EXCHANGE    5
12 CONSTANT: PROV_SSL            6
13 CONSTANT: PROV_RSA_SCHANNEL  12
14 CONSTANT: PROV_DSS_DH        13
15 CONSTANT: PROV_EC_ECDSA_SIG  14
16 CONSTANT: PROV_EC_ECNRA_SIG  15
17 CONSTANT: PROV_EC_ECDSA_FULL 16
18 CONSTANT: PROV_EC_ECNRA_FULL 17
19 CONSTANT: PROV_DH_SCHANNEL   18
20 CONSTANT: PROV_SPYRUS_LYNKS  20
21 CONSTANT: PROV_RNG           21
22 CONSTANT: PROV_INTEL_SEC     22
23 CONSTANT: PROV_REPLACE_OWF   23
24 CONSTANT: PROV_RSA_AES       24
25
26 CONSTANT: MS_DEF_DH_SCHANNEL_PROV "Microsoft DH Schannel Cryptographic Provider"
27
28 CONSTANT: MS_DEF_DSS_DH_PROV
29     "Microsoft Base DSS and Diffie-Hellman Cryptographic Provider"
30
31 CONSTANT: MS_DEF_DSS_PROV
32     "Microsoft Base DSS Cryptographic Provider"
33
34 CONSTANT: MS_DEF_PROV
35     "Microsoft Base Cryptographic Provider v1.0"
36
37 CONSTANT: MS_DEF_RSA_SCHANNEL_PROV
38     "Microsoft RSA Schannel Cryptographic Provider"
39
40 ! Unsupported (!)
41 CONSTANT: MS_DEF_RSA_SIG_PROV
42     "Microsoft RSA Signature Cryptographic Provider"
43
44 CONSTANT: MS_ENH_DSS_DH_PROV
45     "Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider"
46
47 CONSTANT: MS_ENH_RSA_AES_PROV
48     "Microsoft Enhanced RSA and AES Cryptographic Provider"
49
50 CONSTANT: MS_ENHANCED_PROV
51     "Microsoft Enhanced Cryptographic Provider v1.0"
52
53 CONSTANT: MS_SCARD_PROV
54     "Microsoft Base Smart Card Crypto Provider"
55
56 CONSTANT: MS_STRONG_PROV
57     "Microsoft Strong Cryptographic Provider"
58
59 CONSTANT: CRYPT_VERIFYCONTEXT  HEX: F0000000
60 CONSTANT: CRYPT_NEWKEYSET      HEX: 8
61 CONSTANT: CRYPT_DELETEKEYSET   HEX: 10
62 CONSTANT: CRYPT_MACHINE_KEYSET HEX: 20
63 CONSTANT: CRYPT_SILENT         HEX: 40
64
65 STRUCT: ACL
66     { AclRevision BYTE }
67     { Sbz1 BYTE }
68     { AclSize WORD }
69     { AceCount WORD }
70     { Sbz2 WORD } ;
71
72 TYPEDEF: ACL* PACL
73
74 CONSTANT: ACCESS_ALLOWED_ACE_TYPE 0
75 CONSTANT: ACCESS_DENIED_ACE_TYPE 1
76 CONSTANT: SYSTEM_AUDIT_ACE_TYPE 2
77 CONSTANT: SYSTEM_ALARM_ACE_TYPE 3
78
79 CONSTANT: OBJECT_INHERIT_ACE HEX: 1
80 CONSTANT: CONTAINER_INHERIT_ACE HEX: 2
81 CONSTANT: NO_PROPAGATE_INHERIT_ACE HEX: 4
82 CONSTANT: INHERIT_ONLY_ACE HEX: 8
83 CONSTANT: VALID_INHERIT_FLAGS HEX: f
84
85 STRUCT: ACE_HEADER
86     { AceType BYTE }
87     { AceFlags BYTE }
88     { AceSize WORD } ;
89
90 TYPEDEF: ACE_HEADER* PACE_HEADER
91
92 STRUCT: ACCESS_ALLOWED_ACE
93     { Header ACE_HEADER }
94     { Mask DWORD }
95     { SidStart DWORD } ;
96
97 TYPEDEF: ACCESS_ALLOWED_ACE* PACCESS_ALLOWED_ACE
98
99 STRUCT: ACCESS_DENIED_ACE
100     { Header ACE_HEADER }
101     { Mask DWORD }
102     { SidStart DWORD } ;
103 TYPEDEF: ACCESS_DENIED_ACE* PACCESS_DENIED_ACE
104
105
106 STRUCT: SYSTEM_AUDIT_ACE
107     { Header ACE_HEADER }
108     { Mask DWORD }
109     { SidStart DWORD } ;
110
111 TYPEDEF: SYSTEM_AUDIT_ACE* PSYSTEM_AUDIT_ACE
112
113 STRUCT: SYSTEM_ALARM_ACE
114     { Header ACE_HEADER }
115     { Mask DWORD }
116     { SidStart DWORD } ;
117
118 TYPEDEF: SYSTEM_ALARM_ACE* PSYSTEM_ALARM_ACE
119
120 STRUCT: ACCESS_ALLOWED_CALLBACK_ACE
121     { Header ACE_HEADER }
122     { Mask DWORD }
123     { SidStart DWORD } ;
124
125 TYPEDEF: ACCESS_ALLOWED_CALLBACK_ACE* PACCESS_ALLOWED_CALLBACK_ACE
126
127 STRUCT: SECURITY_DESCRIPTOR
128     { Revision UCHAR }
129     { Sbz1 UCHAR }
130     { Control WORD }
131     { Owner PVOID }
132     { Group PVOID }
133     { Sacl PACL }
134     { Dacl PACL } ;
135
136 TYPEDEF: SECURITY_DESCRIPTOR* PSECURITY_DESCRIPTOR
137
138 CONSTANT: SE_OWNER_DEFAULTED 1
139 CONSTANT: SE_GROUP_DEFAULTED 2
140 CONSTANT: SE_DACL_PRESENT 4
141 CONSTANT: SE_DACL_DEFAULTED 8
142 CONSTANT: SE_SACL_PRESENT 16
143 CONSTANT: SE_SACL_DEFAULTED 32
144 CONSTANT: SE_DACL_AUTO_INHERIT_REQ 256
145 CONSTANT: SE_SACL_AUTO_INHERIT_REQ 512
146 CONSTANT: SE_DACL_AUTO_INHERITED 1024
147 CONSTANT: SE_SACL_AUTO_INHERITED 2048
148 CONSTANT: SE_DACL_PROTECTED 4096
149 CONSTANT: SE_SACL_PROTECTED 8192
150 CONSTANT: SE_SELF_RELATIVE 32768
151
152 TYPEDEF: DWORD SECURITY_DESCRIPTOR_CONTROL
153 TYPEDEF: SECURITY_DESCRIPTOR_CONTROL* PSECURITY_DESCRIPTOR_CONTROL
154
155
156 ! typedef enum _TOKEN_INFORMATION_CLASS {
157 CONSTANT: TokenUser 1
158 CONSTANT: TokenGroups 2
159 CONSTANT: TokenPrivileges 3
160 CONSTANT: TokenOwner 4
161 CONSTANT: TokenPrimaryGroup 5
162 CONSTANT: TokenDefaultDacl 6
163 CONSTANT: TokenSource 7
164 CONSTANT: TokenType 8
165 CONSTANT: TokenImpersonationLevel 9
166 CONSTANT: TokenStatistics 10
167 CONSTANT: TokenRestrictedSids 11
168 CONSTANT: TokenSessionId 12
169 CONSTANT: TokenGroupsAndPrivileges 13
170 CONSTANT: TokenSessionReference 14
171 CONSTANT: TokenSandBoxInert 15
172 ! } TOKEN_INFORMATION_CLASS;
173
174 TYPEDEF: DWORD ACCESS_MODE
175 C-ENUM:
176     NOT_USED_ACCESS
177     GRANT_ACCESS
178     SET_ACCESS
179     DENY_ACCESS
180     REVOKE_ACCESS
181     SET_AUDIT_SUCCESS
182     SET_AUDIT_FAILURE ;
183
184 TYPEDEF: DWORD MULTIPLE_TRUSTEE_OPERATION
185 C-ENUM:
186     NO_MULTIPLE_TRUSTEE
187     TRUSTEE_IS_IMPERSONATE ;
188
189 TYPEDEF: DWORD TRUSTEE_FORM
190 C-ENUM:
191   TRUSTEE_IS_SID
192   TRUSTEE_IS_NAME
193   TRUSTEE_BAD_FORM
194   TRUSTEE_IS_OBJECTS_AND_SID
195   TRUSTEE_IS_OBJECTS_AND_NAME ;
196
197 TYPEDEF: DWORD TRUSTEE_TYPE
198 C-ENUM:
199     TRUSTEE_IS_UNKNOWN
200     TRUSTEE_IS_USER
201     TRUSTEE_IS_GROUP
202     TRUSTEE_IS_DOMAIN
203     TRUSTEE_IS_ALIAS
204     TRUSTEE_IS_WELL_KNOWN_GROUP
205     TRUSTEE_IS_DELETED
206     TRUSTEE_IS_INVALID
207     TRUSTEE_IS_COMPUTER ;
208
209 TYPEDEF: DWORD SE_OBJECT_TYPE
210 C-ENUM:
211     SE_UNKNOWN_OBJECT_TYPE
212     SE_FILE_OBJECT
213     SE_SERVICE
214     SE_PRINTER
215     SE_REGISTRY_KEY
216     SE_LMSHARE
217     SE_KERNEL_OBJECT
218     SE_WINDOW_OBJECT
219     SE_DS_OBJECT
220     SE_DS_OBJECT_ALL
221     SE_PROVIDER_DEFINED_OBJECT
222     SE_WMIGUID_OBJECT
223     SE_REGISTRY_WOW64_32KEY ;
224
225 STRUCT: TRUSTEE
226     { pMultipleTrustee TRUSTEE* }
227     { MultipleTrusteeOperation MULTIPLE_TRUSTEE_OPERATION }
228     { TrusteeForm TRUSTEE_FORM }
229     { TrusteeType TRUSTEE_TYPE }
230     { ptstrName LPTSTR } ;
231
232 TYPEDEF: TRUSTEE* PTRUSTEE
233
234 STRUCT: EXPLICIT_ACCESS
235     { grfAccessPermissions DWORD }
236     { grfAccessMode ACCESS_MODE }
237     { grfInheritance DWORD }
238     { Trustee TRUSTEE } ;
239
240 STRUCT: SID_IDENTIFIER_AUTHORITY
241     { Value { BYTE 6 } } ;
242
243 TYPEDEF: SID_IDENTIFIER_AUTHORITY* PSID_IDENTIFIER_AUTHORITY
244
245 CONSTANT: SECURITY_NULL_SID_AUTHORITY 0
246 CONSTANT: SECURITY_WORLD_SID_AUTHORITY    1
247 CONSTANT: SECURITY_LOCAL_SID_AUTHORITY    2
248 CONSTANT: SECURITY_CREATOR_SID_AUTHORITY  3
249 CONSTANT: SECURITY_NON_UNIQUE_AUTHORITY   4
250 CONSTANT: SECURITY_NT_AUTHORITY   5
251 CONSTANT: SECURITY_RESOURCE_MANAGER_AUTHORITY 6
252
253 CONSTANT: SECURITY_NULL_RID 0
254 CONSTANT: SECURITY_WORLD_RID 0
255 CONSTANT: SECURITY_LOCAL_RID 0
256 CONSTANT: SECURITY_CREATOR_OWNER_RID 0
257 CONSTANT: SECURITY_CREATOR_GROUP_RID 1
258 CONSTANT: SECURITY_CREATOR_OWNER_SERVER_RID 2
259 CONSTANT: SECURITY_CREATOR_GROUP_SERVER_RID 3
260 CONSTANT: SECURITY_DIALUP_RID 1
261 CONSTANT: SECURITY_NETWORK_RID 2
262 CONSTANT: SECURITY_BATCH_RID 3
263 CONSTANT: SECURITY_INTERACTIVE_RID 4
264 CONSTANT: SECURITY_SERVICE_RID 6
265 CONSTANT: SECURITY_ANONYMOUS_LOGON_RID 7
266 CONSTANT: SECURITY_PROXY_RID 8
267 CONSTANT: SECURITY_SERVER_LOGON_RID 9
268 CONSTANT: SECURITY_PRINCIPAL_SELF_RID 10
269 CONSTANT: SECURITY_AUTHENTICATED_USER_RID 11
270 CONSTANT: SECURITY_LOGON_IDS_RID 5
271 CONSTANT: SECURITY_LOGON_IDS_RID_COUNT 3
272 CONSTANT: SECURITY_LOCAL_SYSTEM_RID 18
273 CONSTANT: SECURITY_NT_NON_UNIQUE 21
274 CONSTANT: SECURITY_BUILTIN_DOMAIN_RID 32
275 CONSTANT: DOMAIN_USER_RID_ADMIN 500
276 CONSTANT: DOMAIN_USER_RID_GUEST 501
277 CONSTANT: DOMAIN_GROUP_RID_ADMINS 512
278 CONSTANT: DOMAIN_GROUP_RID_USERS 513
279 CONSTANT: DOMAIN_GROUP_RID_GUESTS 514
280 CONSTANT: DOMAIN_ALIAS_RID_ADMINS 544
281 CONSTANT: DOMAIN_ALIAS_RID_USERS 545
282 CONSTANT: DOMAIN_ALIAS_RID_GUESTS 546
283 CONSTANT: DOMAIN_ALIAS_RID_POWER_USERS 547
284 CONSTANT: DOMAIN_ALIAS_RID_ACCOUNT_OPS 548
285 CONSTANT: DOMAIN_ALIAS_RID_SYSTEM_OPS 549
286 CONSTANT: DOMAIN_ALIAS_RID_PRINT_OPS 550
287 CONSTANT: DOMAIN_ALIAS_RID_BACKUP_OPS 551
288 CONSTANT: DOMAIN_ALIAS_RID_REPLICATOR 552
289 CONSTANT: SE_GROUP_MANDATORY 1
290 CONSTANT: SE_GROUP_ENABLED_BY_DEFAULT 2
291 CONSTANT: SE_GROUP_ENABLED 4
292 CONSTANT: SE_GROUP_OWNER 8
293 CONSTANT: SE_GROUP_LOGON_ID -1073741824
294
295 CONSTANT: NTE_BAD_UID HEX: 80090001
296 CONSTANT: NTE_BAD_HASH HEX: 80090002
297 CONSTANT: NTE_BAD_KEY HEX: 80090003
298 CONSTANT: NTE_BAD_LEN HEX: 80090004
299 CONSTANT: NTE_BAD_DATA HEX: 80090005
300 CONSTANT: NTE_BAD_SIGNATURE HEX: 80090006
301 CONSTANT: NTE_BAD_VER HEX: 80090007
302 CONSTANT: NTE_BAD_ALGID HEX: 80090008
303 CONSTANT: NTE_BAD_FLAGS HEX: 80090009
304 CONSTANT: NTE_BAD_TYPE HEX: 8009000A
305 CONSTANT: NTE_BAD_KEY_STATE HEX: 8009000B
306 CONSTANT: NTE_BAD_HASH_STATE HEX: 8009000C
307 CONSTANT: NTE_NO_KEY HEX: 8009000D
308 CONSTANT: NTE_NO_MEMORY HEX: 8009000E
309 CONSTANT: NTE_EXISTS HEX: 8009000F
310 CONSTANT: NTE_PERM HEX: 80090010
311 CONSTANT: NTE_NOT_FOUND HEX: 80090011
312 CONSTANT: NTE_DOUBLE_ENCRYPT HEX: 80090012
313 CONSTANT: NTE_BAD_PROVIDER HEX: 80090013
314 CONSTANT: NTE_BAD_PROV_TYPE HEX: 80090014
315 CONSTANT: NTE_BAD_PUBLIC_KEY HEX: 80090015
316 CONSTANT: NTE_BAD_KEYSET HEX: 80090016
317 CONSTANT: NTE_PROV_TYPE_NOT_DEF HEX: 80090017
318 CONSTANT: NTE_PROV_TYPE_ENTRY_BAD HEX: 80090018
319 CONSTANT: NTE_KEYSET_NOT_DEF HEX: 80090019
320 CONSTANT: NTE_KEYSET_ENTRY_BAD HEX: 8009001A
321 CONSTANT: NTE_PROV_TYPE_NO_MATCH HEX: 8009001B
322 CONSTANT: NTE_SIGNATURE_FILE_BAD HEX: 8009001C
323 CONSTANT: NTE_PROVIDER_DLL_FAIL HEX: 8009001D
324 CONSTANT: NTE_PROV_DLL_NOT_FOUND HEX: 8009001E
325 CONSTANT: NTE_BAD_KEYSET_PARAM HEX: 8009001F
326 CONSTANT: NTE_FAIL HEX: 80090020
327 CONSTANT: NTE_SYS_ERR HEX: 80090021
328
329 ! SID is a variable length structure
330 TYPEDEF: void* PSID
331
332 TYPEDEF: EXPLICIT_ACCESS* PEXPLICIT_ACCESS
333
334 TYPEDEF: DWORD SECURITY_INFORMATION
335 TYPEDEF: SECURITY_INFORMATION* PSECURITY_INFORMATION
336
337 CONSTANT: OWNER_SECURITY_INFORMATION 1
338 CONSTANT: GROUP_SECURITY_INFORMATION 2
339 CONSTANT: DACL_SECURITY_INFORMATION 4
340 CONSTANT: SACL_SECURITY_INFORMATION 8
341
342 CONSTANT: DELETE                     HEX: 00010000
343 CONSTANT: READ_CONTROL               HEX: 00020000
344 CONSTANT: WRITE_DAC                  HEX: 00040000
345 CONSTANT: WRITE_OWNER                HEX: 00080000
346 CONSTANT: SYNCHRONIZE                HEX: 00100000
347 CONSTANT: STANDARD_RIGHTS_REQUIRED   HEX: 000f0000
348
349 ALIAS: STANDARD_RIGHTS_READ       READ_CONTROL
350 ALIAS: STANDARD_RIGHTS_WRITE      READ_CONTROL
351 ALIAS: STANDARD_RIGHTS_EXECUTE    READ_CONTROL
352
353 CONSTANT: TOKEN_TOKEN_ADJUST_DEFAULT   HEX: 0080
354 CONSTANT: TOKEN_ADJUST_GROUPS          HEX: 0040
355 CONSTANT: TOKEN_ADJUST_PRIVILEGES      HEX: 0020
356 CONSTANT: TOKEN_ADJUST_SESSIONID       HEX: 0100
357 CONSTANT: TOKEN_ASSIGN_PRIMARY         HEX: 0001
358 CONSTANT: TOKEN_DUPLICATE              HEX: 0002
359 ALIAS: TOKEN_EXECUTE                STANDARD_RIGHTS_EXECUTE
360 CONSTANT: TOKEN_IMPERSONATE            HEX: 0004
361 CONSTANT: TOKEN_QUERY                  HEX: 0008
362 CONSTANT: TOKEN_QUERY_SOURCE           HEX: 0010
363 CONSTANT: TOKEN_ADJUST_DEFAULT         HEX: 0080
364 : TOKEN_READ ( -- n ) { STANDARD_RIGHTS_READ TOKEN_QUERY } flags ;
365
366 : TOKEN_WRITE ( -- n )
367     {
368         STANDARD_RIGHTS_WRITE
369         TOKEN_ADJUST_PRIVILEGES
370         TOKEN_ADJUST_GROUPS
371         TOKEN_ADJUST_DEFAULT
372     } flags ; foldable
373
374 : TOKEN_ALL_ACCESS ( -- n )
375     {
376         STANDARD_RIGHTS_REQUIRED
377         TOKEN_ASSIGN_PRIMARY
378         TOKEN_DUPLICATE
379         TOKEN_IMPERSONATE
380         TOKEN_QUERY
381         TOKEN_QUERY_SOURCE
382         TOKEN_ADJUST_PRIVILEGES
383         TOKEN_ADJUST_GROUPS
384         TOKEN_ADJUST_SESSIONID
385         TOKEN_ADJUST_DEFAULT
386     } flags ; foldable
387
388 CONSTANT: HKEY_CLASSES_ROOT        HEX: 80000000
389 CONSTANT: HKEY_CURRENT_USER        HEX: 80000001
390 CONSTANT: HKEY_LOCAL_MACHINE       HEX: 80000002
391 CONSTANT: HKEY_USERS               HEX: 80000003
392 CONSTANT: HKEY_PERFORMANCE_DATA    HEX: 80000004
393 CONSTANT: HKEY_CURRENT_CONFIG      HEX: 80000005
394 CONSTANT: HKEY_DYN_DATA            HEX: 80000006
395 CONSTANT: HKEY_PERFORMANCE_TEXT    HEX: 80000050
396 CONSTANT: HKEY_PERFORMANCE_NLSTEXT HEX: 80000060
397
398 CONSTANT: KEY_QUERY_VALUE         HEX: 0001
399 CONSTANT: KEY_SET_VALUE           HEX: 0002
400 CONSTANT: KEY_CREATE_SUB_KEY      HEX: 0004
401 CONSTANT: KEY_ENUMERATE_SUB_KEYS  HEX: 0008
402 CONSTANT: KEY_NOTIFY              HEX: 0010
403 CONSTANT: KEY_CREATE_LINK         HEX: 0020
404 CONSTANT: KEY_READ                HEX: 20019
405 CONSTANT: KEY_WOW64_32KEY         HEX: 0200
406 CONSTANT: KEY_WOW64_64KEY         HEX: 0100
407 CONSTANT: KEY_WRITE               HEX: 20006
408 ALIAS: KEY_EXECUTE             KEY_READ
409 CONSTANT: KEY_ALL_ACCESS          HEX: F003F
410
411 CONSTANT: REG_NONE                         0
412 CONSTANT: REG_SZ                           1
413 CONSTANT: REG_EXPAND_SZ                    2
414 CONSTANT: REG_BINARY                       3
415 CONSTANT: REG_DWORD                        4
416 CONSTANT: REG_DWORD_LITTLE_ENDIAN          4
417 CONSTANT: REG_DWORD_BIG_ENDIAN             5
418 CONSTANT: REG_LINK                         6
419 CONSTANT: REG_MULTI_SZ                     7
420 CONSTANT: REG_RESOURCE_LIST                8
421 CONSTANT: REG_FULL_RESOURCE_DESCRIPTOR     9
422 CONSTANT: REG_RESOURCE_REQUIREMENTS_LIST  10
423 CONSTANT: REG_QWORD                       11
424 CONSTANT: REG_QWORD_LITTLE_ENDIAN         11
425
426 CONSTANT: REG_CREATED_NEW_KEY     1
427 CONSTANT: REG_OPENED_EXISTING_KEY 2
428
429 TYPEDEF: DWORD REGSAM
430
431 ! : I_ScGetCurrentGroupStateW ;
432 ! : A_SHAFinal ;
433 ! : A_SHAInit ;
434 ! : A_SHAUpdate ;
435 ! : AbortSystemShutdownA ;
436 ! : AbortSystemShutdownW ;
437 ! : AccessCheck ;
438 ! : AccessCheckAndAuditAlarmA ;
439 ! : AccessCheckAndAuditAlarmW ;
440 ! : AccessCheckByType ;
441 ! : AccessCheckByTypeAndAuditAlarmA ;
442 ! : AccessCheckByTypeAndAuditAlarmW ;
443 ! : AccessCheckByTypeResultList ;
444 ! : AccessCheckByTypeResultListAndAuditAlarmA ;
445 ! : AccessCheckByTypeResultListAndAuditAlarmByHandleA ;
446 ! : AccessCheckByTypeResultListAndAuditAlarmByHandleW ;
447 ! : AccessCheckByTypeResultListAndAuditAlarmW ;
448 ! : AddAccessAllowedAce ;
449 ! : AddAccessAllowedAceEx ;
450 ! : AddAccessAllowedObjectAce ;
451 ! : AddAccessDeniedAce ;
452 ! : AddAccessDeniedAceEx ;
453 ! : AddAccessDeniedObjectAce ;
454 FUNCTION: BOOL AddAce ( PACL pAcl, DWORD dwAceRevision, DWORD dwStartingAceIndex, LPVOID pAceList, DWORD nAceListLength ) ;
455 ! : AddAuditAccessAce ;
456 ! : AddAuditAccessAceEx ;
457 ! : AddAuditAccessObjectAce ;
458 ! : AddUsersToEncryptedFile ;
459 ! : AdjustTokenGroups ;
460 FUNCTION: BOOL AdjustTokenPrivileges ( HANDLE TokenHandle,
461                                BOOL DisableAllPrivileges,
462                                PTOKEN_PRIVILEGES NewState,
463                                DWORD BufferLength,
464                                PTOKEN_PRIVILEGES PreviousState,
465                                PDWORD ReturnLength ) ;
466
467 FUNCTION: BOOL AllocateAndInitializeSid (
468                 PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
469                 BYTE nSubAuthorityCount,
470                 DWORD dwSubAuthority0,
471                 DWORD dwSubAuthority1,
472                 DWORD dwSubAuthority2,
473                 DWORD dwSubAuthority3,
474                 DWORD dwSubAuthority4,
475                 DWORD dwSubAuthority5,
476                 DWORD dwSubAuthority6,
477                 DWORD dwSubAuthority7,
478                 PSID* pSid ) ;
479
480 ! : AllocateLocallyUniqueId ;
481 ! : AreAllAccessesGranted ;
482 ! : AreAnyAccessesGranted ;
483 ! : BackupEventLogA ;
484 ! : BackupEventLogW ;
485 ! : BuildExplicitAccessWithNameA ;
486 ! : BuildExplicitAccessWithNameW ;
487 ! : BuildImpersonateExplicitAccessWithNameA ;
488 ! : BuildImpersonateExplicitAccessWithNameW ;
489 ! : BuildImpersonateTrusteeA ;
490 ! : BuildImpersonateTrusteeW ;
491 ! : BuildSecurityDescriptorA ;
492 ! : BuildSecurityDescriptorW ;
493 ! : BuildTrusteeWithNameA ;
494 ! : BuildTrusteeWithNameW ;
495 ! : BuildTrusteeWithObjectsAndNameA ;
496 ! : BuildTrusteeWithObjectsAndNameW ;
497 ! : BuildTrusteeWithObjectsAndSidA ;
498 ! : BuildTrusteeWithObjectsAndSidW ;
499 ! : BuildTrusteeWithSidA ;
500 ! : BuildTrusteeWithSidW ;
501 ! : CancelOverlappedAccess ;
502 ! : ChangeServiceConfig2A ;
503 ! : ChangeServiceConfig2W ;
504 ! : ChangeServiceConfigA ;
505 ! : ChangeServiceConfigW ;
506 ! : CheckTokenMembership ;
507 ! : ClearEventLogA ;
508 ! : ClearEventLogW ;
509 ! : CloseCodeAuthzLevel ;
510 ! : CloseEncryptedFileRaw ;
511 ! : CloseEventLog ;
512 ! : CloseServiceHandle ;
513 ! : CloseTrace ;
514 ! : CommandLineFromMsiDescriptor ;
515 ! : ComputeAccessTokenFromCodeAuthzLevel ;
516 ! : ControlService ;
517 ! : ControlTraceA ;
518 ! : ControlTraceW ;
519 ! : ConvertAccessToSecurityDescriptorA ;
520 ! : ConvertAccessToSecurityDescriptorW ;
521 ! : ConvertSDToStringSDRootDomainA ;
522 ! : ConvertSDToStringSDRootDomainW ;
523 ! : ConvertSecurityDescriptorToAccessA ;
524 ! : ConvertSecurityDescriptorToAccessNamedA ;
525 ! : ConvertSecurityDescriptorToAccessNamedW ;
526 ! : ConvertSecurityDescriptorToAccessW ;
527 ! : ConvertSecurityDescriptorToStringSecurityDescriptorA ;
528 ! : ConvertSecurityDescriptorToStringSecurityDescriptorW ;
529 ! : ConvertSidToStringSidA ;
530 ! : ConvertSidToStringSidW ;
531 ! : ConvertStringSDToSDDomainA ;
532 ! : ConvertStringSDToSDDomainW ;
533 ! : ConvertStringSDToSDRootDomainA ;
534 ! : ConvertStringSDToSDRootDomainW ;
535 ! : ConvertStringSecurityDescriptorToSecurityDescriptorA ;
536 ! : ConvertStringSecurityDescriptorToSecurityDescriptorW ;
537 ! : ConvertStringSidToSidA ;
538 ! : ConvertStringSidToSidW ;
539 ! : ConvertToAutoInheritPrivateObjectSecurity ;
540 ! : CopySid ;
541 ! : CreateCodeAuthzLevel ;
542 ! : CreatePrivateObjectSecurity ;
543 ! : CreatePrivateObjectSecurityEx ;
544 ! : CreatePrivateObjectSecurityWithMultipleInheritance ;
545 ! : CreateProcessAsUserA ;
546 ! : CreateProcessAsUserSecure ;
547 ! : CreateProcessAsUserW ;
548 ! : CreateProcessWithLogonW ;
549 ! : CreateRestrictedToken ;
550 ! : CreateServiceA ;
551 ! : CreateServiceW ;
552 ! : CreateTraceInstanceId ;
553 ! : CreateWellKnownSid ;
554 ! : CredDeleteA ;
555 ! : CredDeleteW ;
556 ! : CredEnumerateA ;
557 ! : CredEnumerateW ;
558 ! : CredFree ;
559 ! : CredGetSessionTypes ;
560 ! : CredGetTargetInfoA ;
561 ! : CredGetTargetInfoW ;
562 ! : CredIsMarshaledCredentialA ;
563 ! : CredIsMarshaledCredentialW ;
564 ! : CredMarshalCredentialA ;
565 ! : CredMarshalCredentialW ;
566 ! : CredProfileLoaded ;
567 ! : CredReadA ;
568 ! : CredReadDomainCredentialsA ;
569 ! : CredReadDomainCredentialsW ;
570 ! : CredReadW ;
571 ! : CredRenameA ;
572 ! : CredRenameW ;
573 ! : CredUnmarshalCredentialA ;
574 ! : CredUnmarshalCredentialW ;
575 ! : CredWriteA ;
576 ! : CredWriteDomainCredentialsA ;
577 ! : CredWriteDomainCredentialsW ;
578 ! : CredWriteW ;
579 ! : CredpConvertCredential ;
580 ! : CredpConvertTargetInfo ;
581 ! : CredpDecodeCredential ;
582 ! : CredpEncodeCredential ;
583 ! : CryptAcquireContextA ;
584 FUNCTION: BOOL CryptAcquireContextW ( HCRYPTPROV* phProv,
585                                       LPCTSTR pszContainer,
586                                       LPCTSTR pszProvider,
587                                       DWORD dwProvType,
588                                       DWORD dwFlags ) ;
589
590 ALIAS: CryptAcquireContext CryptAcquireContextW
591
592 ! : CryptContextAddRef ;
593 ! : CryptCreateHash ;
594 ! : CryptDecrypt ;
595 ! : CryptDeriveKey ;
596 ! : CryptDestroyHash ;
597 ! : CryptDestroyKey ;
598 ! : CryptDuplicateHash ;
599 ! : CryptDuplicateKey ;
600 ! : CryptEncrypt ;
601 ! : CryptEnumProviderTypesA ;
602 ! : CryptEnumProviderTypesW ;
603 ! : CryptEnumProvidersA ;
604 ! : CryptEnumProvidersW ;
605 ! : CryptExportKey ;
606 ! : CryptGenKey ;
607 FUNCTION: BOOL CryptGenRandom ( HCRYPTPROV hProv, DWORD dwLen, BYTE* pbBuffer ) ;
608 ! : CryptGetDefaultProviderA ;
609 ! : CryptGetDefaultProviderW ;
610 ! : CryptGetHashParam ;
611 ! : CryptGetKeyParam ;
612 ! : CryptGetProvParam ;
613 ! : CryptGetUserKey ;
614 ! : CryptHashData ;
615 ! : CryptHashSessionKey ;
616 ! : CryptImportKey ;
617 FUNCTION: BOOL CryptReleaseContext ( HCRYPTPROV hProv, DWORD dwFlags ) ;
618 ! : CryptSetHashParam ;
619 ! : CryptSetKeyParam ;
620 ! : CryptSetProvParam ;
621 ! : CryptSetProviderA ;
622 ! : CryptSetProviderExA ;
623 ! : CryptSetProviderExW ;
624 ! : CryptSetProviderW ;
625 ! : CryptSignHashA ;
626 ! : CryptSignHashW ;
627 ! : CryptVerifySignatureA ;
628 ! : CryptVerifySignatureW ;
629 ! : DecryptFileA ;
630 ! : DecryptFileW ;
631 ! : DeleteAce ;
632 ! : DeleteService ;
633 ! : DeregisterEventSource ;
634 ! : DestroyPrivateObjectSecurity ;
635 ! : DuplicateEncryptionInfoFile ;
636 ! : DuplicateToken ;
637 ! : DuplicateTokenEx ;
638 ! : ElfBackupEventLogFileA ;
639 ! : ElfBackupEventLogFileW ;
640 ! : ElfChangeNotify ;
641 ! : ElfClearEventLogFileA ;
642 ! : ElfClearEventLogFileW ;
643 ! : ElfCloseEventLog ;
644 ! : ElfDeregisterEventSource ;
645 ! : ElfFlushEventLog ;
646 ! : ElfNumberOfRecords ;
647 ! : ElfOldestRecord ;
648 ! : ElfOpenBackupEventLogA ;
649 ! : ElfOpenBackupEventLogW ;
650 ! : ElfOpenEventLogA ;
651 ! : ElfOpenEventLogW ;
652 ! : ElfReadEventLogA ;
653 ! : ElfReadEventLogW ;
654 ! : ElfRegisterEventSourceA ;
655 ! : ElfRegisterEventSourceW ;
656 ! : ElfReportEventA ;
657 ! : ElfReportEventW ;
658 ! : EnableTrace ;
659 ! : EncryptFileA ;
660 ! : EncryptFileW ;
661 ! : EncryptedFileKeyInfo ;
662 ! : EncryptionDisable ;
663 ! : EnumDependentServicesA ;
664 ! : EnumDependentServicesW ;
665 ! : EnumServiceGroupW ;
666 ! : EnumServicesStatusA ;
667 ! : EnumServicesStatusExA ;
668 ! : EnumServicesStatusExW ;
669 ! : EnumServicesStatusW ;
670 ! : EnumerateTraceGuids ;
671 ! : EqualDomainSid ;
672 ! : EqualPrefixSid ;
673 ! : EqualSid ;
674 ! : FileEncryptionStatusA ;
675 ! : FileEncryptionStatusW ;
676 ! : FindFirstFreeAce ;
677 ! : FlushTraceA ;
678 ! : FlushTraceW ;
679 ! : FreeEncryptedFileKeyInfo ;
680 ! : FreeEncryptionCertificateHashList ;
681 ! : FreeInheritedFromArray ;
682 ! : FreeSid ;
683 ! : GetAccessPermissionsForObjectA ;
684 ! : GetAccessPermissionsForObjectW ;
685 ! : GetAce ;
686 ! : GetAclInformation ;
687 ! : GetAuditedPermissionsFromAclA ;
688 ! : GetAuditedPermissionsFromAclW ;
689 ! : GetCurrentHwProfileA ;
690 ! : GetCurrentHwProfileW ;
691 ! : GetEffectiveRightsFromAclA ;
692 ! : GetEffectiveRightsFromAclW ;
693 ! : GetEventLogInformation ;
694 ! : GetExplicitEntriesFromAclA ;
695 ! : GetExplicitEntriesFromAclW ;
696 ! : GetFileSecurityA ;
697 FUNCTION: BOOL GetFileSecurityW ( LPCTSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded ) ;
698 ALIAS: GetFileSecurity GetFileSecurityW
699 ! : GetInformationCodeAuthzLevelW ;
700 ! : GetInformationCodeAuthzPolicyW ;
701 ! : GetInheritanceSourceA ;
702 ! : GetInheritanceSourceW ;
703 ! : GetKernelObjectSecurity ;
704 ! : GetLengthSid ;
705 ! : GetLocalManagedApplicationData ;
706 ! : GetLocalManagedApplications ;
707 ! : GetManagedApplicationCategories ;
708 ! : GetManagedApplications ;
709 ! : GetMultipleTrusteeA ;
710 ! : GetMultipleTrusteeOperationA ;
711 ! : GetMultipleTrusteeOperationW ;
712 ! : GetMultipleTrusteeW ;
713 ! : GetNamedSecurityInfoA ;
714 ! : GetNamedSecurityInfoExA ;
715 ! FUNCTION: DWORD GetNamedSecurityInfoExW
716 FUNCTION: DWORD GetNamedSecurityInfoW ( LPTSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID* ppsidOwner, PSID* ppsidGroup, PACL* ppDacl, PACL* ppSacl, PSECURITY_DESCRIPTOR* ppSecurityDescriptor ) ;
717 ALIAS: GetNamedSecurityInfo GetNamedSecurityInfoW
718 ! : GetNumberOfEventLogRecords ;
719 ! : GetOldestEventLogRecord ;
720 ! : GetOverlappedAccessResults ;
721 ! : GetPrivateObjectSecurity ;
722 FUNCTION: BOOL GetSecurityDescriptorControl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision ) ;
723 FUNCTION: BOOL GetSecurityDescriptorDacl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL* pDacl, LPBOOL lpDaclDefaulted ) ;
724 FUNCTION: BOOL GetSecurityDescriptorGroup ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID* pGroup, LPBOOL lpGroupDefaulted ) ;
725 FUNCTION: BOOL GetSecurityDescriptorLength ( PSECURITY_DESCRIPTOR pSecurityDescriptor ) ;
726 FUNCTION: BOOL GetSecurityDescriptorOwner ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID* pOwner, LPBOOL lpOwnerDefaulted ) ;
727 FUNCTION: BOOL GetSecurityDescriptorRMControl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PUCHAR RMControl ) ;
728 FUNCTION: BOOL GetSecurityDescriptorSacl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL* pSacl, LPBOOL lpSaclDefaulted ) ;
729 ! : GetSecurityInfo ;
730 ! : GetSecurityInfoExA ;
731 ! : GetSecurityInfoExW ;
732 ! : GetServiceDisplayNameA ;
733 ! : GetServiceDisplayNameW ;
734 ! : GetServiceKeyNameA ;
735 ! : GetServiceKeyNameW ;
736 ! : GetSidIdentifierAuthority ;
737 ! : GetSidLengthRequired ;
738 ! : GetSidSubAuthority ;
739 ! : GetSidSubAuthorityCount ;
740 ! : GetTokenInformation ;
741 ! : GetTraceEnableFlags ;
742 ! : GetTraceEnableLevel ;
743 ! : GetTraceLoggerHandle ;
744 ! : GetTrusteeFormA ;
745 ! : GetTrusteeFormW ;
746 ! : GetTrusteeNameA ;
747 ! : GetTrusteeNameW ;
748 ! : GetTrusteeTypeA ;
749 ! : GetTrusteeTypeW ;
750
751 ! : GetUserNameA ;
752 FUNCTION: BOOL GetUserNameW ( LPCTSTR lpBuffer, LPDWORD lpnSize ) ;
753 ALIAS: GetUserName GetUserNameW
754
755 ! : GetWindowsAccountDomainSid ;
756 ! : I_ScIsSecurityProcess ;
757 ! : I_ScPnPGetServiceName ;
758 ! : I_ScSendTSMessage ;
759 ! : I_ScSetServiceBitsA ;
760 ! : I_ScSetServiceBitsW ;
761 ! : IdentifyCodeAuthzLevelW ;
762 ! : ImpersonateAnonymousToken ;
763 ! : ImpersonateLoggedOnUser ;
764 ! : ImpersonateNamedPipeClient ;
765 ! : ImpersonateSelf ;
766 FUNCTION: BOOL InitializeAcl ( PACL pAcl, DWORD nAclLength, DWORD dwAclRevision ) ;
767 FUNCTION: BOOL InitializeSecurityDescriptor ( PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision ) ;
768 ! : InitializeSid ;
769 ! : InitiateSystemShutdownA ;
770 ! : InitiateSystemShutdownExA ;
771 ! : InitiateSystemShutdownExW ;
772 ! : InitiateSystemShutdownW ;
773 ! : InstallApplication ;
774 ! : IsTextUnicode ;
775 ! : IsTokenRestricted ;
776 ! : IsTokenUntrusted ;
777 ! : IsValidAcl ;
778 ! : IsValidSecurityDescriptor ;
779 ! : IsValidSid ;
780 ! : IsWellKnownSid ;
781 ! : LockServiceDatabase ;
782 ! : LogonUserA ;
783 ! : LogonUserExA ;
784 ! : LogonUserExW ;
785 ! : LogonUserW ;
786 ! : LookupAccountNameA ;
787 ! : LookupAccountNameW ;
788 ! : LookupAccountSidA ;
789 ! : LookupAccountSidW ;
790 ! : LookupPrivilegeDisplayNameA ;
791 ! : LookupPrivilegeDisplayNameW ;
792 ! : LookupPrivilegeNameA ;
793 ! : LookupPrivilegeNameW ;
794 ! : LookupPrivilegeValueA ;
795 FUNCTION: BOOL LookupPrivilegeValueW ( LPCTSTR lpSystemName,
796                                LPCTSTR lpName,
797                                PLUID lpLuid ) ;
798 ALIAS: LookupPrivilegeValue LookupPrivilegeValueW
799
800 ! : LookupSecurityDescriptorPartsA ;
801 ! : LookupSecurityDescriptorPartsW ;
802 ! : LsaAddAccountRights ;
803 ! : LsaAddPrivilegesToAccount ;
804 ! : LsaClearAuditLog ;
805 ! : LsaClose ;
806 ! : LsaCreateAccount ;
807 ! : LsaCreateSecret ;
808 ! : LsaCreateTrustedDomain ;
809 ! : LsaCreateTrustedDomainEx ;
810 ! : LsaDelete ;
811 ! : LsaDeleteTrustedDomain ;
812 ! : LsaEnumerateAccountRights ;
813 ! : LsaEnumerateAccounts ;
814 ! : LsaEnumerateAccountsWithUserRight ;
815 ! : LsaEnumeratePrivileges ;
816 ! : LsaEnumeratePrivilegesOfAccount ;
817 ! : LsaEnumerateTrustedDomains ;
818 ! : LsaEnumerateTrustedDomainsEx ;
819 ! : LsaFreeMemory ;
820 ! : LsaGetQuotasForAccount ;
821 ! : LsaGetRemoteUserName ;
822 ! : LsaGetSystemAccessAccount ;
823 ! : LsaGetUserName ;
824 ! : LsaICLookupNames ;
825 ! : LsaICLookupNamesWithCreds ;
826 ! : LsaICLookupSids ;
827 ! : LsaICLookupSidsWithCreds ;
828 ! : LsaLookupNames2 ;
829 ! : LsaLookupNames ;
830 ! : LsaLookupPrivilegeDisplayName ;
831 ! : LsaLookupPrivilegeName ;
832 ! : LsaLookupPrivilegeValue ;
833 ! : LsaLookupSids ;
834 ! : LsaNtStatusToWinError ;
835 ! : LsaOpenAccount ;
836 ! : LsaOpenPolicy ;
837 ! : LsaOpenPolicySce ;
838 ! : LsaOpenSecret ;
839 ! : LsaOpenTrustedDomain ;
840 ! : LsaOpenTrustedDomainByName ;
841 ! : LsaQueryDomainInformationPolicy ;
842 ! : LsaQueryForestTrustInformation ;
843 ! : LsaQueryInfoTrustedDomain ;
844 ! : LsaQueryInformationPolicy ;
845 ! : LsaQuerySecret ;
846 ! : LsaQuerySecurityObject ;
847 ! : LsaQueryTrustedDomainInfo ;
848 ! : LsaQueryTrustedDomainInfoByName ;
849 ! : LsaRemoveAccountRights ;
850 ! : LsaRemovePrivilegesFromAccount ;
851 ! : LsaRetrievePrivateData ;
852 ! : LsaSetDomainInformationPolicy ;
853 ! : LsaSetForestTrustInformation ;
854 ! : LsaSetInformationPolicy ;
855 ! : LsaSetInformationTrustedDomain ;
856 ! : LsaSetQuotasForAccount ;
857 ! : LsaSetSecret ;
858 ! : LsaSetSecurityObject ;
859 ! : LsaSetSystemAccessAccount ;
860 ! : LsaSetTrustedDomainInfoByName ;
861 ! : LsaSetTrustedDomainInformation ;
862 ! : LsaStorePrivateData ;
863 ! : MD4Final ;
864 ! : MD4Init ;
865 ! : MD4Update ;
866 ! : MD5Final ;
867 ! : MD5Init ;
868 ! : MD5Update ;
869 ! : MSChapSrvChangePassword2 ;
870 ! : MSChapSrvChangePassword ;
871 ! : MakeAbsoluteSD2 ;
872 ! : MakeAbsoluteSD ;
873 ! : MakeSelfRelativeSD ;
874 ! : MapGenericMask ;
875 ! : NotifyBootConfigStatus ;
876 ! : NotifyChangeEventLog ;
877 ! : ObjectCloseAuditAlarmA ;
878 ! : ObjectCloseAuditAlarmW ;
879 ! : ObjectDeleteAuditAlarmA ;
880 ! : ObjectDeleteAuditAlarmW ;
881 ! : ObjectOpenAuditAlarmA ;
882 ! : ObjectOpenAuditAlarmW ;
883 ! : ObjectPrivilegeAuditAlarmA ;
884 ! : ObjectPrivilegeAuditAlarmW ;
885 ! : OpenBackupEventLogA ;
886 ! : OpenBackupEventLogW ;
887 ! : OpenEncryptedFileRawA ;
888 ! : OpenEncryptedFileRawW ;
889 ! : OpenEventLogA ;
890 ! : OpenEventLogW ;
891
892 FUNCTION: BOOL OpenProcessToken ( HANDLE ProcessHandle,
893                                   DWORD DesiredAccess,
894                                   PHANDLE TokenHandle ) ;
895 ! : OpenSCManagerA ;
896 ! : OpenSCManagerW ;
897 ! : OpenServiceA ;
898 ! : OpenServiceW ;
899 FUNCTION: BOOL OpenThreadToken ( HANDLE ThreadHandle, DWORD DesiredAccess, BOOL OpenAsSelf, PHANDLE TokenHandle ) ;
900 ! : OpenTraceA ;
901 ! : OpenTraceW ;
902 ! : PrivilegeCheck ;
903 ! : PrivilegedServiceAuditAlarmA ;
904 ! : PrivilegedServiceAuditAlarmW ;
905 ! : ProcessIdleTasks ;
906 ! : ProcessTrace ;
907 ! : QueryAllTracesA ;
908 ! : QueryAllTracesW ;
909 ! : QueryRecoveryAgentsOnEncryptedFile ;
910 ! : QueryServiceConfig2A ;
911 ! : QueryServiceConfig2W ;
912 ! : QueryServiceConfigA ;
913 ! : QueryServiceConfigW ;
914 ! : QueryServiceLockStatusA ;
915 ! : QueryServiceLockStatusW ;
916 ! : QueryServiceObjectSecurity ;
917 ! : QueryServiceStatus ;
918 ! : QueryServiceStatusEx ;
919 ! : QueryTraceA ;
920 ! : QueryTraceW ;
921 ! : QueryUsersOnEncryptedFile ;
922 ! : QueryWindows31FilesMigration ;
923 ! : ReadEncryptedFileRaw ;
924 ! : ReadEventLogA ;
925 ! : ReadEventLogW ;
926 FUNCTION: LONG RegCloseKey ( HKEY hKey ) ;
927 ! : RegConnectRegistryA ;
928 ! : RegConnectRegistryW ;
929 ! : RegCreateKeyA ;
930 ! : RegCreateKeyExA ;
931 FUNCTION: LONG RegCreateKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD Reserved, LPTSTR lpClass, DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition ) ;
932 ALIAS: RegCreateKeyEx RegCreateKeyExW
933 ! : RegCreateKeyW
934 ! : RegDeleteKeyA ;
935 ! : RegDeleteKeyW ;
936
937 FUNCTION: LONG RegDeleteKeyExW (
938         HKEY hKey,
939         LPCTSTR lpSubKey,
940         DWORD Reserved,
941         LPTSTR lpClass,
942         DWORD dwOptions,
943         REGSAM samDesired,
944         LPSECURITY_ATTRIBUTES lpSecurityAttributes,
945         PHKEY phkResult,
946         LPDWORD lpdwDisposition
947     ) ;
948
949 ALIAS: RegDeleteKeyEx RegDeleteKeyExW
950
951 ! : RegDeleteValueA ;
952 ! : RegDeleteValueW ;
953 ! : RegDisablePredefinedCache ;
954 ! : RegEnumKeyA ;
955 ! : RegEnumKeyExA ;
956
957 FUNCTION: LONG RegEnumKeyExW (
958         HKEY hKey,
959         DWORD dwIndex,
960         LPTSTR lpName,
961         LPDWORD lpcName,
962         LPDWORD lpReserved,
963         LPTSTR lpClass,
964         LPDWORD lpcClass,
965         PFILETIME lpftLastWriteTime
966     ) ;
967 ALIAS: RegEnumKeyEx RegEnumKeyExW
968
969 ! : RegEnumKeyW ;
970 ! : RegEnumValueA ;
971
972 FUNCTION: LONG RegEnumValueW (
973         HKEY hKey,
974         DWORD dwIndex,
975         LPTSTR lpValueName,
976         LPDWORD lpcchValueName,
977         LPDWORD lpReserved,
978         LPDWORD lpType,
979         LPBYTE lpData,
980         LPDWORD lpcbData
981     ) ;
982
983 ALIAS: RegEnumValue RegEnumValueW
984
985 ! : RegFlushKey ;
986 ! : RegGetKeySecurity ;
987 ! : RegLoadKeyA ;
988 ! : RegLoadKeyW ;
989 ! : RegNotifyChangeKeyValue ;
990 FUNCTION: LONG RegOpenCurrentUser ( REGSAM samDesired, PHKEY phkResult ) ;
991 ! : RegOpenKeyA ;
992 ! : RegOpenKeyExA ;
993 FUNCTION: LONG RegOpenKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult ) ;
994 ALIAS: RegOpenKeyEx RegOpenKeyExW
995 ! : RegOpenKeyW ;
996 ! : RegOpenUserClassesRoot ;
997 ! : RegOverridePredefKey ;
998 ! : RegQueryInfoKeyA ;
999 FUNCTION: LONG RegQueryInfoKeyW (
1000         HKEY hKey,
1001         LPTSTR lpClass,
1002         LPDWORD lpcClass,
1003         LPDWORD lpReserved,
1004         LPDWORD lpcSubKeys,
1005         LPDWORD lpcMaxSubKeyLen,
1006         LPDWORD lpcMaxClassLen,
1007         LPDWORD lpcValues,
1008         LPDWORD lpcMaxValueNameLen,
1009         LPDWORD lpcMaxValueLen,
1010         LPDWORD lpcbSecurityDescriptor,
1011         PFILETIME lpftLastWriteTime
1012     ) ;
1013 ALIAS: RegQueryInfoKey RegQueryInfoKeyW
1014 ! : RegQueryMultipleValuesA ;
1015 ! : RegQueryMultipleValuesW ;
1016 ! : RegQueryValueA ;
1017 ! : RegQueryValueExA ;
1018 FUNCTION: LONG RegQueryValueExW ( HKEY hKey, LPCTSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData ) ;
1019 ALIAS: RegQueryValueEx RegQueryValueExW
1020 ! : RegQueryValueW ;
1021 ! : RegReplaceKeyA ;
1022 ! : RegReplaceKeyW ;
1023 ! : RegRestoreKeyA ;
1024 ! : RegRestoreKeyW ;
1025 ! : RegSaveKeyA ;
1026 ! : RegSaveKeyExA ;
1027 ! : RegSaveKeyExW ;
1028 ! : RegSaveKeyW ;
1029 ! : RegSetKeySecurity ;
1030 ! : RegSetValueA ;
1031 ! : RegSetValueExA ;
1032 ! : RegSetValueExW ;
1033 FUNCTION: LONG RegSetValueExW ( HKEY hKey, LPCTSTR lpValueName, DWORD Reserved, DWORD dwType, BYTE* lpData, DWORD cbData ) ;
1034 ALIAS: RegSetValueEx RegSetValueExW
1035 ! : RegUnLoadKeyA ;
1036 ! : RegUnLoadKeyW ;
1037 ! : RegisterEventSourceA ;
1038 ! : RegisterEventSourceW ;
1039 ! : RegisterIdleTask ;
1040 ! : RegisterServiceCtrlHandlerA ;
1041 ! : RegisterServiceCtrlHandlerExA ;
1042 ! : RegisterServiceCtrlHandlerExW ;
1043 ! : RegisterServiceCtrlHandlerW ;
1044 ! : RegisterTraceGuidsA ;
1045 ! : RegisterTraceGuidsW ;
1046 ! : RemoveTraceCallback ;
1047 ! : RemoveUsersFromEncryptedFile ;
1048 ! : ReportEventA ;
1049 ! : ReportEventW ;
1050 ! : RevertToSelf ;
1051 ! : SaferCloseLevel ;
1052 ! : SaferComputeTokenFromLevel ;
1053 ! : SaferCreateLevel ;
1054 ! : SaferGetLevelInformation ;
1055 ! : SaferGetPolicyInformation ;
1056 ! : SaferIdentifyLevel ;
1057 ! : SaferRecordEventLogEntry ;
1058 ! : SaferSetLevelInformation ;
1059 ! : SaferSetPolicyInformation ;
1060 ! : SaferiChangeRegistryScope ;
1061 ! : SaferiCompareTokenLevels ;
1062 ! : SaferiIsExecutableFileType ;
1063 ! : SaferiPopulateDefaultsInRegistry ;
1064 ! : SaferiRecordEventLogEntry ;
1065 ! : SaferiReplaceProcessThreadTokens ;
1066 ! : SaferiSearchMatchingHashRules ;
1067 ! : SetAclInformation ;
1068 ! : SetEntriesInAccessListA ;
1069 ! : SetEntriesInAccessListW ;
1070 ! : SetEntriesInAclA ;
1071 FUNCTION: DWORD SetEntriesInAclW ( ULONG cCountOfExplicitEntries, PEXPLICIT_ACCESS pListOfExplicitEntries, PACL OldAcl, PACL* NewAcl ) ;
1072 ALIAS: SetEntriesInAcl SetEntriesInAclW
1073 ! : SetEntriesInAuditListA ;
1074 ! : SetEntriesInAuditListW ;
1075 ! : SetFileSecurityA ;
1076 ! : SetFileSecurityW ;
1077 ! : SetInformationCodeAuthzLevelW ;
1078 ! : SetInformationCodeAuthzPolicyW ;
1079 ! : SetKernelObjectSecurity ;
1080 ! : SetNamedSecurityInfoA ;
1081 ! : SetNamedSecurityInfoExA ;
1082 ! : SetNamedSecurityInfoExW ;
1083 FUNCTION: DWORD SetNamedSecurityInfoW ( LPTSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID psidOwner, PSID psidGroup, PACL pDacl, PACL pSacl ) ;
1084 ALIAS: SetNamedSecurityInfo SetNamedSecurityInfoW
1085 ! : SetPrivateObjectSecurity ;
1086 ! : SetPrivateObjectSecurityEx ;
1087 ! : SetSecurityDescriptorControl ;
1088 ! : SetSecurityDescriptorDacl ;
1089 ! : SetSecurityDescriptorGroup ;
1090 ! : SetSecurityDescriptorOwner ;
1091 ! : SetSecurityDescriptorRMControl ;
1092 ! : SetSecurityDescriptorSacl ;
1093 ! : SetSecurityInfo ;
1094 ! : SetSecurityInfoExA ;
1095 ! : SetSecurityInfoExW ;
1096 ! : SetServiceBits ;
1097 ! : SetServiceObjectSecurity ;
1098 ! : SetServiceStatus ;
1099 ! : SetThreadToken ;
1100 ! : SetTokenInformation ;
1101 ! : SetTraceCallback ;
1102 ! : SetUserFileEncryptionKey ;
1103 ! : StartServiceA ;
1104 ! : StartServiceCtrlDispatcherA ;
1105 ! : StartServiceCtrlDispatcherW ;
1106 ! : StartServiceW ;
1107 ! : StartTraceA ;
1108 ! : StartTraceW ;
1109 ! : StopTraceA ;
1110 ! : StopTraceW ;
1111 ! : SynchronizeWindows31FilesAndWindowsNTRegistry ;
1112 ! : SystemFunction001 ;
1113 ! : SystemFunction002 ;
1114 ! : SystemFunction003 ;
1115 ! : SystemFunction004 ;
1116 ! : SystemFunction005 ;
1117 ! : SystemFunction006 ;
1118 ! : SystemFunction007 ;
1119 ! : SystemFunction008 ;
1120 ! : SystemFunction009 ;
1121 ! : SystemFunction010 ;
1122 ! : SystemFunction011 ;
1123 ! : SystemFunction012 ;
1124 ! : SystemFunction013 ;
1125 ! : SystemFunction014 ;
1126 ! : SystemFunction015 ;
1127 ! : SystemFunction016 ;
1128 ! : SystemFunction017 ;
1129 ! : SystemFunction018 ;
1130 ! : SystemFunction019 ;
1131 ! : SystemFunction020 ;
1132 ! : SystemFunction021 ;
1133 ! : SystemFunction022 ;
1134 ! : SystemFunction023 ;
1135 ! : SystemFunction024 ;
1136 ! : SystemFunction025 ;
1137 ! : SystemFunction026 ;
1138 ! : SystemFunction027 ;
1139 ! : SystemFunction028 ;
1140 ! : SystemFunction029 ;
1141 ! : SystemFunction030 ;
1142 ! : SystemFunction031 ;
1143 ! : SystemFunction032 ;
1144 ! : SystemFunction033 ;
1145 ! : SystemFunction034 ;
1146 ! : SystemFunction035 ;
1147 ! : SystemFunction036 ;
1148 ! : SystemFunction040 ;
1149 ! : SystemFunction041 ;
1150 ! : TraceEvent ;
1151 ! : TraceEventInstance ;
1152 ! : TraceMessage ;
1153 ! : TraceMessageVa ;
1154 ! : TreeResetNamedSecurityInfoA ;
1155 ! : TreeResetNamedSecurityInfoW ;
1156 ! : TrusteeAccessToObjectA ;
1157 ! : TrusteeAccessToObjectW ;
1158 ! : UninstallApplication ;
1159 ! : UnlockServiceDatabase ;
1160 ! : UnregisterIdleTask ;
1161 ! : UnregisterTraceGuids ;
1162 ! : UpdateTraceA ;
1163 ! : UpdateTraceW ;
1164 ! : WdmWmiServiceMain ;
1165 ! : WmiCloseBlock ;
1166 ! : WmiCloseTraceWithCursor ;
1167 ! : WmiConvertTimestamp ;
1168 ! : WmiDevInstToInstanceNameA ;
1169 ! : WmiDevInstToInstanceNameW ;
1170 ! : WmiEnumerateGuids ;
1171 ! : WmiExecuteMethodA ;
1172 ! : WmiExecuteMethodW ;
1173 ! : WmiFileHandleToInstanceNameA ;
1174 ! : WmiFileHandleToInstanceNameW ;
1175 ! : WmiFreeBuffer ;
1176 ! : WmiGetFirstTraceOffset ;
1177 ! : WmiGetNextEvent ;
1178 ! : WmiGetTraceHeader ;
1179 ! : WmiMofEnumerateResourcesA ;
1180 ! : WmiMofEnumerateResourcesW ;
1181 ! : WmiNotificationRegistrationA ;
1182 ! : WmiNotificationRegistrationW ;
1183 ! : WmiOpenBlock ;
1184 ! : WmiOpenTraceWithCursor ;
1185 ! : WmiParseTraceEvent ;
1186 ! : WmiQueryAllDataA ;
1187 ! : WmiQueryAllDataMultipleA ;
1188 ! : WmiQueryAllDataMultipleW ;
1189 ! : WmiQueryAllDataW ;
1190 ! : WmiQueryGuidInformation ;
1191 ! : WmiQuerySingleInstanceA ;
1192 ! : WmiQuerySingleInstanceMultipleA ;
1193 ! : WmiQuerySingleInstanceMultipleW ;
1194 ! : WmiQuerySingleInstanceW ;
1195 ! : WmiReceiveNotificationsA ;
1196 ! : WmiReceiveNotificationsW ;
1197 ! : WmiSetSingleInstanceA ;
1198 ! : WmiSetSingleInstanceW ;
1199 ! : WmiSetSingleItemA ;
1200 ! : WmiSetSingleItemW ;
1201 ! : Wow64Win32ApiEntry ;
1202 ! : WriteEncryptedFileRaw ;
1203
1204