d2a3644439395d69131c8c6a9b5464304aa68a24
[reactos.git] / reactos / dll / win32 / lsasrv / lsarpc.c
1 /* INCLUDES ****************************************************************/
2
3 #define WIN32_NO_STATUS
4 #include <windows.h>
5 #include <ntsecapi.h>
6 #define NTOS_MODE_USER
7 #include <ndk/ntndk.h>
8
9 #include "lsa_s.h"
10
11 #include <wine/debug.h>
12
13 typedef struct _LSA_DB_HANDLE
14 {
15 ULONG Signature;
16 ULONG Type;
17 LONG RefCount;
18 ACCESS_MASK AccessGranted;
19 } LSA_DB_HANDLE, *PLSA_DB_HANDLE;
20
21 #define LSAP_DB_SIGNATURE 0x12345678
22
23 static RTL_CRITICAL_SECTION PolicyHandleTableLock;
24
25 WINE_DEFAULT_DEBUG_CHANNEL(lsasrv);
26
27
28 /* FUNCTIONS ***************************************************************/
29
30 static LSAPR_HANDLE
31 LsapCreateDbHandle(ULONG Type)
32 {
33 PLSA_DB_HANDLE DbHandle;
34
35 // RtlEnterCriticalSection(&PolicyHandleTableLock);
36
37 DbHandle = (PLSA_DB_HANDLE)RtlAllocateHeap(RtlGetProcessHeap(),
38 0,
39 sizeof(LSA_DB_HANDLE));
40 if (DbHandle != NULL)
41 {
42 DbHandle->Signature = LSAP_DB_SIGNATURE;
43 DbHandle->RefCount = 1;
44 DbHandle->Type = Type;
45 }
46
47 // RtlLeaveCriticalSection(&PolicyHandleTableLock);
48
49 return (LSAPR_HANDLE)DbHandle;
50 }
51
52
53 static BOOL
54 LsapValidateDbHandle(LSAPR_HANDLE Handle)
55 {
56 PLSA_DB_HANDLE DbHandle = (PLSA_DB_HANDLE)Handle;
57 BOOL bValid = FALSE;
58
59 _SEH2_TRY
60 {
61 if (DbHandle->Signature == LSAP_DB_SIGNATURE)
62 bValid = TRUE;
63 }
64 _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
65 {
66 bValid = FALSE;
67 }
68 _SEH2_END;
69
70
71 return bValid;
72 }
73
74
75
76
77 VOID
78 LsarStartRpcServer(VOID)
79 {
80 RPC_STATUS Status;
81
82 RtlInitializeCriticalSection(&PolicyHandleTableLock);
83
84 TRACE("LsarStartRpcServer() called");
85
86 Status = RpcServerUseProtseqEpW(L"ncacn_np",
87 10,
88 L"\\pipe\\lsarpc",
89 NULL);
90 if (Status != RPC_S_OK)
91 {
92 WARN("RpcServerUseProtseqEpW() failed (Status %lx)\n", Status);
93 return;
94 }
95
96 Status = RpcServerRegisterIf(lsarpc_v0_0_s_ifspec,
97 NULL,
98 NULL);
99 if (Status != RPC_S_OK)
100 {
101 WARN("RpcServerRegisterIf() failed (Status %lx)\n", Status);
102 return;
103 }
104
105 Status = RpcServerListen(1, 20, TRUE);
106 if (Status != RPC_S_OK)
107 {
108 WARN("RpcServerListen() failed (Status %lx)\n", Status);
109 return;
110 }
111
112 TRACE("LsarStartRpcServer() done\n");
113 }
114
115
116 void __RPC_USER LSAPR_HANDLE_rundown(LSAPR_HANDLE hHandle)
117 {
118
119 }
120
121
122 /* Function 0 */
123 NTSTATUS LsarClose(
124 LSAPR_HANDLE *ObjectHandle)
125 {
126 NTSTATUS Status = STATUS_SUCCESS;
127
128 TRACE("0x%p\n", ObjectHandle);
129
130 // RtlEnterCriticalSection(&PolicyHandleTableLock);
131
132 if (LsapValidateDbHandle(*ObjectHandle))
133 {
134 RtlFreeHeap(RtlGetProcessHeap(), 0, *ObjectHandle);
135 *ObjectHandle = NULL;
136 }
137 else
138 Status = STATUS_INVALID_HANDLE;
139
140 // RtlLeaveCriticalSection(&PolicyHandleTableLock);
141
142 return Status;
143 }
144
145
146 /* Function 1 */
147 NTSTATUS LsarDelete(
148 LSAPR_HANDLE ObjectHandle)
149 {
150 /* Deprecated */
151 return STATUS_NOT_SUPPORTED;
152 }
153
154
155 /* Function 2 */
156 NTSTATUS LsarEnumeratePrivileges(
157 LSAPR_HANDLE PolicyHandle,
158 DWORD *EnumerationContext,
159 PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer,
160 DWORD PreferedMaximumLength)
161 {
162 UNIMPLEMENTED;
163 return STATUS_NOT_IMPLEMENTED;
164 }
165
166
167 /* Function 3 */
168 NTSTATUS LsarQuerySecurityObject(
169 LSAPR_HANDLE ObjectHandle,
170 SECURITY_INFORMATION SecurityInformation,
171 PLSAPR_SR_SECURITY_DESCRIPTOR *SecurityDescriptor)
172 {
173 UNIMPLEMENTED;
174 return STATUS_NOT_IMPLEMENTED;
175 }
176
177
178 /* Function 4 */
179 NTSTATUS LsarSetSecurityObject(
180 LSAPR_HANDLE ObjectHandle,
181 SECURITY_INFORMATION SecurityInformation,
182 PLSAPR_SR_SECURITY_DESCRIPTOR SecurityDescriptor)
183 {
184 UNIMPLEMENTED;
185 return STATUS_NOT_IMPLEMENTED;
186 }
187
188
189 /* Function 5 */
190 NTSTATUS LsarChangePassword(
191 handle_t IDL_handle,
192 PRPC_UNICODE_STRING String1,
193 PRPC_UNICODE_STRING String2,
194 PRPC_UNICODE_STRING String3,
195 PRPC_UNICODE_STRING String4,
196 PRPC_UNICODE_STRING String5)
197 {
198 /* Deprecated */
199 return STATUS_NOT_IMPLEMENTED;
200 }
201
202
203 /* Function 6 */
204 NTSTATUS LsarOpenPolicy(
205 LPWSTR SystemName,
206 PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes,
207 ACCESS_MASK DesiredAccess,
208 LSAPR_HANDLE *PolicyHandle)
209 {
210 NTSTATUS Status = STATUS_SUCCESS;
211
212 TRACE("LsarOpenPolicy called!\n");
213
214 RtlEnterCriticalSection(&PolicyHandleTableLock);
215
216 *PolicyHandle = LsapCreateDbHandle(0);
217 if (*PolicyHandle == NULL)
218 Status = STATUS_INSUFFICIENT_RESOURCES;
219
220 RtlLeaveCriticalSection(&PolicyHandleTableLock);
221
222 TRACE("LsarOpenPolicy done!\n");
223
224 return Status;
225 }
226
227
228 /* Function 7 */
229 NTSTATUS LsarQueryInformationPolicy(
230 LSAPR_HANDLE PolicyHandle,
231 POLICY_INFORMATION_CLASS InformationClass,
232 unsigned long PolicyInformation)
233 {
234 UNIMPLEMENTED;
235 return STATUS_NOT_IMPLEMENTED;
236 }
237
238
239 /* Function 8 */
240 NTSTATUS LsarSetInformationPolicy(
241 LSAPR_HANDLE PolicyHandle,
242 POLICY_INFORMATION_CLASS InformationClass,
243 unsigned long *PolicyInformation)
244 {
245 UNIMPLEMENTED;
246 return STATUS_NOT_IMPLEMENTED;
247 }
248
249
250 /* Function 9 */
251 NTSTATUS LsarClearAuditLog(
252 LSAPR_HANDLE ObjectHandle)
253 {
254 /* Deprecated */
255 return STATUS_NOT_IMPLEMENTED;
256 }
257
258
259 /* Function 10 */
260 NTSTATUS LsarCreateAccount(
261 LSAPR_HANDLE PolicyHandle,
262 PRPC_SID AccountSid,
263 ACCESS_MASK DesiredAccess,
264 LSAPR_HANDLE *AccountHandle)
265 {
266 UNIMPLEMENTED;
267 return STATUS_NOT_IMPLEMENTED;
268 }
269
270
271 /* Function 11 */
272 NTSTATUS LsarEnumerateAccounts(
273 LSAPR_HANDLE PolicyHandle,
274 DWORD *EnumerationContext,
275 PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer,
276 DWORD PreferedMaximumLength)
277 {
278 UNIMPLEMENTED;
279 return STATUS_NOT_IMPLEMENTED;
280 }
281
282
283 /* Function 12 */
284 NTSTATUS LsarCreateTrustedDomain(
285 LSAPR_HANDLE PolicyHandle,
286 PLSAPR_TRUST_INFORMATION TrustedDomainInformation,
287 ACCESS_MASK DesiredAccess,
288 LSAPR_HANDLE *TrustedDomainHandle)
289 {
290 UNIMPLEMENTED;
291 return STATUS_NOT_IMPLEMENTED;
292 }
293
294
295 /* Function 13 */
296 NTSTATUS LsarEnumerateTrustedDomains(
297 LSAPR_HANDLE PolicyHandle,
298 DWORD *EnumerationContext,
299 PLSAPR_TRUSTED_ENUM_BUFFER EnumerationBuffer,
300 DWORD PreferedMaximumLength)
301 {
302 UNIMPLEMENTED;
303 return STATUS_NOT_IMPLEMENTED;
304 }
305
306
307 /* Function 14 */
308 NTSTATUS LsarLookupNames(
309 LSAPR_HANDLE PolicyHandle,
310 DWORD Count,
311 PRPC_UNICODE_STRING Names,
312 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
313 PLSAPR_TRANSLATED_SIDS TranslatedSids,
314 LSAP_LOOKUP_LEVEL LookupLevel,
315 DWORD *MappedCount)
316 {
317 UNIMPLEMENTED;
318 return STATUS_NOT_IMPLEMENTED;
319 }
320
321
322 /* Function 15 */
323 NTSTATUS LsarLookupSids(
324 LSAPR_HANDLE PolicyHandle,
325 PLSAPR_SID_ENUM_BUFFER SidEnumBuffer,
326 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
327 PLSAPR_TRANSLATED_NAMES TranslatedNames,
328 LSAP_LOOKUP_LEVEL LookupLevel,
329 DWORD *MappedCount)
330 {
331 UNIMPLEMENTED;
332 return STATUS_NOT_IMPLEMENTED;
333 }
334
335
336 /* Function 16 */
337 NTSTATUS LsarCreateSecret(
338 LSAPR_HANDLE PolicyHandle,
339 PRPC_UNICODE_STRING SecretName,
340 ACCESS_MASK DesiredAccess,
341 LSAPR_HANDLE *SecretHandle)
342 {
343 UNIMPLEMENTED;
344 return STATUS_NOT_IMPLEMENTED;
345 }
346
347
348 /* Function 17 */
349 NTSTATUS LsarOpenAccount(
350 LSAPR_HANDLE PolicyHandle,
351 PRPC_SID AccountSid,
352 ACCESS_MASK DesiredAccess,
353 LSAPR_HANDLE *AccountHandle)
354 {
355 UNIMPLEMENTED;
356 return STATUS_NOT_IMPLEMENTED;
357 }
358
359
360 /* Function 18 */
361 NTSTATUS LsarEnumeratePrivilegesAccount(
362 LSAPR_HANDLE AccountHandle,
363 PLSAPR_PRIVILEGE_SET *Privileges)
364 {
365 UNIMPLEMENTED;
366 return STATUS_NOT_IMPLEMENTED;
367 }
368
369
370 /* Function 19 */
371 NTSTATUS LsarAddPrivilegesToAccount(
372 LSAPR_HANDLE AccountHandle,
373 PLSAPR_PRIVILEGE_SET Privileges)
374 {
375 UNIMPLEMENTED;
376 return STATUS_NOT_IMPLEMENTED;
377 }
378
379
380 /* Function 20 */
381 NTSTATUS LsarRemovePrivilegesFromAccount(
382 LSAPR_HANDLE AccountHandle,
383 BOOL AllPrivileges,
384 PLSAPR_PRIVILEGE_SET Privileges)
385 {
386 UNIMPLEMENTED;
387 return STATUS_NOT_IMPLEMENTED;
388 }
389
390
391 /* Function 21 */
392 NTSTATUS LsarGetQuotasForAccount(
393 LSAPR_HANDLE AccountHandle,
394 PQUOTA_LIMITS QuotaLimits)
395 {
396 UNIMPLEMENTED;
397 return STATUS_NOT_IMPLEMENTED;
398 }
399
400
401 /* Function 22 */
402 NTSTATUS LsarSetQuotasForAccount(
403 LSAPR_HANDLE AccountHandle,
404 PQUOTA_LIMITS QuotaLimits)
405 {
406 UNIMPLEMENTED;
407 return STATUS_NOT_IMPLEMENTED;
408 }
409
410
411 /* Function 23 */
412 NTSTATUS LsarGetSystemAccessAccount(
413 LSAPR_HANDLE AccountHandle,
414 ACCESS_MASK *SystemAccess)
415 {
416 UNIMPLEMENTED;
417 return STATUS_NOT_IMPLEMENTED;
418 }
419
420
421 /* Function 24 */
422 NTSTATUS LsarSetSystemAccessAccount(
423 LSAPR_HANDLE AccountHandle,
424 ACCESS_MASK SystemAccess)
425 {
426 UNIMPLEMENTED;
427 return STATUS_NOT_IMPLEMENTED;
428 }
429
430
431 /* Function 25 */
432 NTSTATUS LsarOpenTrustedDomain(
433 LSAPR_HANDLE PolicyHandle,
434 PRPC_SID TrustedDomainSid,
435 ACCESS_MASK DesiredAccess,
436 LSAPR_HANDLE *TrustedDomainHandle)
437 {
438 UNIMPLEMENTED;
439 return STATUS_NOT_IMPLEMENTED;
440 }
441
442
443 /* Function 26 */
444 NTSTATUS LsarQueryInfoTrustedDomain(
445 LSAPR_HANDLE TrustedDomainHandle,
446 TRUSTED_INFORMATION_CLASS InformationClass,
447 PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation)
448 {
449 UNIMPLEMENTED;
450 return STATUS_NOT_IMPLEMENTED;
451 }
452
453
454 /* Function 27 */
455 NTSTATUS LsarSetInformationTrustedDomain(
456 LSAPR_HANDLE TrustedDomainHandle,
457 TRUSTED_INFORMATION_CLASS InformationClass,
458 PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation)
459 {
460 UNIMPLEMENTED;
461 return STATUS_NOT_IMPLEMENTED;
462 }
463
464
465 /* Function 28 */
466 NTSTATUS LsarOpenSecret(
467 LSAPR_HANDLE PolicyHandle,
468 PRPC_UNICODE_STRING SecretName,
469 ACCESS_MASK DesiredAccess,
470 LSAPR_HANDLE *SecretHandle)
471 {
472 UNIMPLEMENTED;
473 return STATUS_NOT_IMPLEMENTED;
474 }
475
476
477 /* Function 29 */
478 NTSTATUS LsarSetSecret(
479 LSAPR_HANDLE *SecretHandle,
480 PLSAPR_CR_CIPHER_VALUE EncryptedCurrentValue,
481 PLSAPR_CR_CIPHER_VALUE EncryptedOldValue)
482 {
483 UNIMPLEMENTED;
484 return STATUS_NOT_IMPLEMENTED;
485 }
486
487
488 /* Function 30 */
489 NTSTATUS LsarQuerySecret(
490 LSAPR_HANDLE SecretHandle,
491 PLSAPR_CR_CIPHER_VALUE *EncryptedCurrentValue,
492 PLARGE_INTEGER CurrentValueSetTime,
493 PLSAPR_CR_CIPHER_VALUE *EncryptedOldValue,
494 PLARGE_INTEGER OldValueSetTime)
495 {
496 UNIMPLEMENTED;
497 return STATUS_NOT_IMPLEMENTED;
498 }
499
500
501 /* Function 31 */
502 NTSTATUS LsarLookupPrivilegeValue(
503 LSAPR_HANDLE PolicyHandle,
504 PRPC_UNICODE_STRING Name,
505 PLUID Value)
506 {
507 UNIMPLEMENTED;
508 return STATUS_NOT_IMPLEMENTED;
509 }
510
511
512 /* Function 32 */
513 NTSTATUS LsarLookupPrivilegeName(
514 LSAPR_HANDLE PolicyHandle,
515 PLUID Value,
516 PRPC_UNICODE_STRING *Name)
517 {
518 UNIMPLEMENTED;
519 return STATUS_NOT_IMPLEMENTED;
520 }
521
522
523 /* Function 33 */
524 NTSTATUS LsarLookupPrivilegeDisplayName(
525 LSAPR_HANDLE PolicyHandle,
526 PRPC_UNICODE_STRING Name,
527 USHORT ClientLanguage,
528 USHORT ClientSystemDefaultLanguage,
529 PRPC_UNICODE_STRING *DisplayName,
530 USHORT *LanguageReturned)
531 {
532 UNIMPLEMENTED;
533 return STATUS_NOT_IMPLEMENTED;
534 }
535
536
537 /* Function 34 */
538 NTSTATUS LsarDeleteObject(
539 LSAPR_HANDLE *ObjectHandle)
540 {
541 UNIMPLEMENTED;
542 return STATUS_NOT_IMPLEMENTED;
543 }
544
545
546 /* Function 35 */
547 NTSTATUS LsarEnumerateAccountsWithUserRight(
548 LSAPR_HANDLE PolicyHandle,
549 PRPC_UNICODE_STRING UserRight,
550 PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer)
551 {
552 UNIMPLEMENTED;
553 return STATUS_NOT_IMPLEMENTED;
554 }
555
556
557 /* Function 36 */
558 NTSTATUS LsarEnmuerateAccountRights(
559 LSAPR_HANDLE PolicyHandle,
560 PRPC_SID AccountSid,
561 PLSAPR_USER_RIGHT_SET UserRights)
562 {
563 UNIMPLEMENTED;
564 return STATUS_NOT_IMPLEMENTED;
565 }
566
567
568 /* Function 37 */
569 NTSTATUS LsarAddAccountRights(
570 LSAPR_HANDLE PolicyHandle,
571 PRPC_SID AccountSid,
572 PLSAPR_USER_RIGHT_SET UserRights)
573 {
574 UNIMPLEMENTED;
575 return STATUS_NOT_IMPLEMENTED;
576 }
577
578
579 /* Function 38 */
580 NTSTATUS LsarRemoveAccountRights(
581 LSAPR_HANDLE PolicyHandle,
582 PRPC_SID AccountSid,
583 BOOL AllRights,
584 PLSAPR_USER_RIGHT_SET UserRights)
585 {
586 UNIMPLEMENTED;
587 return STATUS_NOT_IMPLEMENTED;
588 }
589
590
591 /* Function 39 */
592 NTSTATUS LsarQueryTrustedDomainInfo(
593 LSAPR_HANDLE PolicyHandle,
594 PRPC_SID TrustedDomainSid,
595 TRUSTED_INFORMATION_CLASS InformationClass,
596 PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation)
597 {
598 UNIMPLEMENTED;
599 return STATUS_NOT_IMPLEMENTED;
600 }
601
602
603 /* Function 40 */
604 NTSTATUS LsarSetTrustedDomainInfo(
605 LSAPR_HANDLE PolicyHandle,
606 PRPC_SID TrustedDomainSid,
607 TRUSTED_INFORMATION_CLASS InformationClass,
608 PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation)
609 {
610 UNIMPLEMENTED;
611 return STATUS_NOT_IMPLEMENTED;
612 }
613
614
615 /* Function 41 */
616 NTSTATUS LsarDeleteTrustedDomain(
617 LSAPR_HANDLE PolicyHandle,
618 PRPC_SID TrustedDomainSid)
619 {
620 UNIMPLEMENTED;
621 return STATUS_NOT_IMPLEMENTED;
622 }
623
624
625 /* Function 42 */
626 NTSTATUS LsarStorePrivateData(
627 LSAPR_HANDLE PolicyHandle,
628 PRPC_UNICODE_STRING KeyName,
629 PLSAPR_CR_CIPHER_VALUE EncryptedData)
630 {
631 UNIMPLEMENTED;
632 return STATUS_NOT_IMPLEMENTED;
633 }
634
635
636 /* Function 43 */
637 NTSTATUS LsarRetrievePrivateData(
638 LSAPR_HANDLE PolicyHandle,
639 PRPC_UNICODE_STRING KeyName,
640 PLSAPR_CR_CIPHER_VALUE *EncryptedData)
641 {
642 UNIMPLEMENTED;
643 return STATUS_NOT_IMPLEMENTED;
644 }
645
646
647 /* Function 44 */
648 NTSTATUS LsarOpenPolicy2(
649 LPWSTR SystemName,
650 PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes,
651 ACCESS_MASK DesiredAccess,
652 LSAPR_HANDLE *PolicyHandle)
653 {
654 UNIMPLEMENTED;
655 return STATUS_NOT_IMPLEMENTED;
656 }
657
658
659 /* Function 45 */
660 NTSTATUS LsarGetUserName(
661 LPWSTR SystemName,
662 PRPC_UNICODE_STRING *UserName,
663 PRPC_UNICODE_STRING *DomainName)
664 {
665 UNIMPLEMENTED;
666 return STATUS_NOT_IMPLEMENTED;
667 }
668
669
670 /* Function 46 */
671 NTSTATUS LsarQueryInformationPolicy2(
672 LSAPR_HANDLE PolicyHandle,
673 POLICY_INFORMATION_CLASS InformationClass,
674 unsigned long *PolicyInformation)
675 {
676 UNIMPLEMENTED;
677 return STATUS_NOT_IMPLEMENTED;
678 }
679
680
681 /* Function 47 */
682 NTSTATUS LsarSetInformationPolicy2(
683 LSAPR_HANDLE PolicyHandle,
684 POLICY_INFORMATION_CLASS InformationClass,
685 unsigned long PolicyInformation)
686 {
687 UNIMPLEMENTED;
688 return STATUS_NOT_IMPLEMENTED;
689 }
690
691
692 /* Function 48 */
693 NTSTATUS LsarQueryTrustedDomainInfoByName(
694 LSAPR_HANDLE PolicyHandle,
695 PRPC_UNICODE_STRING TrustedDomainName,
696 POLICY_INFORMATION_CLASS InformationClass,
697 unsigned long *PolicyInformation)
698 {
699 UNIMPLEMENTED;
700 return STATUS_NOT_IMPLEMENTED;
701 }
702
703
704 /* Function 49 */
705 NTSTATUS LsarSetTrustedDomainInfoByName(
706 LSAPR_HANDLE PolicyHandle,
707 PRPC_UNICODE_STRING TrustedDomainName,
708 POLICY_INFORMATION_CLASS InformationClass,
709 unsigned long PolicyInformation)
710 {
711 UNIMPLEMENTED;
712 return STATUS_NOT_IMPLEMENTED;
713 }
714
715
716 /* Function 50 */
717 NTSTATUS LsarEnumerateTrustedDomainsEx(
718 LSAPR_HANDLE PolicyHandle,
719 DWORD *EnumerationContext,
720 PLSAPR_TRUSTED_ENUM_BUFFER_EX EnumerationBuffer,
721 DWORD PreferedMaximumLength)
722 {
723 UNIMPLEMENTED;
724 return STATUS_NOT_IMPLEMENTED;
725 }
726
727
728 /* Function 51 */
729 NTSTATUS LsarCreateTrustedDomainEx(
730 LSAPR_HANDLE PolicyHandle,
731 PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation,
732 PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION AuthentificationInformation,
733 ACCESS_MASK DesiredAccess,
734 LSAPR_HANDLE *TrustedDomainHandle)
735 {
736 UNIMPLEMENTED;
737 return STATUS_NOT_IMPLEMENTED;
738 }
739
740
741 /* Function 52 */
742 NTSTATUS LsarSetPolicyReplicationHandle(
743 PLSAPR_HANDLE PolicyHandle)
744 {
745 /* Deprecated */
746 return STATUS_NOT_IMPLEMENTED;
747 }
748
749
750 /* Function 53 */
751 NTSTATUS LsarQueryDomainInformationPolicy(
752 LSAPR_HANDLE PolicyHandle,
753 POLICY_INFORMATION_CLASS InformationClass,
754 unsigned long *PolicyInformation)
755 {
756 UNIMPLEMENTED;
757 return STATUS_NOT_IMPLEMENTED;
758 }
759
760
761 /* Function 54 */
762 NTSTATUS LsarSetDomainInformationPolicy(
763 LSAPR_HANDLE PolicyHandle,
764 POLICY_INFORMATION_CLASS InformationClass,
765 unsigned long PolicyInformation)
766 {
767 UNIMPLEMENTED;
768 return STATUS_NOT_IMPLEMENTED;
769 }
770
771
772 /* Function 55 */
773 NTSTATUS LsarOpenTrustedDomainByName(
774 LSAPR_HANDLE PolicyHandle,
775 PRPC_UNICODE_STRING TrustedDomainName,
776 ACCESS_MASK DesiredAccess,
777 LSAPR_HANDLE *TrustedDomainHandle)
778 {
779 UNIMPLEMENTED;
780 return STATUS_NOT_IMPLEMENTED;
781 }
782
783
784 /* Function 56 */
785 NTSTATUS LsarTestCall(
786 handle_t hBinding)
787 {
788 UNIMPLEMENTED;
789 return STATUS_NOT_IMPLEMENTED;
790 }
791
792
793 /* Function 57 */
794 NTSTATUS LsarLookupSids2(
795 LSAPR_HANDLE PolicyHandle,
796 PLSAPR_SID_ENUM_BUFFER SidEnumBuffer,
797 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
798 PLSAPR_TRANSLATED_NAMES_EX TranslatedNames,
799 LSAP_LOOKUP_LEVEL LookupLevel,
800 DWORD *MappedCount,
801 DWORD LookupOptions,
802 DWORD ClientRevision)
803 {
804 UNIMPLEMENTED;
805 return STATUS_NOT_IMPLEMENTED;
806 }
807
808
809 /* Function 58 */
810 NTSTATUS LsarLookupNames2(
811 LSAPR_HANDLE PolicyHandle,
812 DWORD Count,
813 PRPC_UNICODE_STRING Names,
814 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
815 PLSAPR_TRANSLATED_SID_EX TranslatedSids,
816 LSAP_LOOKUP_LEVEL LookupLevel,
817 DWORD *MappedCount,
818 DWORD LookupOptions,
819 DWORD ClientRevision)
820 {
821 UNIMPLEMENTED;
822 return STATUS_NOT_IMPLEMENTED;
823 }
824
825
826 /* Function 59 */
827 NTSTATUS LsarCreateTrustedDomainEx2(
828 LSAPR_HANDLE PolicyHandle,
829 PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation,
830 PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL AuthentificationInformation,
831 ACCESS_MASK DesiredAccess,
832 LSAPR_HANDLE *TrustedDomainHandle)
833 {
834 UNIMPLEMENTED;
835 return STATUS_NOT_IMPLEMENTED;
836 }
837
838
839 /* Function 60 */
840 NTSTATUS CredrWrite(
841 handle_t hBinding)
842 {
843 UNIMPLEMENTED;
844 return STATUS_NOT_IMPLEMENTED;
845 }
846
847
848 /* Function 61 */
849 NTSTATUS CredrRead(
850 handle_t hBinding)
851 {
852 UNIMPLEMENTED;
853 return STATUS_NOT_IMPLEMENTED;
854 }
855
856
857 /* Function 62 */
858 NTSTATUS CredrEnumerate(
859 handle_t hBinding)
860 {
861 UNIMPLEMENTED;
862 return STATUS_NOT_IMPLEMENTED;
863 }
864
865
866 /* Function 63 */
867 NTSTATUS CredrWriteDomainCredentials(
868 handle_t hBinding)
869 {
870 UNIMPLEMENTED;
871 return STATUS_NOT_IMPLEMENTED;
872 }
873
874
875 /* Function 64 */
876 NTSTATUS CredrReadDomainCredentials(
877 handle_t hBinding)
878 {
879 UNIMPLEMENTED;
880 return STATUS_NOT_IMPLEMENTED;
881 }
882
883
884 /* Function 65 */
885 NTSTATUS CredrDelete(
886 handle_t hBinding)
887 {
888 UNIMPLEMENTED;
889 return STATUS_NOT_IMPLEMENTED;
890 }
891
892
893 /* Function 66 */
894 NTSTATUS CredrGetTargetInfo(
895 handle_t hBinding)
896 {
897 UNIMPLEMENTED;
898 return STATUS_NOT_IMPLEMENTED;
899 }
900
901
902 /* Function 67 */
903 NTSTATUS CredrProfileLoaded(
904 handle_t hBinding)
905 {
906 UNIMPLEMENTED;
907 return STATUS_NOT_IMPLEMENTED;
908 }
909
910
911 /* Function 68 */
912 NTSTATUS LsarLookupNames3(
913 LSAPR_HANDLE PolicyHandle,
914 DWORD Count,
915 PRPC_UNICODE_STRING Names,
916 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
917 PLSAPR_TRANSLATED_SID_EX2 TranslatedSids,
918 LSAP_LOOKUP_LEVEL LookupLevel,
919 DWORD *MappedCount,
920 DWORD LookupOptions,
921 DWORD ClientRevision)
922 {
923 UNIMPLEMENTED;
924 return STATUS_NOT_IMPLEMENTED;
925 }
926
927
928 /* Function 69 */
929 NTSTATUS CredrGetSessionTypes(
930 handle_t hBinding)
931 {
932 UNIMPLEMENTED;
933 return STATUS_NOT_IMPLEMENTED;
934 }
935
936
937 /* Function 70 */
938 NTSTATUS LsarRegisterAuditEvent(
939 handle_t hBinding)
940 {
941 UNIMPLEMENTED;
942 return STATUS_NOT_IMPLEMENTED;
943 }
944
945
946 /* Function 71 */
947 NTSTATUS LsarGenAuditEvent(
948 handle_t hBinding)
949 {
950 UNIMPLEMENTED;
951 return STATUS_NOT_IMPLEMENTED;
952 }
953
954
955 /* Function 72 */
956 NTSTATUS LsarUnregisterAuditEvent(
957 handle_t hBinding)
958 {
959 UNIMPLEMENTED;
960 return STATUS_NOT_IMPLEMENTED;
961 }
962
963
964 /* Function 73 */
965 NTSTATUS LsarQueryForestTrustInformation(
966 LSAPR_HANDLE PolicyHandle,
967 PLSA_UNICODE_STRING TrustedDomainName,
968 LSA_FOREST_TRUST_RECORD_TYPE HighestRecordType,
969 PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo)
970 {
971 UNIMPLEMENTED;
972 return STATUS_NOT_IMPLEMENTED;
973 }
974
975
976 /* Function 74 */
977 NTSTATUS LsarSetForestTrustInformation(
978 LSAPR_HANDLE PolicyHandle,
979 PLSA_UNICODE_STRING TrustedDomainName,
980 LSA_FOREST_TRUST_RECORD_TYPE HighestRecordType,
981 PLSA_FOREST_TRUST_INFORMATION ForestTrustInfo,
982 BOOL CheckOnly,
983 PLSA_FOREST_TRUST_COLLISION_INFORMATION *CollisionInfo)
984 {
985 UNIMPLEMENTED;
986 return STATUS_NOT_IMPLEMENTED;
987 }
988
989
990 /* Function 75 */
991 NTSTATUS CredrRename(
992 handle_t hBinding)
993 {
994 UNIMPLEMENTED;
995 return STATUS_NOT_IMPLEMENTED;
996 }
997
998
999 /* Function 76 */
1000 NTSTATUS LsarLookupSids3(
1001 LSAPR_HANDLE PolicyHandle,
1002 PLSAPR_SID_ENUM_BUFFER SidEnumBuffer,
1003 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
1004 PLSAPR_TRANSLATED_NAMES_EX TranslatedNames,
1005 LSAP_LOOKUP_LEVEL LookupLevel,
1006 DWORD *MappedCount,
1007 DWORD LookupOptions,
1008 DWORD ClientRevision)
1009 {
1010 UNIMPLEMENTED;
1011 return STATUS_NOT_IMPLEMENTED;
1012 }
1013
1014
1015 /* Function 77 */
1016 NTSTATUS LsarLookupNames4(
1017 handle_t RpcHandle,
1018 DWORD Count,
1019 PRPC_UNICODE_STRING Names,
1020 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
1021 PLSAPR_TRANSLATED_SID_EX2 TranslatedSids,
1022 LSAP_LOOKUP_LEVEL LookupLevel,
1023 DWORD *MappedCount,
1024 DWORD LookupOptions,
1025 DWORD ClientRevision)
1026 {
1027 UNIMPLEMENTED;
1028 return STATUS_NOT_IMPLEMENTED;
1029 }
1030
1031
1032 /* Function 78 */
1033 NTSTATUS LsarOpenPolicySce(
1034 handle_t hBinding)
1035 {
1036 UNIMPLEMENTED;
1037 return STATUS_NOT_IMPLEMENTED;
1038 }
1039
1040
1041 /* Function 79 */
1042 NTSTATUS LsarAdtRegisterSecurityEventSource(
1043 handle_t hBinding)
1044 {
1045 UNIMPLEMENTED;
1046 return STATUS_NOT_IMPLEMENTED;
1047 }
1048
1049
1050 /* Function 80 */
1051 NTSTATUS LsarAdtUnregisterSecurityEventSource(
1052 handle_t hBinding)
1053 {
1054 UNIMPLEMENTED;
1055 return STATUS_NOT_IMPLEMENTED;
1056 }
1057
1058
1059 /* Function 81 */
1060 NTSTATUS LsarAdtReportSecurityEvent(
1061 handle_t hBinding)
1062 {
1063 UNIMPLEMENTED;
1064 return STATUS_NOT_IMPLEMENTED;
1065 }
1066
1067
1068 /* Function 82 */
1069 NTSTATUS CredrFindBestCredential(
1070 handle_t hBinding)
1071 {
1072 UNIMPLEMENTED;
1073 return STATUS_NOT_IMPLEMENTED;
1074 }
1075
1076
1077 /* Function 83 */
1078 NTSTATUS LsarSetAuditPolicy(
1079 handle_t hBinding)
1080 {
1081 UNIMPLEMENTED;
1082 return STATUS_NOT_IMPLEMENTED;
1083 }
1084
1085
1086 /* Function 84 */
1087 NTSTATUS LsarQueryAuditPolicy(
1088 handle_t hBinding)
1089 {
1090 UNIMPLEMENTED;
1091 return STATUS_NOT_IMPLEMENTED;
1092 }
1093
1094
1095 /* Function 85 */
1096 NTSTATUS LsarEnumerateAuditPolicy(
1097 handle_t hBinding)
1098 {
1099 UNIMPLEMENTED;
1100 return STATUS_NOT_IMPLEMENTED;
1101 }
1102
1103
1104 /* Function 86 */
1105 NTSTATUS LsarEnumerateAuditCategories(
1106 handle_t hBinding)
1107 {
1108 UNIMPLEMENTED;
1109 return STATUS_NOT_IMPLEMENTED;
1110 }
1111
1112
1113 /* Function 87 */
1114 NTSTATUS LsarEnumerateAuditSubCategories(
1115 handle_t hBinding)
1116 {
1117 UNIMPLEMENTED;
1118 return STATUS_NOT_IMPLEMENTED;
1119 }
1120
1121
1122 /* Function 88 */
1123 NTSTATUS LsarLookupAuditCategoryName(
1124 handle_t hBinding)
1125 {
1126 UNIMPLEMENTED;
1127 return STATUS_NOT_IMPLEMENTED;
1128 }
1129
1130
1131 /* Function 89 */
1132 NTSTATUS LsarLookupAuditSubCategoryName(
1133 handle_t hBinding)
1134 {
1135 UNIMPLEMENTED;
1136 return STATUS_NOT_IMPLEMENTED;
1137 }
1138
1139
1140 /* Function 90 */
1141 NTSTATUS LsarSetAuditSecurity(
1142 handle_t hBinding)
1143 {
1144 UNIMPLEMENTED;
1145 return STATUS_NOT_IMPLEMENTED;
1146 }
1147
1148
1149 /* Function 91 */
1150 NTSTATUS LsarQueryAuditSecurity(
1151 handle_t hBinding)
1152 {
1153 UNIMPLEMENTED;
1154 return STATUS_NOT_IMPLEMENTED;
1155 }
1156
1157
1158 /* Function 92 */
1159 NTSTATUS CredReadByTokenHandle(
1160 handle_t hBinding)
1161 {
1162 UNIMPLEMENTED;
1163 return STATUS_NOT_IMPLEMENTED;
1164 }
1165
1166
1167 /* Function 93 */
1168 NTSTATUS CredrRestoreCredentials(
1169 handle_t hBinding)
1170 {
1171 UNIMPLEMENTED;
1172 return STATUS_NOT_IMPLEMENTED;
1173 }
1174
1175
1176 /* Function 94 */
1177 NTSTATUS CredrBackupCredentials(
1178 handle_t hBinding)
1179 {
1180 UNIMPLEMENTED;
1181 return STATUS_NOT_IMPLEMENTED;
1182 }
1183
1184 /* EOF */