windows-nt/Source/XPSP1/NT/admin/admt/enumtrst/lsautils.h
2020-09-26 16:20:57 +08:00

101 lines
3.6 KiB
C

/*---------------------------------------------------------------------------
File: LSAUtils.h
Comments: Utility functions to change the domain affiliation of a computer.
(c) Copyright 1999, Mission Critical Software, Inc., All Rights Reserved
Proprietary and confidential to Mission Critical Software, Inc.
REVISION LOG ENTRY
Revision By: Christy Boles
Revised on 02/15/99 11:23:57
---------------------------------------------------------------------------
*/
#include "ntsecapi.h"
#ifndef STATUS_SUCCESS
#define STATUS_SUCCESS ((NTSTATUS)0x00000000L)
#define STATUS_OBJECT_NAME_NOT_FOUND ((NTSTATUS)0xC0000034L)
#define STATUS_OBJECT_NAME_COLLISION ((NTSTATUS)0xC0000035L)
#define STATUS_INVALID_SID ((NTSTATUS)0xC0000078L)
#endif
BOOL
GetDomainDCName(
LPWSTR Domain, // in - domain name
LPWSTR * pPrimaryDC // out- PDC name
);
BOOL
EstablishNullSession(
LPCWSTR Server, // in - server name
BOOL bEstablish // in - TRUE=connect,FALSE=disconnect
);
void
InitLsaString(
PLSA_UNICODE_STRING LsaString, // in - pointer to LSA string to initialize
LPWSTR String // in - value to initialize string to
);
NTSTATUS
OpenPolicy(
LPWSTR ComputerName, // in - computer name
DWORD DesiredAccess, // in - required access
PLSA_HANDLE PolicyHandle // out- policy handle
);
BOOL
GetDomainSid(
LPWSTR DomainName, // in - domain name to acquire Sid of
PSID * pDomainSid // out- points to allocated Sid on success
);
NTSTATUS
SetWorkstationTrustedDomainInfo(
LSA_HANDLE PolicyHandle, // in - policy handle
PSID DomainSid, // in - Sid of domain to manipulate
LPWSTR TrustedDomainName, // in - trusted domain name to add/update
LPWSTR Password, // in - new trust password for trusted domain
LPWSTR errOut // out- error text, if failure
);
NTSTATUS
SetPrimaryDomain(
LSA_HANDLE PolicyHandle, // in - policy handle
PSID DomainSid, // in - SID for new primary domain
LPWSTR TrustedDomainName // in - name of new primary domain
);
void
QueryWorkstationTrustedDomainInfo(
LSA_HANDLE PolicyHandle, // in - policy handle
PSID DomainSid, // in - SID for new primary domain
BOOL bNoChange // in - flag, no change mode
);
BOOL
EstablishSession(
LPCWSTR Server, // in - server name
LPWSTR Domain, // in - domain for Username account
LPWSTR Username, // in - username to connnect as
LPWSTR Password, // in - password for Username account
BOOL bEstablish // in - TRUE=connect, FALSE=disconnect
);
BOOL
EstablishShare(
LPCWSTR Server, // in - server name
LPWSTR Share, // in - share name to connect to
LPWSTR Domain, // in - domain for credentials
LPWSTR UserName, // in - username to connect as
LPWSTR Password, // in - password for credentials
BOOL bEstablish // in - TRUE=connect, FALSE=disconnect
);