Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

141 lines
2.2 KiB

/*++
Copyright (c) 1987-2001 Microsoft Corporation
Module Name:
ftnfoctx.h
Abstract:
Utility routines for manipulating the forest trust context
Author:
27-Jul-00 (cliffv)
Environment:
User mode only.
Contains NT-specific code.
Requires ANSI C extensions: slash-slash comments, long external names.
Revision History:
--*/
#ifndef __FTNFOCTX_H
#define __FTNFOCTX_H
//
// Context used to collect the individual FTinfo entries
//
typedef struct _NL_FTINFO_CONTEXT {
//
// List of all the FTinfo structures collected so far.
//
LIST_ENTRY FtinfoList;
//
// Size (in bytes) of the entries on FtinfoList.
//
ULONG FtinfoSize;
//
// Number of entries on FtinfoList
//
ULONG FtinfoCount;
} NL_FTINFO_CONTEXT, *PNL_FTINFO_CONTEXT;
//
// A single FTinfo entry
//
typedef struct _NL_FTINFO_ENTRY {
//
// Link off of NL_FITINFO_CONTEXT->FtinfoList
//
LIST_ENTRY Next;
//
// Size (in bytes) of just the 'Record' portion of this entry
//
ULONG Size;
//
// Pad the Record to start on an ALIGN_WORST boundary
//
ULONG Pad;
//
// The actual Ftinfo entry
//
LSA_FOREST_TRUST_RECORD Record;
} NL_FTINFO_ENTRY, *PNL_FTINFO_ENTRY;
#ifdef __cplusplus
extern "C" {
#endif
VOID
NetpInitFtinfoContext(
OUT PNL_FTINFO_CONTEXT FtinfoContext
);
PLSA_FOREST_TRUST_INFORMATION
NetpCopyFtinfoContext(
IN PNL_FTINFO_CONTEXT FtinfoContext
);
VOID
NetpCleanFtinfoContext(
IN PNL_FTINFO_CONTEXT FtinfoContext
);
BOOLEAN
NetpAllocFtinfoEntry (
IN PNL_FTINFO_CONTEXT FtinfoContext,
IN LSA_FOREST_TRUST_RECORD_TYPE ForestTrustType,
IN PUNICODE_STRING Name,
IN PSID Sid,
IN PUNICODE_STRING NetbiosName
);
BOOLEAN
NetpAddTlnFtinfoEntry (
IN PNL_FTINFO_CONTEXT FtinfoContext,
IN PUNICODE_STRING Name
);
NTSTATUS
NetpMergeFtinfo(
IN PUNICODE_STRING TrustedDomainName,
IN PLSA_FOREST_TRUST_INFORMATION InNewForestTrustInfo,
IN PLSA_FOREST_TRUST_INFORMATION InOldForestTrustInfo OPTIONAL,
OUT PLSA_FOREST_TRUST_INFORMATION *MergedForestTrustInfo
);
#ifdef __cplusplus
}
#endif
#endif