Reactos
at master 805 lines 17 kB view raw
1/* 2 * PROJECT: ReactOS NetLogon Service 3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) 4 * PURPOSE: NetLogon service RPC server 5 * COPYRIGHT: Eric Kohl 2019 <eric.kohl@reactos.org> 6 */ 7 8/* INCLUDES *****************************************************************/ 9 10#include "precomp.h" 11 12//#include "lmerr.h" 13 14WINE_DEFAULT_DEBUG_CHANNEL(netlogon); 15 16/* FUNCTIONS *****************************************************************/ 17 18DWORD 19WINAPI 20RpcThreadRoutine( 21 LPVOID lpParameter) 22{ 23 RPC_STATUS Status; 24 25 Status = RpcServerUseProtseqEpW(L"ncacn_np", 20, L"\\pipe\\netlogon", NULL); 26 if (Status != RPC_S_OK) 27 { 28 ERR("RpcServerUseProtseqEpW() failed (Status %lx)\n", Status); 29 return 0; 30 } 31 32 Status = RpcServerRegisterIf(logon_v1_0_s_ifspec, NULL, NULL); 33 if (Status != RPC_S_OK) 34 { 35 ERR("RpcServerRegisterIf() failed (Status %lx)\n", Status); 36 return 0; 37 } 38 39 Status = RpcServerListen(1, RPC_C_LISTEN_MAX_CALLS_DEFAULT, FALSE); 40 if (Status != RPC_S_OK) 41 { 42 ERR("RpcServerListen() failed (Status %lx)\n", Status); 43 } 44 45 return 0; 46} 47 48 49void __RPC_FAR * __RPC_USER midl_user_allocate(SIZE_T len) 50{ 51 return HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len); 52} 53 54 55void __RPC_USER midl_user_free(void __RPC_FAR * ptr) 56{ 57 HeapFree(GetProcessHeap(), 0, ptr); 58} 59 60 61/* Function 0 */ 62NET_API_STATUS 63__stdcall 64NetrLogonUasLogon( 65 _In_opt_ LOGONSRV_HANDLE ServerName, 66 _In_ wchar_t *UserName, 67 _In_ wchar_t *Workstation, 68 _Out_ PNETLOGON_VALIDATION_UAS_INFO *ValidationInformation) 69{ 70 UNIMPLEMENTED; 71 return 0; 72} 73 74 75/* Function 1 */ 76NET_API_STATUS 77__stdcall 78NetrLogonUasLogoff( 79 _In_opt_ LOGONSRV_HANDLE ServerName, 80 _In_ wchar_t *UserName, 81 _In_ wchar_t *Workstation, 82 _Out_ PNETLOGON_LOGOFF_UAS_INFO LogoffInformation) 83{ 84 UNIMPLEMENTED; 85 return 0; 86} 87 88 89/* Function 2 */ 90NTSTATUS 91__stdcall 92NetrLogonSamLogon( 93 _In_opt_ LOGONSRV_HANDLE LogonServer, 94 _In_opt_ wchar_t *ComputerName, 95 _In_opt_ PNETLOGON_AUTHENTICATOR Authenticator, 96 _Inout_opt_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 97 _In_ NETLOGON_LOGON_INFO_CLASS LogonLevel, 98 _In_ PNETLOGON_LEVEL LogonInformation, 99 _In_ NETLOGON_VALIDATION_INFO_CLASS ValidationLevel, 100 _Out_ PNETLOGON_VALIDATION ValidationInformation, 101 _Out_ UCHAR *Authoritative) 102{ 103 UNIMPLEMENTED; 104 return 0; 105} 106 107 108/* Function 3 */ 109NTSTATUS 110__stdcall 111NetrLogonSamLogoff( 112 _In_opt_ LOGONSRV_HANDLE LogonServer, 113 _In_opt_ wchar_t *ComputerName, 114 _In_opt_ PNETLOGON_AUTHENTICATOR Authenticator, 115 _Inout_opt_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 116 _In_ NETLOGON_LOGON_INFO_CLASS LogonLevel, 117 _In_ PNETLOGON_LEVEL LogonInformation) 118{ 119 UNIMPLEMENTED; 120 return 0; 121} 122 123 124/* Function 4 */ 125NTSTATUS 126__stdcall 127NetrServerReqChallenge( 128 _In_opt_ LOGONSRV_HANDLE PrimaryName, 129 _In_ wchar_t *ComputerName, 130 _In_ PNETLOGON_CREDENTIAL ClientChallenge, 131 _Out_ PNETLOGON_CREDENTIAL ServerChallenge) 132{ 133 UNIMPLEMENTED; 134 return 0; 135} 136 137 138/* Function 5 */ 139NTSTATUS 140__stdcall 141NetrServerAuthenticate( 142 _In_opt_ LOGONSRV_HANDLE PrimaryName, 143 _In_ wchar_t *AccountName, 144 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 145 _In_ wchar_t *ComputerName, 146 _In_ PNETLOGON_CREDENTIAL ClientCredential, 147 _Out_ PNETLOGON_CREDENTIAL ServerCredential) 148{ 149 UNIMPLEMENTED; 150 return 0; 151} 152 153 154/* Function 6 */ 155NTSTATUS 156__stdcall 157NetrServerPasswordSet( 158 _In_opt_ LOGONSRV_HANDLE PrimaryName, 159 _In_ wchar_t *AccountName, 160 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 161 _In_ wchar_t *ComputerName, 162 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 163 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 164 _In_ PENCRYPTED_NT_OWF_PASSWORD UasNewPassword) 165{ 166 UNIMPLEMENTED; 167 return 0; 168} 169 170 171/* Function 7 */ 172NTSTATUS 173__stdcall 174NetrDatabaseDeltas( 175 _In_ LOGONSRV_HANDLE PrimaryName, 176 _In_ wchar_t *ComputerName, 177 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 178 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 179 _In_ DWORD DatabaseID, 180 _Inout_ PNLPR_MODIFIED_COUNT DomainModifiedCount, 181 _Out_ PNETLOGON_DELTA_ENUM_ARRAY *DeltaArray, 182 _In_ DWORD PreferredMaximumLength) 183{ 184 UNIMPLEMENTED; 185 return 0; 186} 187 188 189/* Function 8 */ 190NTSTATUS 191__stdcall 192NetrDatabaseSync( 193 _In_ LOGONSRV_HANDLE PrimaryName, 194 _In_ wchar_t *ComputerName, 195 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 196 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 197 _In_ DWORD DatabaseID, 198 _Inout_ ULONG *SyncContext, 199 _Out_ PNETLOGON_DELTA_ENUM_ARRAY *DeltaArray, 200 _In_ DWORD PreferredMaximumLength) 201{ 202 UNIMPLEMENTED; 203 return 0; 204} 205 206 207/* Function 9 */ 208NTSTATUS 209__stdcall 210NetrAccountDeltas( 211 _In_opt_ LOGONSRV_HANDLE PrimaryName, 212 _In_ wchar_t * ComputerName, 213 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 214 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 215 _In_ PUAS_INFO_0 RecordId, 216 _In_ DWORD Count, 217 _In_ DWORD Level, 218 _Out_ UCHAR *Buffer, 219 _In_ DWORD BufferSize, 220 _Out_ ULONG *CountReturned, 221 _Out_ ULONG *TotalEntries, 222 _Out_ PUAS_INFO_0 NextRecordId) 223{ 224 UNIMPLEMENTED; 225 return 0; 226} 227 228 229/* Function 10 */ 230NTSTATUS 231__stdcall 232NetrAccountSync( 233 _In_opt_ LOGONSRV_HANDLE PrimaryName, 234 _In_ wchar_t *ComputerName, 235 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 236 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 237 _In_ DWORD Reference, 238 _In_ DWORD Level, 239 _Out_ UCHAR *Buffer, 240 _In_ DWORD BufferSize, 241 _Out_ ULONG *CountReturned, 242 _Out_ ULONG *TotalEntries, 243 _Out_ ULONG *NextReference, 244 _Out_ PUAS_INFO_0 LastRecordId) 245{ 246 UNIMPLEMENTED; 247 return 0; 248} 249 250 251/* Function 11 */ 252NET_API_STATUS 253__stdcall 254NetrGetDCName( 255 _In_ LOGONSRV_HANDLE ServerName, 256 _In_opt_ wchar_t *DomainName, 257 _Out_ wchar_t **Buffer) 258{ 259 UNIMPLEMENTED; 260 return 0; 261} 262 263 264/* Function 12 */ 265NET_API_STATUS 266__stdcall 267NetrLogonControl( 268 _In_opt_ LOGONSRV_HANDLE ServerName, 269 _In_ DWORD FunctionCode, 270 _In_ DWORD QueryLevel, 271 _Out_ PNETLOGON_CONTROL_QUERY_INFORMATION Buffer) 272{ 273 UNIMPLEMENTED; 274 return 0; 275} 276 277 278/* Function 13 */ 279NET_API_STATUS 280__stdcall 281NetrGetAnyDCName( 282 _In_opt_ LOGONSRV_HANDLE ServerName, 283 _In_opt_ wchar_t *DomainName, 284 _Out_ wchar_t **Buffer) 285{ 286 UNIMPLEMENTED; 287 return 0; 288} 289 290 291/* Function 14 */ 292NET_API_STATUS 293__stdcall 294NetrLogonControl2( 295 _In_opt_ LOGONSRV_HANDLE ServerName, 296 _In_ DWORD FunctionCode, 297 _In_ DWORD QueryLevel, 298 _In_ PNETLOGON_CONTROL_DATA_INFORMATION Data, 299 _Out_ PNETLOGON_CONTROL_QUERY_INFORMATION Buffer) 300{ 301 UNIMPLEMENTED; 302 return 0; 303} 304 305 306/* Function 15 */ 307NTSTATUS 308__stdcall 309NetrServerAuthenticate2( 310 _In_opt_ LOGONSRV_HANDLE PrimaryName, 311 _In_ wchar_t *AccountName, 312 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 313 _In_ wchar_t *ComputerName, 314 _In_ PNETLOGON_CREDENTIAL ClientCredential, 315 _Out_ PNETLOGON_CREDENTIAL ServerCredential, 316 _Inout_ ULONG *NegotiateFlags) 317{ 318 UNIMPLEMENTED; 319 return 0; 320} 321 322 323/* Function 16 */ 324NTSTATUS 325__stdcall 326NetrDatabaseSync2( 327 _In_ LOGONSRV_HANDLE PrimaryName, 328 _In_ wchar_t *ComputerName, 329 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 330 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 331 _In_ DWORD DatabaseID, 332 _In_ SYNC_STATE RestartState, 333 _Inout_ ULONG *SyncContext, 334 _Out_ PNETLOGON_DELTA_ENUM_ARRAY *DeltaArray, 335 _In_ DWORD PreferredMaximumLength) 336{ 337 UNIMPLEMENTED; 338 return 0; 339} 340 341 342/* Function 17 */ 343NTSTATUS 344__stdcall 345NetrDatabaseRedo( 346 _In_ LOGONSRV_HANDLE PrimaryName, 347 _In_ wchar_t *ComputerName, 348 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 349 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 350 _In_ UCHAR *ChangeLogEntry, 351 _In_ DWORD ChangeLogEntrySize, 352 _Out_ PNETLOGON_DELTA_ENUM_ARRAY *DeltaArray) 353{ 354 UNIMPLEMENTED; 355 return 0; 356} 357 358 359/* Function 18 */ 360NET_API_STATUS 361__stdcall 362NetrLogonControl2Ex( 363 _In_opt_ LOGONSRV_HANDLE ServerName, 364 _In_ DWORD FunctionCode, 365 _In_ DWORD QueryLevel, 366 _In_ PNETLOGON_CONTROL_DATA_INFORMATION Data, 367 _Out_ PNETLOGON_CONTROL_QUERY_INFORMATION Buffer) 368{ 369 UNIMPLEMENTED; 370 return 0; 371} 372 373 374/* Function 19 */ 375NTSTATUS 376__stdcall 377NetrEnumerateTrustedDomains( 378 _In_opt_ LOGONSRV_HANDLE ServerName, 379 _Out_ PDOMAIN_NAME_BUFFER DomainNameBuffer) 380{ 381 UNIMPLEMENTED; 382 return 0; 383} 384 385 386/* Function 20 */ 387NET_API_STATUS 388__stdcall 389DsrGetDcName( 390 _In_opt_ LOGONSRV_HANDLE ComputerName, 391 _In_opt_ wchar_t *DomainName, 392 _In_opt_ GUID *DomainGuid, 393 _In_opt_ GUID *SiteGuid, 394 _In_ ULONG Flags, 395 _Out_ PDOMAIN_CONTROLLER_INFOW *DomainControllerInfo) 396{ 397 UNIMPLEMENTED; 398 return 0; 399} 400 401 402/* Function 21 */ 403NTSTATUS 404__stdcall 405NetrLogonGetCapabilities( 406 _In_ LOGONSRV_HANDLE ServerName, 407 _In_opt_ wchar_t *ComputerName, 408 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 409 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 410 _In_ DWORD QueryLevel, 411 _Out_ PNETLOGON_CAPABILITIES ServerCapabilities) 412{ 413 UNIMPLEMENTED; 414 return 0; 415} 416 417 418/* Function 22 */ 419NTSTATUS 420__stdcall 421NetrLogonSetServiceBits( 422 _In_opt_ LOGONSRV_HANDLE ServerName, 423 _In_ DWORD ServiceBitsOfInterest, 424 _In_ DWORD ServiceBits) 425{ 426 UNIMPLEMENTED; 427 return 0; 428} 429 430 431/* Function 23 */ 432NET_API_STATUS 433__stdcall 434NetrLogonGetTrustRid( 435 _In_opt_ LOGONSRV_HANDLE ServerName, 436 _In_opt_ wchar_t *DomainName, 437 _Out_ ULONG *Rid) 438{ 439 UNIMPLEMENTED; 440 return 0; 441} 442 443 444/* Function 24 */ 445NET_API_STATUS 446__stdcall 447NetrLogonComputeServerDigest( 448 _In_opt_ LOGONSRV_HANDLE ServerName, 449 _In_ ULONG Rid, 450 _In_ UCHAR *Message, 451 _In_ ULONG MessageSize, 452 _Out_ CHAR NewMessageDigest[16], 453 _Out_ CHAR OldMessageDigest[16]) 454{ 455 UNIMPLEMENTED; 456 return 0; 457} 458 459 460/* Function 25 */ 461NET_API_STATUS 462__stdcall 463NetrLogonComputeClientDigest( 464 _In_opt_ LOGONSRV_HANDLE ServerName, 465 _In_opt_ wchar_t *DomainName, 466 _In_ UCHAR *Message, 467 _In_ ULONG MessageSize, 468 _Out_ CHAR NewMessageDigest[16], 469 _Out_ CHAR OldMessageDigest[16]) 470{ 471 UNIMPLEMENTED; 472 return 0; 473} 474 475 476/* Function 26 */ 477NTSTATUS 478__stdcall 479NetrServerAuthenticate3( 480 _In_opt_ LOGONSRV_HANDLE PrimaryName, 481 _In_ wchar_t *AccountName, 482 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 483 _In_ wchar_t *ComputerName, 484 _In_ PNETLOGON_CREDENTIAL ClientCredential, 485 _Out_ PNETLOGON_CREDENTIAL ServerCredential, 486 _Inout_ ULONG *NegotiateFlags, 487 _Out_ ULONG *AccountRid) 488{ 489 UNIMPLEMENTED; 490 return 0; 491} 492 493 494/* Function 27 */ 495NET_API_STATUS 496__stdcall 497DsrGetDcNameEx( 498 _In_opt_ LOGONSRV_HANDLE ComputerName, 499 _In_opt_ wchar_t *DomainName, 500 _In_opt_ GUID *DomainGuid, 501 _In_opt_ wchar_t *SiteName, 502 _In_ ULONG Flags, 503 _Out_ PDOMAIN_CONTROLLER_INFOW *DomainControllerInfo) 504{ 505 UNIMPLEMENTED; 506 return 0; 507} 508 509 510/* Function 28 */ 511NET_API_STATUS 512__stdcall 513DsrGetSiteName( 514 _In_opt_ LOGONSRV_HANDLE ComputerName, 515 _Out_ wchar_t **SiteName) 516{ 517 UNIMPLEMENTED; 518 return 0; 519} 520 521 522/* Function 29 */ 523NTSTATUS 524__stdcall 525NetrLogonGetDomainInfo( 526 _In_ LOGONSRV_HANDLE ServerName, 527 _In_opt_ wchar_t *ComputerName, 528 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 529 _Inout_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 530 _In_ DWORD Level, 531 _In_ PNETLOGON_WORKSTATION_INFORMATION WkstaBuffer, 532 _Out_ PNETLOGON_DOMAIN_INFORMATION DomBuffer) 533{ 534 UNIMPLEMENTED; 535 return 0; 536} 537 538 539/* Function 30 */ 540NTSTATUS 541__stdcall 542NetrServerPasswordSet2( 543 _In_opt_ LOGONSRV_HANDLE PrimaryName, 544 _In_ wchar_t *AccountName, 545 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 546 _In_ wchar_t *ComputerName, 547 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 548 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 549 _In_ PNL_TRUST_PASSWORD ClearNewPassword) 550{ 551 UNIMPLEMENTED; 552 return 0; 553} 554 555 556/* Function 31 */ 557NTSTATUS 558__stdcall 559NetrServerPasswordGet( 560 _In_opt_ LOGONSRV_HANDLE PrimaryName, 561 _In_ wchar_t *AccountName, 562 _In_ NETLOGON_SECURE_CHANNEL_TYPE AccountType, 563 _In_ wchar_t *ComputerName, 564 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 565 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 566 _Out_ PENCRYPTED_NT_OWF_PASSWORD EncryptedNtOwfPassword) 567{ 568 UNIMPLEMENTED; 569 return 0; 570} 571 572 573/* Function 32 */ 574NTSTATUS 575__stdcall 576NetrLogonSendToSam( 577 _In_opt_ LOGONSRV_HANDLE PrimaryName, 578 _In_ wchar_t *ComputerName, 579 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 580 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 581 _In_ UCHAR *OpaqueBuffer, 582 _In_ ULONG OpaqueBufferSize) 583{ 584 UNIMPLEMENTED; 585 return 0; 586} 587 588 589/* Function 33 */ 590NET_API_STATUS 591__stdcall 592DsrAddressToSiteNamesW( 593 _In_opt_ LOGONSRV_HANDLE ComputerName, 594 _In_ DWORD EntryCount, 595 _In_ PNL_SOCKET_ADDRESS SocketAddresses, 596 _Out_ PNL_SITE_NAME_ARRAY *SiteNames) 597{ 598 UNIMPLEMENTED; 599 return 0; 600} 601 602 603/* Function 34 */ 604NET_API_STATUS 605__stdcall 606DsrGetDcNameEx2( 607 _In_opt_ LOGONSRV_HANDLE ComputerName, 608 _In_opt_ wchar_t *AccountName, 609 _In_ ULONG AllowableAccountControlBits, 610 _In_opt_ wchar_t *DomainName, 611 _In_opt_ GUID *DomainGuid, 612 _In_opt_ wchar_t *SiteName, 613 _In_ ULONG Flags, 614 _Out_ PDOMAIN_CONTROLLER_INFOW *DomainControllerInfo) 615{ 616 UNIMPLEMENTED; 617 return NERR_DCNotFound; 618} 619 620 621/* Function 35 */ 622NET_API_STATUS 623__stdcall 624NetrLogonGetTimeServiceParentDomain( 625 _In_opt_ LOGONSRV_HANDLE ServerName, 626 _Out_ wchar_t **DomainName, 627 _Out_ int *PdcSameSite) 628{ 629 UNIMPLEMENTED; 630 return 0; 631} 632 633 634/* Function 36 */ 635NET_API_STATUS 636__stdcall 637NetrEnumerateTrustedDomainsEx( 638 _In_opt_ LOGONSRV_HANDLE ServerName, 639 _Out_ PNETLOGON_TRUSTED_DOMAIN_ARRAY Domains) 640{ 641 UNIMPLEMENTED; 642 return 0; 643} 644 645 646/* Function 37 */ 647NET_API_STATUS 648__stdcall 649DsrAddressToSiteNamesExW( 650 _In_opt_ LOGONSRV_HANDLE ComputerName, 651 _In_ DWORD EntryCount, 652 _In_ PNL_SOCKET_ADDRESS SocketAddresses, 653 _Out_ PNL_SITE_NAME_EX_ARRAY *SiteNames) 654{ 655 UNIMPLEMENTED; 656 return 0; 657} 658 659 660/* Function 38 */ 661NET_API_STATUS 662__stdcall 663DsrGetDcSiteCoverageW( 664 _In_opt_ LOGONSRV_HANDLE ServerName, 665 _Out_ PNL_SITE_NAME_ARRAY *SiteNames) 666{ 667 UNIMPLEMENTED; 668 return 0; 669} 670 671 672/* Function 39 */ 673NTSTATUS 674__stdcall 675NetrLogonSamLogonEx( 676 _In_ handle_t ContextHandle, 677 _In_opt_ wchar_t *LogonServer, 678 _In_opt_ wchar_t *ComputerName, 679 _In_ NETLOGON_LOGON_INFO_CLASS LogonLevel, 680 _In_ PNETLOGON_LEVEL LogonInformation, 681 _In_ NETLOGON_VALIDATION_INFO_CLASS ValidationLevel, 682 _Out_ PNETLOGON_VALIDATION ValidationInformation, 683 _Out_ UCHAR *Authoritative, 684 _Inout_ ULONG *ExtraFlags) 685{ 686 UNIMPLEMENTED; 687 return 0; 688} 689 690 691/* Function 40 */ 692NET_API_STATUS 693__stdcall 694DsrEnumerateDomainTrusts( 695 _In_opt_ LOGONSRV_HANDLE ServerName, 696 _In_ ULONG Flags, 697 _Out_ PNETLOGON_TRUSTED_DOMAIN_ARRAY Domains) 698{ 699 UNIMPLEMENTED; 700 return 0; 701} 702 703 704/* Function 41 */ 705NET_API_STATUS 706__stdcall 707DsrDeregisterDnsHostRecords( 708 _In_opt_ LOGONSRV_HANDLE ServerName, 709 _In_opt_ wchar_t *DnsDomainName, 710 _In_opt_ GUID *DomainGuid, 711 _In_opt_ GUID *DsaGuid, 712 _In_ wchar_t *DnsHostName) 713{ 714 UNIMPLEMENTED; 715 return 0; 716} 717 718 719/* Function 42 */ 720NTSTATUS 721__stdcall 722NetrServerTrustPasswordsGet( 723 _In_opt_ LOGONSRV_HANDLE TrustedDcName, 724 _In_ wchar_t *AccountName, 725 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 726 _In_ wchar_t *ComputerName, 727 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 728 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 729 _Out_ PENCRYPTED_NT_OWF_PASSWORD EncryptedNewOwfPassword, 730 _Out_ PENCRYPTED_NT_OWF_PASSWORD EncryptedOldOwfPassword) 731{ 732 UNIMPLEMENTED; 733 return 0; 734} 735 736 737/* Function 43 */ 738NET_API_STATUS 739__stdcall 740DsrGetForestTrustInformation( 741 _In_opt_ LOGONSRV_HANDLE ServerName, 742 _In_opt_ wchar_t *TrustedDomainName, 743 _In_ DWORD Flags, 744 _Out_ PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo) 745{ 746 UNIMPLEMENTED; 747 return 0; 748} 749 750 751/* Function 44 */ 752NTSTATUS 753__stdcall 754NetrGetForestTrustInformation( 755 _In_opt_ LOGONSRV_HANDLE ServerName, 756 _In_ wchar_t *ComputerName, 757 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 758 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 759 _In_ DWORD Flags, 760 _Out_ PLSA_FOREST_TRUST_INFORMATION *ForestTrustInfo) 761{ 762 UNIMPLEMENTED; 763 return 0; 764} 765 766 767/* Function 45 */ 768NTSTATUS 769__stdcall 770NetrLogonSamLogonWithFlags( 771 _In_opt_ LOGONSRV_HANDLE LogonServer, 772 _In_opt_ wchar_t *ComputerName, 773 _In_opt_ PNETLOGON_AUTHENTICATOR Authenticator, 774 _Inout_opt_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 775 _In_ NETLOGON_LOGON_INFO_CLASS LogonLevel, 776 _In_ PNETLOGON_LEVEL LogonInformation, 777 _In_ NETLOGON_VALIDATION_INFO_CLASS ValidationLevel, 778 _Out_ PNETLOGON_VALIDATION ValidationInformation, 779 _Out_ UCHAR *Authoritative, 780 _Inout_ ULONG *ExtraFlags) 781{ 782 UNIMPLEMENTED; 783 return 0; 784} 785 786 787/* Function 46 */ 788NTSTATUS 789__stdcall 790NetrServerGetTrustInfo( 791 _In_opt_ LOGONSRV_HANDLE TrustedDcName, 792 _In_ wchar_t *AccountName, 793 _In_ NETLOGON_SECURE_CHANNEL_TYPE SecureChannelType, 794 _In_ wchar_t *ComputerName, 795 _In_ PNETLOGON_AUTHENTICATOR Authenticator, 796 _Out_ PNETLOGON_AUTHENTICATOR ReturnAuthenticator, 797 _Out_ PENCRYPTED_NT_OWF_PASSWORD EncryptedNewOwfPassword, 798 _Out_ PENCRYPTED_NT_OWF_PASSWORD EncryptedOldOwfPassword, 799 _Out_ PNL_GENERIC_RPC_DATA *TrustInfo) 800{ 801 UNIMPLEMENTED; 802 return 0; 803} 804 805/* EOF */