]> gitweb.factorcode.org Git - factor.git/blob - basis/windows/advapi32/advapi32.factor
update windows vocabs to load without c-type strings
[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 CONSTANT: 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 TYPEDEF: DWORD REGSAM
427
428 ! : I_ScGetCurrentGroupStateW ;
429 ! : A_SHAFinal ;
430 ! : A_SHAInit ;
431 ! : A_SHAUpdate ;
432 ! : AbortSystemShutdownA ;
433 ! : AbortSystemShutdownW ;
434 ! : AccessCheck ;
435 ! : AccessCheckAndAuditAlarmA ;
436 ! : AccessCheckAndAuditAlarmW ;
437 ! : AccessCheckByType ;
438 ! : AccessCheckByTypeAndAuditAlarmA ;
439 ! : AccessCheckByTypeAndAuditAlarmW ;
440 ! : AccessCheckByTypeResultList ;
441 ! : AccessCheckByTypeResultListAndAuditAlarmA ;
442 ! : AccessCheckByTypeResultListAndAuditAlarmByHandleA ;
443 ! : AccessCheckByTypeResultListAndAuditAlarmByHandleW ;
444 ! : AccessCheckByTypeResultListAndAuditAlarmW ;
445 ! : AddAccessAllowedAce ;
446 ! : AddAccessAllowedAceEx ;
447 ! : AddAccessAllowedObjectAce ;
448 ! : AddAccessDeniedAce ;
449 ! : AddAccessDeniedAceEx ;
450 ! : AddAccessDeniedObjectAce ;
451 FUNCTION: BOOL AddAce ( PACL pAcl, DWORD dwAceRevision, DWORD dwStartingAceIndex, LPVOID pAceList, DWORD nAceListLength ) ;
452 ! : AddAuditAccessAce ;
453 ! : AddAuditAccessAceEx ;
454 ! : AddAuditAccessObjectAce ;
455 ! : AddUsersToEncryptedFile ;
456 ! : AdjustTokenGroups ;
457 FUNCTION: BOOL AdjustTokenPrivileges ( HANDLE TokenHandle,
458                                BOOL DisableAllPrivileges,
459                                PTOKEN_PRIVILEGES NewState,
460                                DWORD BufferLength,
461                                PTOKEN_PRIVILEGES PreviousState,
462                                PDWORD ReturnLength ) ;
463
464 FUNCTION: BOOL AllocateAndInitializeSid (
465                 PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
466                 BYTE nSubAuthorityCount,
467                 DWORD dwSubAuthority0,
468                 DWORD dwSubAuthority1,
469                 DWORD dwSubAuthority2,
470                 DWORD dwSubAuthority3,
471                 DWORD dwSubAuthority4,
472                 DWORD dwSubAuthority5,
473                 DWORD dwSubAuthority6,
474                 DWORD dwSubAuthority7,
475                 PSID* pSid ) ;
476
477 ! : AllocateLocallyUniqueId ;
478 ! : AreAllAccessesGranted ;
479 ! : AreAnyAccessesGranted ;
480 ! : BackupEventLogA ;
481 ! : BackupEventLogW ;
482 ! : BuildExplicitAccessWithNameA ;
483 ! : BuildExplicitAccessWithNameW ;
484 ! : BuildImpersonateExplicitAccessWithNameA ;
485 ! : BuildImpersonateExplicitAccessWithNameW ;
486 ! : BuildImpersonateTrusteeA ;
487 ! : BuildImpersonateTrusteeW ;
488 ! : BuildSecurityDescriptorA ;
489 ! : BuildSecurityDescriptorW ;
490 ! : BuildTrusteeWithNameA ;
491 ! : BuildTrusteeWithNameW ;
492 ! : BuildTrusteeWithObjectsAndNameA ;
493 ! : BuildTrusteeWithObjectsAndNameW ;
494 ! : BuildTrusteeWithObjectsAndSidA ;
495 ! : BuildTrusteeWithObjectsAndSidW ;
496 ! : BuildTrusteeWithSidA ;
497 ! : BuildTrusteeWithSidW ;
498 ! : CancelOverlappedAccess ;
499 ! : ChangeServiceConfig2A ;
500 ! : ChangeServiceConfig2W ;
501 ! : ChangeServiceConfigA ;
502 ! : ChangeServiceConfigW ;
503 ! : CheckTokenMembership ;
504 ! : ClearEventLogA ;
505 ! : ClearEventLogW ;
506 ! : CloseCodeAuthzLevel ;
507 ! : CloseEncryptedFileRaw ;
508 ! : CloseEventLog ;
509 ! : CloseServiceHandle ;
510 ! : CloseTrace ;
511 ! : CommandLineFromMsiDescriptor ;
512 ! : ComputeAccessTokenFromCodeAuthzLevel ;
513 ! : ControlService ;
514 ! : ControlTraceA ;
515 ! : ControlTraceW ;
516 ! : ConvertAccessToSecurityDescriptorA ;
517 ! : ConvertAccessToSecurityDescriptorW ;
518 ! : ConvertSDToStringSDRootDomainA ;
519 ! : ConvertSDToStringSDRootDomainW ;
520 ! : ConvertSecurityDescriptorToAccessA ;
521 ! : ConvertSecurityDescriptorToAccessNamedA ;
522 ! : ConvertSecurityDescriptorToAccessNamedW ;
523 ! : ConvertSecurityDescriptorToAccessW ;
524 ! : ConvertSecurityDescriptorToStringSecurityDescriptorA ;
525 ! : ConvertSecurityDescriptorToStringSecurityDescriptorW ;
526 ! : ConvertSidToStringSidA ;
527 ! : ConvertSidToStringSidW ;
528 ! : ConvertStringSDToSDDomainA ;
529 ! : ConvertStringSDToSDDomainW ;
530 ! : ConvertStringSDToSDRootDomainA ;
531 ! : ConvertStringSDToSDRootDomainW ;
532 ! : ConvertStringSecurityDescriptorToSecurityDescriptorA ;
533 ! : ConvertStringSecurityDescriptorToSecurityDescriptorW ;
534 ! : ConvertStringSidToSidA ;
535 ! : ConvertStringSidToSidW ;
536 ! : ConvertToAutoInheritPrivateObjectSecurity ;
537 ! : CopySid ;
538 ! : CreateCodeAuthzLevel ;
539 ! : CreatePrivateObjectSecurity ;
540 ! : CreatePrivateObjectSecurityEx ;
541 ! : CreatePrivateObjectSecurityWithMultipleInheritance ;
542 ! : CreateProcessAsUserA ;
543 ! : CreateProcessAsUserSecure ;
544 ! : CreateProcessAsUserW ;
545 ! : CreateProcessWithLogonW ;
546 ! : CreateRestrictedToken ;
547 ! : CreateServiceA ;
548 ! : CreateServiceW ;
549 ! : CreateTraceInstanceId ;
550 ! : CreateWellKnownSid ;
551 ! : CredDeleteA ;
552 ! : CredDeleteW ;
553 ! : CredEnumerateA ;
554 ! : CredEnumerateW ;
555 ! : CredFree ;
556 ! : CredGetSessionTypes ;
557 ! : CredGetTargetInfoA ;
558 ! : CredGetTargetInfoW ;
559 ! : CredIsMarshaledCredentialA ;
560 ! : CredIsMarshaledCredentialW ;
561 ! : CredMarshalCredentialA ;
562 ! : CredMarshalCredentialW ;
563 ! : CredProfileLoaded ;
564 ! : CredReadA ;
565 ! : CredReadDomainCredentialsA ;
566 ! : CredReadDomainCredentialsW ;
567 ! : CredReadW ;
568 ! : CredRenameA ;
569 ! : CredRenameW ;
570 ! : CredUnmarshalCredentialA ;
571 ! : CredUnmarshalCredentialW ;
572 ! : CredWriteA ;
573 ! : CredWriteDomainCredentialsA ;
574 ! : CredWriteDomainCredentialsW ;
575 ! : CredWriteW ;
576 ! : CredpConvertCredential ;
577 ! : CredpConvertTargetInfo ;
578 ! : CredpDecodeCredential ;
579 ! : CredpEncodeCredential ;
580 ! : CryptAcquireContextA ;
581 FUNCTION: BOOL CryptAcquireContextW ( HCRYPTPROV* phProv,
582                                       LPCTSTR pszContainer,
583                                       LPCTSTR pszProvider,
584                                       DWORD dwProvType,
585                                       DWORD dwFlags ) ;
586
587 ALIAS: CryptAcquireContext CryptAcquireContextW
588
589 ! : CryptContextAddRef ;
590 ! : CryptCreateHash ;
591 ! : CryptDecrypt ;
592 ! : CryptDeriveKey ;
593 ! : CryptDestroyHash ;
594 ! : CryptDestroyKey ;
595 ! : CryptDuplicateHash ;
596 ! : CryptDuplicateKey ;
597 ! : CryptEncrypt ;
598 ! : CryptEnumProviderTypesA ;
599 ! : CryptEnumProviderTypesW ;
600 ! : CryptEnumProvidersA ;
601 ! : CryptEnumProvidersW ;
602 ! : CryptExportKey ;
603 ! : CryptGenKey ;
604 FUNCTION: BOOL CryptGenRandom ( HCRYPTPROV hProv, DWORD dwLen, BYTE* pbBuffer ) ;
605 ! : CryptGetDefaultProviderA ;
606 ! : CryptGetDefaultProviderW ;
607 ! : CryptGetHashParam ;
608 ! : CryptGetKeyParam ;
609 ! : CryptGetProvParam ;
610 ! : CryptGetUserKey ;
611 ! : CryptHashData ;
612 ! : CryptHashSessionKey ;
613 ! : CryptImportKey ;
614 FUNCTION: BOOL CryptReleaseContext ( HCRYPTPROV hProv, DWORD dwFlags ) ;
615 ! : CryptSetHashParam ;
616 ! : CryptSetKeyParam ;
617 ! : CryptSetProvParam ;
618 ! : CryptSetProviderA ;
619 ! : CryptSetProviderExA ;
620 ! : CryptSetProviderExW ;
621 ! : CryptSetProviderW ;
622 ! : CryptSignHashA ;
623 ! : CryptSignHashW ;
624 ! : CryptVerifySignatureA ;
625 ! : CryptVerifySignatureW ;
626 ! : DecryptFileA ;
627 ! : DecryptFileW ;
628 ! : DeleteAce ;
629 ! : DeleteService ;
630 ! : DeregisterEventSource ;
631 ! : DestroyPrivateObjectSecurity ;
632 ! : DuplicateEncryptionInfoFile ;
633 ! : DuplicateToken ;
634 ! : DuplicateTokenEx ;
635 ! : ElfBackupEventLogFileA ;
636 ! : ElfBackupEventLogFileW ;
637 ! : ElfChangeNotify ;
638 ! : ElfClearEventLogFileA ;
639 ! : ElfClearEventLogFileW ;
640 ! : ElfCloseEventLog ;
641 ! : ElfDeregisterEventSource ;
642 ! : ElfFlushEventLog ;
643 ! : ElfNumberOfRecords ;
644 ! : ElfOldestRecord ;
645 ! : ElfOpenBackupEventLogA ;
646 ! : ElfOpenBackupEventLogW ;
647 ! : ElfOpenEventLogA ;
648 ! : ElfOpenEventLogW ;
649 ! : ElfReadEventLogA ;
650 ! : ElfReadEventLogW ;
651 ! : ElfRegisterEventSourceA ;
652 ! : ElfRegisterEventSourceW ;
653 ! : ElfReportEventA ;
654 ! : ElfReportEventW ;
655 ! : EnableTrace ;
656 ! : EncryptFileA ;
657 ! : EncryptFileW ;
658 ! : EncryptedFileKeyInfo ;
659 ! : EncryptionDisable ;
660 ! : EnumDependentServicesA ;
661 ! : EnumDependentServicesW ;
662 ! : EnumServiceGroupW ;
663 ! : EnumServicesStatusA ;
664 ! : EnumServicesStatusExA ;
665 ! : EnumServicesStatusExW ;
666 ! : EnumServicesStatusW ;
667 ! : EnumerateTraceGuids ;
668 ! : EqualDomainSid ;
669 ! : EqualPrefixSid ;
670 ! : EqualSid ;
671 ! : FileEncryptionStatusA ;
672 ! : FileEncryptionStatusW ;
673 ! : FindFirstFreeAce ;
674 ! : FlushTraceA ;
675 ! : FlushTraceW ;
676 ! : FreeEncryptedFileKeyInfo ;
677 ! : FreeEncryptionCertificateHashList ;
678 ! : FreeInheritedFromArray ;
679 ! : FreeSid ;
680 ! : GetAccessPermissionsForObjectA ;
681 ! : GetAccessPermissionsForObjectW ;
682 ! : GetAce ;
683 ! : GetAclInformation ;
684 ! : GetAuditedPermissionsFromAclA ;
685 ! : GetAuditedPermissionsFromAclW ;
686 ! : GetCurrentHwProfileA ;
687 ! : GetCurrentHwProfileW ;
688 ! : GetEffectiveRightsFromAclA ;
689 ! : GetEffectiveRightsFromAclW ;
690 ! : GetEventLogInformation ;
691 ! : GetExplicitEntriesFromAclA ;
692 ! : GetExplicitEntriesFromAclW ;
693 ! : GetFileSecurityA ;
694 FUNCTION: BOOL GetFileSecurityW ( LPCTSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded ) ;
695 ALIAS: GetFileSecurity GetFileSecurityW
696 ! : GetInformationCodeAuthzLevelW ;
697 ! : GetInformationCodeAuthzPolicyW ;
698 ! : GetInheritanceSourceA ;
699 ! : GetInheritanceSourceW ;
700 ! : GetKernelObjectSecurity ;
701 ! : GetLengthSid ;
702 ! : GetLocalManagedApplicationData ;
703 ! : GetLocalManagedApplications ;
704 ! : GetManagedApplicationCategories ;
705 ! : GetManagedApplications ;
706 ! : GetMultipleTrusteeA ;
707 ! : GetMultipleTrusteeOperationA ;
708 ! : GetMultipleTrusteeOperationW ;
709 ! : GetMultipleTrusteeW ;
710 ! : GetNamedSecurityInfoA ;
711 ! : GetNamedSecurityInfoExA ;
712 ! FUNCTION: DWORD GetNamedSecurityInfoExW
713 FUNCTION: DWORD GetNamedSecurityInfoW ( LPTSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID* ppsidOwner, PSID* ppsidGroup, PACL* ppDacl, PACL* ppSacl, PSECURITY_DESCRIPTOR* ppSecurityDescriptor ) ;
714 ALIAS: GetNamedSecurityInfo GetNamedSecurityInfoW
715 ! : GetNumberOfEventLogRecords ;
716 ! : GetOldestEventLogRecord ;
717 ! : GetOverlappedAccessResults ;
718 ! : GetPrivateObjectSecurity ;
719 FUNCTION: BOOL GetSecurityDescriptorControl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision ) ;
720 FUNCTION: BOOL GetSecurityDescriptorDacl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL* pDacl, LPBOOL lpDaclDefaulted ) ;
721 FUNCTION: BOOL GetSecurityDescriptorGroup ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID* pGroup, LPBOOL lpGroupDefaulted ) ;
722 FUNCTION: BOOL GetSecurityDescriptorLength ( PSECURITY_DESCRIPTOR pSecurityDescriptor ) ;
723 FUNCTION: BOOL GetSecurityDescriptorOwner ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID* pOwner, LPBOOL lpOwnerDefaulted ) ;
724 FUNCTION: BOOL GetSecurityDescriptorRMControl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, PUCHAR RMControl ) ;
725 FUNCTION: BOOL GetSecurityDescriptorSacl ( PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL* pSacl, LPBOOL lpSaclDefaulted ) ;
726 ! : GetSecurityInfo ;
727 ! : GetSecurityInfoExA ;
728 ! : GetSecurityInfoExW ;
729 ! : GetServiceDisplayNameA ;
730 ! : GetServiceDisplayNameW ;
731 ! : GetServiceKeyNameA ;
732 ! : GetServiceKeyNameW ;
733 ! : GetSidIdentifierAuthority ;
734 ! : GetSidLengthRequired ;
735 ! : GetSidSubAuthority ;
736 ! : GetSidSubAuthorityCount ;
737 ! : GetTokenInformation ;
738 ! : GetTraceEnableFlags ;
739 ! : GetTraceEnableLevel ;
740 ! : GetTraceLoggerHandle ;
741 ! : GetTrusteeFormA ;
742 ! : GetTrusteeFormW ;
743 ! : GetTrusteeNameA ;
744 ! : GetTrusteeNameW ;
745 ! : GetTrusteeTypeA ;
746 ! : GetTrusteeTypeW ;
747
748 ! : GetUserNameA ;
749 FUNCTION: BOOL GetUserNameW ( LPCTSTR lpBuffer, LPDWORD lpnSize ) ;
750 ALIAS: GetUserName GetUserNameW
751
752 ! : GetWindowsAccountDomainSid ;
753 ! : I_ScIsSecurityProcess ;
754 ! : I_ScPnPGetServiceName ;
755 ! : I_ScSendTSMessage ;
756 ! : I_ScSetServiceBitsA ;
757 ! : I_ScSetServiceBitsW ;
758 ! : IdentifyCodeAuthzLevelW ;
759 ! : ImpersonateAnonymousToken ;
760 ! : ImpersonateLoggedOnUser ;
761 ! : ImpersonateNamedPipeClient ;
762 ! : ImpersonateSelf ;
763 FUNCTION: BOOL InitializeAcl ( PACL pAcl, DWORD nAclLength, DWORD dwAclRevision ) ;
764 FUNCTION: BOOL InitializeSecurityDescriptor ( PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision ) ;
765 ! : InitializeSid ;
766 ! : InitiateSystemShutdownA ;
767 ! : InitiateSystemShutdownExA ;
768 ! : InitiateSystemShutdownExW ;
769 ! : InitiateSystemShutdownW ;
770 ! : InstallApplication ;
771 ! : IsTextUnicode ;
772 ! : IsTokenRestricted ;
773 ! : IsTokenUntrusted ;
774 ! : IsValidAcl ;
775 ! : IsValidSecurityDescriptor ;
776 ! : IsValidSid ;
777 ! : IsWellKnownSid ;
778 ! : LockServiceDatabase ;
779 ! : LogonUserA ;
780 ! : LogonUserExA ;
781 ! : LogonUserExW ;
782 ! : LogonUserW ;
783 ! : LookupAccountNameA ;
784 ! : LookupAccountNameW ;
785 ! : LookupAccountSidA ;
786 ! : LookupAccountSidW ;
787 ! : LookupPrivilegeDisplayNameA ;
788 ! : LookupPrivilegeDisplayNameW ;
789 ! : LookupPrivilegeNameA ;
790 ! : LookupPrivilegeNameW ;
791 ! : LookupPrivilegeValueA ;
792 FUNCTION: BOOL LookupPrivilegeValueW ( LPCTSTR lpSystemName,
793                                LPCTSTR lpName,
794                                PLUID lpLuid ) ;
795 ALIAS: LookupPrivilegeValue LookupPrivilegeValueW
796
797 ! : LookupSecurityDescriptorPartsA ;
798 ! : LookupSecurityDescriptorPartsW ;
799 ! : LsaAddAccountRights ;
800 ! : LsaAddPrivilegesToAccount ;
801 ! : LsaClearAuditLog ;
802 ! : LsaClose ;
803 ! : LsaCreateAccount ;
804 ! : LsaCreateSecret ;
805 ! : LsaCreateTrustedDomain ;
806 ! : LsaCreateTrustedDomainEx ;
807 ! : LsaDelete ;
808 ! : LsaDeleteTrustedDomain ;
809 ! : LsaEnumerateAccountRights ;
810 ! : LsaEnumerateAccounts ;
811 ! : LsaEnumerateAccountsWithUserRight ;
812 ! : LsaEnumeratePrivileges ;
813 ! : LsaEnumeratePrivilegesOfAccount ;
814 ! : LsaEnumerateTrustedDomains ;
815 ! : LsaEnumerateTrustedDomainsEx ;
816 ! : LsaFreeMemory ;
817 ! : LsaGetQuotasForAccount ;
818 ! : LsaGetRemoteUserName ;
819 ! : LsaGetSystemAccessAccount ;
820 ! : LsaGetUserName ;
821 ! : LsaICLookupNames ;
822 ! : LsaICLookupNamesWithCreds ;
823 ! : LsaICLookupSids ;
824 ! : LsaICLookupSidsWithCreds ;
825 ! : LsaLookupNames2 ;
826 ! : LsaLookupNames ;
827 ! : LsaLookupPrivilegeDisplayName ;
828 ! : LsaLookupPrivilegeName ;
829 ! : LsaLookupPrivilegeValue ;
830 ! : LsaLookupSids ;
831 ! : LsaNtStatusToWinError ;
832 ! : LsaOpenAccount ;
833 ! : LsaOpenPolicy ;
834 ! : LsaOpenPolicySce ;
835 ! : LsaOpenSecret ;
836 ! : LsaOpenTrustedDomain ;
837 ! : LsaOpenTrustedDomainByName ;
838 ! : LsaQueryDomainInformationPolicy ;
839 ! : LsaQueryForestTrustInformation ;
840 ! : LsaQueryInfoTrustedDomain ;
841 ! : LsaQueryInformationPolicy ;
842 ! : LsaQuerySecret ;
843 ! : LsaQuerySecurityObject ;
844 ! : LsaQueryTrustedDomainInfo ;
845 ! : LsaQueryTrustedDomainInfoByName ;
846 ! : LsaRemoveAccountRights ;
847 ! : LsaRemovePrivilegesFromAccount ;
848 ! : LsaRetrievePrivateData ;
849 ! : LsaSetDomainInformationPolicy ;
850 ! : LsaSetForestTrustInformation ;
851 ! : LsaSetInformationPolicy ;
852 ! : LsaSetInformationTrustedDomain ;
853 ! : LsaSetQuotasForAccount ;
854 ! : LsaSetSecret ;
855 ! : LsaSetSecurityObject ;
856 ! : LsaSetSystemAccessAccount ;
857 ! : LsaSetTrustedDomainInfoByName ;
858 ! : LsaSetTrustedDomainInformation ;
859 ! : LsaStorePrivateData ;
860 ! : MD4Final ;
861 ! : MD4Init ;
862 ! : MD4Update ;
863 ! : MD5Final ;
864 ! : MD5Init ;
865 ! : MD5Update ;
866 ! : MSChapSrvChangePassword2 ;
867 ! : MSChapSrvChangePassword ;
868 ! : MakeAbsoluteSD2 ;
869 ! : MakeAbsoluteSD ;
870 ! : MakeSelfRelativeSD ;
871 ! : MapGenericMask ;
872 ! : NotifyBootConfigStatus ;
873 ! : NotifyChangeEventLog ;
874 ! : ObjectCloseAuditAlarmA ;
875 ! : ObjectCloseAuditAlarmW ;
876 ! : ObjectDeleteAuditAlarmA ;
877 ! : ObjectDeleteAuditAlarmW ;
878 ! : ObjectOpenAuditAlarmA ;
879 ! : ObjectOpenAuditAlarmW ;
880 ! : ObjectPrivilegeAuditAlarmA ;
881 ! : ObjectPrivilegeAuditAlarmW ;
882 ! : OpenBackupEventLogA ;
883 ! : OpenBackupEventLogW ;
884 ! : OpenEncryptedFileRawA ;
885 ! : OpenEncryptedFileRawW ;
886 ! : OpenEventLogA ;
887 ! : OpenEventLogW ;
888
889 FUNCTION: BOOL OpenProcessToken ( HANDLE ProcessHandle,
890                                   DWORD DesiredAccess,
891                                   PHANDLE TokenHandle ) ;
892 ! : OpenSCManagerA ;
893 ! : OpenSCManagerW ;
894 ! : OpenServiceA ;
895 ! : OpenServiceW ;
896 FUNCTION: BOOL OpenThreadToken ( HANDLE ThreadHandle, DWORD DesiredAccess, BOOL OpenAsSelf, PHANDLE TokenHandle ) ;
897 ! : OpenTraceA ;
898 ! : OpenTraceW ;
899 ! : PrivilegeCheck ;
900 ! : PrivilegedServiceAuditAlarmA ;
901 ! : PrivilegedServiceAuditAlarmW ;
902 ! : ProcessIdleTasks ;
903 ! : ProcessTrace ;
904 ! : QueryAllTracesA ;
905 ! : QueryAllTracesW ;
906 ! : QueryRecoveryAgentsOnEncryptedFile ;
907 ! : QueryServiceConfig2A ;
908 ! : QueryServiceConfig2W ;
909 ! : QueryServiceConfigA ;
910 ! : QueryServiceConfigW ;
911 ! : QueryServiceLockStatusA ;
912 ! : QueryServiceLockStatusW ;
913 ! : QueryServiceObjectSecurity ;
914 ! : QueryServiceStatus ;
915 ! : QueryServiceStatusEx ;
916 ! : QueryTraceA ;
917 ! : QueryTraceW ;
918 ! : QueryUsersOnEncryptedFile ;
919 ! : QueryWindows31FilesMigration ;
920 ! : ReadEncryptedFileRaw ;
921 ! : ReadEventLogA ;
922 ! : ReadEventLogW ;
923 FUNCTION: LONG RegCloseKey ( HKEY hKey ) ;
924 ! : RegConnectRegistryA ;
925 ! : RegConnectRegistryW ;
926 ! : RegCreateKeyA ;
927 ! : RegCreateKeyExA ;
928 FUNCTION: LONG RegCreateKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD Reserved, LPTSTR lpClass, DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition ) ;
929 ! : RegCreateKeyW
930 ! : RegDeleteKeyA ;
931 ! : RegDeleteKeyW ;
932
933 FUNCTION: LONG RegDeleteKeyExW (
934         HKEY hKey,
935         LPCTSTR lpSubKey,
936         DWORD Reserved,
937         LPTSTR lpClass,
938         DWORD dwOptions,
939         REGSAM samDesired,
940         LPSECURITY_ATTRIBUTES lpSecurityAttributes,
941         PHKEY phkResult,
942         LPDWORD lpdwDisposition
943     ) ;
944
945 ALIAS: RegDeleteKeyEx RegDeleteKeyExW
946
947 ! : RegDeleteValueA ;
948 ! : RegDeleteValueW ;
949 ! : RegDisablePredefinedCache ;
950 ! : RegEnumKeyA ;
951 ! : RegEnumKeyExA ;
952 FUNCTION: LONG RegEnumKeyExW (
953         HKEY hKey,
954         DWORD dwIndex,
955         LPTSTR lpName,
956         LPDWORD lpcName,
957         LPDWORD lpReserved,
958         LPTSTR lpClass,
959         LPDWORD lpcClass,
960         PFILETIME lpftLastWriteTime
961     ) ;
962 ! : RegEnumKeyW ;
963 ! : RegEnumValueA ;
964
965 FUNCTION: LONG RegEnumValueW (
966         HKEY hKey,
967         DWORD dwIndex,
968         LPTSTR lpValueName,
969         LPDWORD lpcchValueName,
970         LPDWORD lpReserved,
971         LPDWORD lpType,
972         LPBYTE lpData,
973         LPDWORD lpcbData
974     ) ;
975
976 ALIAS: RegEnumValue RegEnumValueW
977
978 ! : RegFlushKey ;
979 ! : RegGetKeySecurity ;
980 ! : RegLoadKeyA ;
981 ! : RegLoadKeyW ;
982 ! : RegNotifyChangeKeyValue ;
983 FUNCTION: LONG RegOpenCurrentUser ( REGSAM samDesired, PHKEY phkResult ) ;
984 ! : RegOpenKeyA ;
985 ! : RegOpenKeyExA ;
986 FUNCTION: LONG RegOpenKeyExW ( HKEY hKey, LPCTSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult ) ;
987 ALIAS: RegOpenKeyEx RegOpenKeyExW
988 ! : RegOpenKeyW ;
989 ! : RegOpenUserClassesRoot ;
990 ! : RegOverridePredefKey ;
991 ! : RegQueryInfoKeyA ;
992 FUNCTION: LONG RegQueryInfoKeyW (
993         HKEY hKey,
994         LPTSTR lpClass,
995         LPDWORD lpcClass,
996         LPDWORD lpReserved,
997         LPDWORD lpcSubKeys,
998         LPDWORD lpcMaxSubKeyLen,
999         LPDWORD lpcMaxClassLen,
1000         LPDWORD lpcValues,
1001         LPDWORD lpcMaxValueNameLen,
1002         LPDWORD lpcMaxValueLen,
1003         LPDWORD lpcbSecurityDescriptor,
1004         PFILETIME lpftLastWriteTime
1005     ) ;
1006 ALIAS: RegQueryInfoKey RegQueryInfoKeyW
1007 ! : RegQueryMultipleValuesA ;
1008 ! : RegQueryMultipleValuesW ;
1009 ! : RegQueryValueA ;
1010 ! : RegQueryValueExA ;
1011 FUNCTION: LONG RegQueryValueExW ( HKEY hKey, LPCTSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData ) ;
1012 ALIAS: RegQueryValueEx RegQueryValueExW
1013 ! : RegQueryValueW ;
1014 ! : RegReplaceKeyA ;
1015 ! : RegReplaceKeyW ;
1016 ! : RegRestoreKeyA ;
1017 ! : RegRestoreKeyW ;
1018 ! : RegSaveKeyA ;
1019 ! : RegSaveKeyExA ;
1020 ! : RegSaveKeyExW ;
1021 ! : RegSaveKeyW ;
1022 ! : RegSetKeySecurity ;
1023 ! : RegSetValueA ;
1024 ! : RegSetValueExA ;
1025 ! : RegSetValueExW ;
1026 ! : RegSetValueW ;
1027 ! : RegUnLoadKeyA ;
1028 ! : RegUnLoadKeyW ;
1029 ! : RegisterEventSourceA ;
1030 ! : RegisterEventSourceW ;
1031 ! : RegisterIdleTask ;
1032 ! : RegisterServiceCtrlHandlerA ;
1033 ! : RegisterServiceCtrlHandlerExA ;
1034 ! : RegisterServiceCtrlHandlerExW ;
1035 ! : RegisterServiceCtrlHandlerW ;
1036 ! : RegisterTraceGuidsA ;
1037 ! : RegisterTraceGuidsW ;
1038 ! : RemoveTraceCallback ;
1039 ! : RemoveUsersFromEncryptedFile ;
1040 ! : ReportEventA ;
1041 ! : ReportEventW ;
1042 ! : RevertToSelf ;
1043 ! : SaferCloseLevel ;
1044 ! : SaferComputeTokenFromLevel ;
1045 ! : SaferCreateLevel ;
1046 ! : SaferGetLevelInformation ;
1047 ! : SaferGetPolicyInformation ;
1048 ! : SaferIdentifyLevel ;
1049 ! : SaferRecordEventLogEntry ;
1050 ! : SaferSetLevelInformation ;
1051 ! : SaferSetPolicyInformation ;
1052 ! : SaferiChangeRegistryScope ;
1053 ! : SaferiCompareTokenLevels ;
1054 ! : SaferiIsExecutableFileType ;
1055 ! : SaferiPopulateDefaultsInRegistry ;
1056 ! : SaferiRecordEventLogEntry ;
1057 ! : SaferiReplaceProcessThreadTokens ;
1058 ! : SaferiSearchMatchingHashRules ;
1059 ! : SetAclInformation ;
1060 ! : SetEntriesInAccessListA ;
1061 ! : SetEntriesInAccessListW ;
1062 ! : SetEntriesInAclA ;
1063 FUNCTION: DWORD SetEntriesInAclW ( ULONG cCountOfExplicitEntries, PEXPLICIT_ACCESS pListOfExplicitEntries, PACL OldAcl, PACL* NewAcl ) ;
1064 ALIAS: SetEntriesInAcl SetEntriesInAclW
1065 ! : SetEntriesInAuditListA ;
1066 ! : SetEntriesInAuditListW ;
1067 ! : SetFileSecurityA ;
1068 ! : SetFileSecurityW ;
1069 ! : SetInformationCodeAuthzLevelW ;
1070 ! : SetInformationCodeAuthzPolicyW ;
1071 ! : SetKernelObjectSecurity ;
1072 ! : SetNamedSecurityInfoA ;
1073 ! : SetNamedSecurityInfoExA ;
1074 ! : SetNamedSecurityInfoExW ;
1075 FUNCTION: DWORD SetNamedSecurityInfoW ( LPTSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID psidOwner, PSID psidGroup, PACL pDacl, PACL pSacl ) ;
1076 ALIAS: SetNamedSecurityInfo SetNamedSecurityInfoW
1077 ! : SetPrivateObjectSecurity ;
1078 ! : SetPrivateObjectSecurityEx ;
1079 ! : SetSecurityDescriptorControl ;
1080 ! : SetSecurityDescriptorDacl ;
1081 ! : SetSecurityDescriptorGroup ;
1082 ! : SetSecurityDescriptorOwner ;
1083 ! : SetSecurityDescriptorRMControl ;
1084 ! : SetSecurityDescriptorSacl ;
1085 ! : SetSecurityInfo ;
1086 ! : SetSecurityInfoExA ;
1087 ! : SetSecurityInfoExW ;
1088 ! : SetServiceBits ;
1089 ! : SetServiceObjectSecurity ;
1090 ! : SetServiceStatus ;
1091 ! : SetThreadToken ;
1092 ! : SetTokenInformation ;
1093 ! : SetTraceCallback ;
1094 ! : SetUserFileEncryptionKey ;
1095 ! : StartServiceA ;
1096 ! : StartServiceCtrlDispatcherA ;
1097 ! : StartServiceCtrlDispatcherW ;
1098 ! : StartServiceW ;
1099 ! : StartTraceA ;
1100 ! : StartTraceW ;
1101 ! : StopTraceA ;
1102 ! : StopTraceW ;
1103 ! : SynchronizeWindows31FilesAndWindowsNTRegistry ;
1104 ! : SystemFunction001 ;
1105 ! : SystemFunction002 ;
1106 ! : SystemFunction003 ;
1107 ! : SystemFunction004 ;
1108 ! : SystemFunction005 ;
1109 ! : SystemFunction006 ;
1110 ! : SystemFunction007 ;
1111 ! : SystemFunction008 ;
1112 ! : SystemFunction009 ;
1113 ! : SystemFunction010 ;
1114 ! : SystemFunction011 ;
1115 ! : SystemFunction012 ;
1116 ! : SystemFunction013 ;
1117 ! : SystemFunction014 ;
1118 ! : SystemFunction015 ;
1119 ! : SystemFunction016 ;
1120 ! : SystemFunction017 ;
1121 ! : SystemFunction018 ;
1122 ! : SystemFunction019 ;
1123 ! : SystemFunction020 ;
1124 ! : SystemFunction021 ;
1125 ! : SystemFunction022 ;
1126 ! : SystemFunction023 ;
1127 ! : SystemFunction024 ;
1128 ! : SystemFunction025 ;
1129 ! : SystemFunction026 ;
1130 ! : SystemFunction027 ;
1131 ! : SystemFunction028 ;
1132 ! : SystemFunction029 ;
1133 ! : SystemFunction030 ;
1134 ! : SystemFunction031 ;
1135 ! : SystemFunction032 ;
1136 ! : SystemFunction033 ;
1137 ! : SystemFunction034 ;
1138 ! : SystemFunction035 ;
1139 ! : SystemFunction036 ;
1140 ! : SystemFunction040 ;
1141 ! : SystemFunction041 ;
1142 ! : TraceEvent ;
1143 ! : TraceEventInstance ;
1144 ! : TraceMessage ;
1145 ! : TraceMessageVa ;
1146 ! : TreeResetNamedSecurityInfoA ;
1147 ! : TreeResetNamedSecurityInfoW ;
1148 ! : TrusteeAccessToObjectA ;
1149 ! : TrusteeAccessToObjectW ;
1150 ! : UninstallApplication ;
1151 ! : UnlockServiceDatabase ;
1152 ! : UnregisterIdleTask ;
1153 ! : UnregisterTraceGuids ;
1154 ! : UpdateTraceA ;
1155 ! : UpdateTraceW ;
1156 ! : WdmWmiServiceMain ;
1157 ! : WmiCloseBlock ;
1158 ! : WmiCloseTraceWithCursor ;
1159 ! : WmiConvertTimestamp ;
1160 ! : WmiDevInstToInstanceNameA ;
1161 ! : WmiDevInstToInstanceNameW ;
1162 ! : WmiEnumerateGuids ;
1163 ! : WmiExecuteMethodA ;
1164 ! : WmiExecuteMethodW ;
1165 ! : WmiFileHandleToInstanceNameA ;
1166 ! : WmiFileHandleToInstanceNameW ;
1167 ! : WmiFreeBuffer ;
1168 ! : WmiGetFirstTraceOffset ;
1169 ! : WmiGetNextEvent ;
1170 ! : WmiGetTraceHeader ;
1171 ! : WmiMofEnumerateResourcesA ;
1172 ! : WmiMofEnumerateResourcesW ;
1173 ! : WmiNotificationRegistrationA ;
1174 ! : WmiNotificationRegistrationW ;
1175 ! : WmiOpenBlock ;
1176 ! : WmiOpenTraceWithCursor ;
1177 ! : WmiParseTraceEvent ;
1178 ! : WmiQueryAllDataA ;
1179 ! : WmiQueryAllDataMultipleA ;
1180 ! : WmiQueryAllDataMultipleW ;
1181 ! : WmiQueryAllDataW ;
1182 ! : WmiQueryGuidInformation ;
1183 ! : WmiQuerySingleInstanceA ;
1184 ! : WmiQuerySingleInstanceMultipleA ;
1185 ! : WmiQuerySingleInstanceMultipleW ;
1186 ! : WmiQuerySingleInstanceW ;
1187 ! : WmiReceiveNotificationsA ;
1188 ! : WmiReceiveNotificationsW ;
1189 ! : WmiSetSingleInstanceA ;
1190 ! : WmiSetSingleInstanceW ;
1191 ! : WmiSetSingleItemA ;
1192 ! : WmiSetSingleItemW ;
1193 ! : Wow64Win32ApiEntry ;
1194 ! : WriteEncryptedFileRaw ;
1195
1196