drsuapi

package
v1.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 29, 2024 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const AddReference = 0x00000004

AddReference represents the DRS_ADD_REF RPC constant

View Source
const AsyncOperation = 0x00000001

AsyncOperation represents the DRS_ASYNC_OP RPC constant

View Source
const AsyncReplication = 0x00000100

AsyncReplication represents the DRS_ASYNC_REPLICATION RPC constant

View Source
const CriticalOnly = 0x00000400

CriticalOnly represents the DRS_CRITICAL_ONLY RPC constant

View Source
const DeleteReference = 0x00000008

DeleteReference represents the DRS_DEL_REF RPC constant

View Source
const DisableAutoSync = 0x04000000

DisableAutoSync represents the DRS_DISABLE_AUTO_SYNC RPC constant

View Source
const DisablePeriodicSync = 0x08000000

DisablePeriodicSync represents the DRS_DISABLE_PERIODIC_SYNC RPC constant

View Source
const ExtAddEntry = 0x00000080

ExtAddEntry represents the DRS_EXT_ADDENTRY RPC constant

View Source
const ExtAddEntryV2 = 0x00000200

ExtAddEntryV2 represents the DRS_EXT_ADDENTRY_V2 RPC constant

View Source
const ExtAddSIDHistory = 0x00040000

ExtAddSIDHistory represents the DRS_EXT_ADD_SID_HISTORY RPC constant

View Source
const ExtAsyncReply = 0x00000002

ExtAsyncReply represents the DRS_EXT_ASYNCREPL RPC constant

View Source
const ExtBase = 0x00000001

ExtBase represents the DRS_EXT_BASE RPC constant

View Source
const ExtCryptoBind = 0x00002000

ExtCryptoBind represents the DRS_EXT_CRYPTO_BIND RPC constant

View Source
const ExtDCInfoV1 = 0x00000020

ExtDCInfoV1 represents the DRS_EXT_DCINFO_V1 RPC constant

View Source
const ExtDCInfoV2 = 0x00000800

ExtDCInfoV2 represents the DRS_EXT_DCINFO_V2 RPC constant

View Source
const ExtDCInfoVQ = 0x00010000

ExtDCInfoVQ represents the DRS_EXT_DCINFO_VFFFFFFFF RPC constant

View Source
const ExtGetMemberships2 = 0x00200000

ExtGetMemberships2 represents the DRS_EXT_GETMEMBERSHIPS2 RPC constant

View Source
const ExtGetNCChangesDeflate = 0x00000010

ExtGetNCChangesDeflate represents the DRS_EXT_GETCHG_DEFLATE RPC constant

View Source
const ExtGetNCChangesReplyV5 = 0x02000000

ExtGetNCChangesReplyV5 represents the DRS_EXT_GETCHGREPLY_V5 RPC constant

View Source
const ExtGetNCChangesReplyV6 = 0x04000000

ExtGetNCChangesReplyV6 represents the DRS_EXT_GETCHGREPLY_V6 RPC constant

View Source
const ExtGetNCChangesRequestV10 = 0x20000000

ExtGetNCChangesRequestV10 represents the DRS_EXT_GETCHGREQ_V10 RPC constant

View Source
const ExtGetNCChangesRequestV5 = 0x00100000

ExtGetNCChangesRequestV5 represents the DRS_EXT_GETCHGREQ_V5 RPC constant

View Source
const ExtGetNCChangesRequestV6 = 0x00400000

ExtGetNCChangesRequestV6 represents the DRS_EXT_GETCHGREQ_V6 RPC constant

View Source
const ExtGetNCChangesRequestV8 = 0x01000000

ExtGetNCChangesRequestV8 represents the DRS_EXT_GETCHGREQ_V8 RPC constant

View Source
const ExtGetReplicationInfo = 0x00004000

ExtGetReplicationInfo represents the DRS_EXT_GET_REPL_INFO RPC constant

View Source
const ExtInstanceTypeNotRequestOnModify = 0x00001000

ExtInstanceTypeNotRequestOnModify represents the DRS_EXT_INSTANCE_TYPE_NOT_REQ_ON_MOD RPC constant

View Source
const ExtKCCExecute = 0x00000100

ExtKCCExecute represents the DRS_EXT_KCC_EXECUTE RPC constant

View Source
const ExtLinkedValueReplication = 0x00000400

ExtLinkedValueReplication represents the DRS_EXT_LINKED_VALUE_REPLICATION RPC constant

View Source
const ExtMoveRequestV2 = 0x00000008

ExtMoveRequestV2 represents the DRS_EXT_MOVEREQ_V2 RPC constant

View Source
const ExtNonDomainNCs = 0x00800000

ExtNonDomainNCs represents the DRS_EXT_NONDOMAIN_NCS RPC constant

View Source
const ExtPostBeta3 = 0x00080000

ExtPostBeta3 represents the DRS_EXT_POST_BETA3 RPC constant

View Source
const ExtRemoveAPI = 0x00000004

ExtRemoveAPI represents the DRS_EXT_REMOVEAPI RPC constant

View Source
const ExtReservedForWin2KOrNETPart2 = 0x40000000

ExtReservedForWin2KOrNETPart2 represents the DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART2 RPC constant

View Source
const ExtReservedForWin2KOrNETPart3 = 0x80000000

ExtReservedForWin2KOrNETPart3 represents the DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART3 RPC constant

View Source
const ExtRestoreUSNOptimization = 0x00000040

ExtRestoreUSNOptimization represents the DRS_EXT_RESTORE_USN_OPTIMIZATION RPC constant

View Source
const ExtStrongEncryption = 0x00008000

ExtStrongEncryption represents the DRS_EXT_STRONG_ENCRYPTION RPC constant

View Source
const ExtTransitiveMembership = 0x00020000

ExtTransitiveMembership represents the DRS_EXT_TRANSITIVE_MEMBERSHIP RPC constant

View Source
const ExtW2K3Deflate = 0x10000000

ExtW2K3Deflate represents the DRS_EXT_W2K3_DEFLATE RPC constant

View Source
const ExtWhistlerBeta3 = 0x08000000

ExtWhistlerBeta3 represents the DRS_EXT_WHISTLER_BETA3 RPC constant

View Source
const ExtendedOperationFSMOAbandonRole = 0x00000005

ExtendedOperationFSMOAbandonRole represents the EXOP_FSMO_ABANDON_ROLE RPC constant

View Source
const ExtendedOperationFSMORIDRequestRole = 0x00000003

ExtendedOperationFSMORIDRequestRole represents the EXOP_FSMO_RID_REQ_ROLE RPC constant

View Source
const ExtendedOperationFSMORequestPDC = 0x00000004

ExtendedOperationFSMORequestPDC represents the EXOP_FSMO_REQ_PDC RPC constant

View Source
const ExtendedOperationFSMORequestRIDAlloc = 0x00000002

ExtendedOperationFSMORequestRIDAlloc represents the EXOP_FSMO_REQ_RID_ALLOC RPC constant

View Source
const ExtendedOperationFSMORequestRole = 0x00000001

ExtendedOperationFSMORequestRole represents the EXOP_FSMO_REQ_ROLE RPC constant

View Source
const ExtendedOperationReplicationObject = 0x00000006

ExtendedOperationReplicationObject represents the EXOP_REPL_OBJ RPC constant

View Source
const ExtendedOperationReplicationSecrets = 0x00000007

ExtendedOperationReplicationSecrets represents the EXOP_REPL_SECRETS RPC constant

View Source
const FullSyncInProgress = 0x00010000

FullSyncInProgress represents the DRS_FULL_SYNC_IN_PROGRESS RPC constant

View Source
const FullSyncNow = 0x00008000

FullSyncNow represents the DRS_FULL_SYNC_NOW RPC constant

View Source
const FullSyncPacket = 0x00020000

FullSyncPacket represents the DRS_FULL_SYNC_PACKET RPC constant

View Source
const GetAllGroupMembership = 0x80000000

GetAllGroupMembership represents the DRS_GET_ALL_GROUP_MEMBERSHIP RPC constant

View Source
const GetAncestor = 0x00000800

GetAncestor represents the DRS_GET_ANCESTOR RPC constant

View Source
const GetNCChangesCheck = 0x00000002

GetNCChangesCheck represents the DRS_GETCHG_CHECK RPC constant

View Source
const GetNCSize = 0x00001000

GetNCSize represents the DRS_GET_NC_SIZE RPC constant

View Source
const IgnoreError = 0x00000100

IgnoreError represents the DRS_IGNORE_ERROR RPC constant

View Source
const InitSync = 0x00000020

InitSync represents the DRS_INIT_SYNC RPC constant

View Source
const InitSyncNow = 0x00800000

InitSyncNow represents the DRS_INIT_SYNC_NOW RPC constant

View Source
const LocalOnly = 0x00001000

LocalOnly represents the DRS_LOCAL_ONLY RPC constant

View Source
const MailReplication = 0x00000080

MailReplication represents the DRS_MAIL_REPLICATION RPC constant

View Source
const NeverNotify = 0x20000000

NeverNotify represents the DRS_NEVER_NOTIFY RPC constant

View Source
const NeverSynced = 0x00200000

NeverSynced represents the DRS_NEVER_SYNCED RPC constant

View Source
const NoDiscard = 0x00100000

NoDiscard represents the DRS_NO_DISCARD RPC constant

View Source
const NoSource = 0x00008000

NoSource represents the DRS_NO_SOURCE RPC constant

View Source
const NonGCReadOnlyReplica = 0x00002000

NonGCReadOnlyReplica represents the DRS_NON_GC_RO_REPLICA RPC constant

View Source
const PeriodicalSync = 0x00000040

PeriodicalSync represents the DRS_PERIODICAL_SYNC RPC constant

View Source
const Preempted = 0x01000000

Preempted represents the DRS_PREEMPTED RPC constant

View Source
const ReferenceGCSPN = 0x00100000

ReferenceGCSPN represents the DRS_REF_GC_SPN RPC constant

View Source
const ReferenceOK = 0x00004000

ReferenceOK represents the DRS_REF_OK RPC constant

View Source
const SpecialSecretProcessing = 0x00400000

SpecialSecretProcessing represents the DRS_SPECIAL_SECRET_PROCESSING RPC constant

View Source
const SyncAll = 0x00000004

SyncAll represents the DRS_SYNC_ALL RPC constant

View Source
const SyncByName = 0x00004000

SyncByName represents the DRS_SYNC_BY_NAME RPC constant

View Source
const SyncForced = 0x02000000

SyncForced represents the DRS_SYNC_FORCED RPC constant

View Source
const SyncPartialAttributes = 0x40000000

SyncPartialAttributes represents the DRS_SYNC_PARTIAL_ATTRIBUTES RPC constant

View Source
const SyncRequeue = 0x00040000

SyncRequeue represents the DRS_SYNC_REQUEUE RPC constant

View Source
const SyncUrgent = 0x00080000

SyncUrgent represents the DRS_SYNC_URGENT RPC constant

View Source
const TwoWaySync = 0x00000200

TwoWaySync represents the DRS_TWO_WAY_SYNC RPC constant

View Source
const UpdateNotification = 0x00000002

UpdateNotification represents the DRS_UPDATE_NOTIFICATION RPC constant

View Source
const UseCompression = 0x10000000

UseCompression represents the DRS_USE_COMPRESSION RPC constant

View Source
const WritableReplica = 0x00000010

WritableReplica represents the DRS_WRITABLE_REPLICA RPC constant

Variables

View Source
var (
	// Syntax UUID
	DrsuapiSyntaxUUID = &uuid.UUID{TimeLow: 0xe3514235, TimeMid: 0x4b06, TimeHiAndVersion: 0x11d1, ClockSeqHiAndReserved: 0xab, ClockSeqLow: 0x4, Node: [6]uint8{0x0, 0xc0, 0x4f, 0xc2, 0xdc, 0xd2}}
	// Syntax ID
	DrsuapiSyntaxV4_0 = &dcerpc.SyntaxID{IfUUID: DrsuapiSyntaxUUID, IfVersionMajor: 4, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "drsr"
)

Functions

func DecryptData added in v1.0.2

func DecryptData(ctx context.Context, b []byte) ([]byte, error)

DecryptData decrypts the data using the session key from the context.

func DecryptDataWithKey added in v1.0.2

func DecryptDataWithKey(ctx context.Context, key []byte, b []byte) ([]byte, error)

DecryptDataWithKey decrypts the data using the provided key.

func DecryptHash added in v1.0.2

func DecryptHash(ctx context.Context, rid uint32, b []byte) ([]byte, error)

DecryptHash decrypts the hash using the session key and rid.

func DrsuapiServerHandle

func DrsuapiServerHandle(ctx context.Context, o DrsuapiServer, opNum int, r ndr.Reader) (dcerpc.Operation, error)

func NewDrsuapiServerHandle

func NewDrsuapiServerHandle(o DrsuapiServer) dcerpc.ServerHandle

func RawPrefixToOID added in v1.0.2

func RawPrefixToOID(b []byte) (asn1.ObjectIdentifier, error)

func RegisterDrsuapiServer

func RegisterDrsuapiServer(conn dcerpc.Conn, o DrsuapiServer, opts ...dcerpc.Option)

Types

type AddCloneDCRequest

type AddCloneDCRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageAddCloneDCRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

AddCloneDCRequest structure represents the IDL_DRSAddCloneDC operation request

func (*AddCloneDCRequest) MarshalNDR

func (o *AddCloneDCRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddCloneDCRequest) UnmarshalNDR

func (o *AddCloneDCRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddCloneDCResponse

type AddCloneDCResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageAddCloneDCReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSAddCloneDC return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

AddCloneDCResponse structure represents the IDL_DRSAddCloneDC operation response

func (*AddCloneDCResponse) MarshalNDR

func (o *AddCloneDCResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddCloneDCResponse) UnmarshalNDR

func (o *AddCloneDCResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddEntryReplyInfo

type AddEntryReplyInfo struct {
	// objGuid:  The objectGUID of the added object.
	ObjectGUID *dtyp.GUID `idl:"name:objGuid" json:"object_guid"`
	// objSid:  The objectSid of the added object.
	ObjectSID *NT4SID `idl:"name:objSid" json:"object_sid"`
}

AddEntryReplyInfo structure represents ADDENTRY_REPLY_INFO RPC structure.

The ADDENTRY_REPLY_INFO structure defines the identity of an object added by the IDL_DRSAddEntry method.

func (*AddEntryReplyInfo) MarshalNDR

func (o *AddEntryReplyInfo) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddEntryReplyInfo) UnmarshalNDR

func (o *AddEntryReplyInfo) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type AddEntryRequest

type AddEntryRequest struct {
	// hDrs: The RPC context handle that is returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageAddEntryRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

AddEntryRequest structure represents the IDL_DRSAddEntry operation request

func (*AddEntryRequest) MarshalNDR

func (o *AddEntryRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddEntryRequest) UnmarshalNDR

func (o *AddEntryRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddEntryResponse

type AddEntryResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageAddEntryReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSAddEntry return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

AddEntryResponse structure represents the IDL_DRSAddEntry operation response

func (*AddEntryResponse) MarshalNDR

func (o *AddEntryResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddEntryResponse) UnmarshalNDR

func (o *AddEntryResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddReplicaRequest

type AddReplicaRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwVersion: The version of the request message.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// pmsgAdd: A pointer to the request message.
	Add *MessageAddReplica `idl:"name:pmsgAdd;switch_is:dwVersion;pointer:ref" json:"add"`
}

AddReplicaRequest structure represents the IDL_DRSReplicaAdd operation request

func (*AddReplicaRequest) MarshalNDR

func (o *AddReplicaRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddReplicaRequest) UnmarshalNDR

func (o *AddReplicaRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddReplicaResponse

type AddReplicaResponse struct {
	// Return: The IDL_DRSReplicaAdd return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

AddReplicaResponse structure represents the IDL_DRSReplicaAdd operation response

func (*AddReplicaResponse) MarshalNDR

func (o *AddReplicaResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddReplicaResponse) UnmarshalNDR

func (o *AddReplicaResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddSIDHistoryRequest

type AddSIDHistoryRequest struct {
	// hDrs: RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: Version of the request message. Must be set to 1, because no other version
	// is supported.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: Pointer to the request message.
	In *MessageAddSIDHistoryRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

AddSIDHistoryRequest structure represents the IDL_DRSAddSidHistory operation request

func (*AddSIDHistoryRequest) MarshalNDR

func (o *AddSIDHistoryRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddSIDHistoryRequest) UnmarshalNDR

func (o *AddSIDHistoryRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddSIDHistoryResponse

type AddSIDHistoryResponse struct {
	// pdwOutVersion: Pointer to the version of the response message. The value must be
	// 1, because no other version is supported.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: Pointer to the response message.
	Out *MessageAddSIDHistoryReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSAddSidHistory return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

AddSIDHistoryResponse structure represents the IDL_DRSAddSidHistory operation response

func (*AddSIDHistoryResponse) MarshalNDR

func (o *AddSIDHistoryResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddSIDHistoryResponse) UnmarshalNDR

func (o *AddSIDHistoryResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type AddressList

type AddressList struct {
	// pNextAddress:  Null, or the next element in the linked list.
	NextAddress *AddressList `idl:"name:pNextAddress" json:"next_address"`
	// pAddress:  Network name of the DC to which the referral is directed.
	Address *dtyp.UnicodeString `idl:"name:pAddress" json:"address"`
}

AddressList structure represents DSA_ADDRESS_LIST_DRS_WIRE_V1 RPC structure.

The DSA_ADDRESS_LIST_DRS_WIRE_V1 structure defines a linked list entry for a referral network name.

func (*AddressList) MarshalNDR

func (o *AddressList) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AddressList) UnmarshalNDR

func (o *AddressList) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type Attribute

type Attribute struct {
	// attrTyp:  An attribute.
	AttributeType uint32 `idl:"name:attrTyp" json:"attribute_type"`
	// AttrVal:  The sequence of values for this attribute.
	AttributeValue *AttributeValueBlock `idl:"name:AttrVal" json:"attribute_value"`
}

Attribute structure represents ATTR RPC structure.

The ATTR structure defines a concrete type for the identity and values of an attribute.

func (*Attribute) MarshalNDR

func (o *Attribute) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*Attribute) UnmarshalNDR

func (o *Attribute) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type AttributeBlock

type AttributeBlock struct {
	// attrCount:  The number of items in the pAttr array.
	AttributeCount uint32 `idl:"name:attrCount" json:"attribute_count"`
	// pAttr:  An array of attributes and their values.
	Attribute []*Attribute `idl:"name:pAttr;size_is:(attrCount)" json:"attribute"`
}

AttributeBlock structure represents ATTRBLOCK RPC structure.

The ATTRBLOCK structure defines a concrete type for a set of attributes and their values.

func (*AttributeBlock) MarshalNDR

func (o *AttributeBlock) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AttributeBlock) UnmarshalNDR

func (o *AttributeBlock) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type AttributeError

type AttributeError struct {
	// pObject:  The identity of the object being processed when the error occurred.
	Object *DSName `idl:"name:pObject" json:"object"`
	// count:  The count of items in the FirstProblem linked list.
	Count uint32 `idl:"name:count" json:"count"`
	// FirstProblem:  The first element in the linked list of attribute errors.
	FirstProblem *ProblemList `idl:"name:FirstProblem" json:"first_problem"`
}

AttributeError structure represents ATRERR_DRS_WIRE_V1 RPC structure.

The ATRERR_DRS_WIRE_V1 structure defines attribute errors.

func (*AttributeError) MarshalNDR

func (o *AttributeError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AttributeError) UnmarshalNDR

func (o *AttributeError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type AttributeProblem

type AttributeProblem struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
	// type:  The attribute that was being processed when the error occurred.
	Type uint32 `idl:"name:type" json:"type"`
	// valReturned:  If true, the offending value is returned in the Val member.
	ValueReturned bool `idl:"name:valReturned" json:"value_returned"`
	// Val:  The offending value.
	Value *AttributeValue `idl:"name:Val" json:"value"`
}

AttributeProblem structure represents INTFORMPROB_DRS_WIRE_V1 RPC structure.

The INTFORMPROB_DRS_WIRE_V1 structure defines an attribute error.

func (*AttributeProblem) MarshalNDR

func (o *AttributeProblem) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AttributeProblem) UnmarshalNDR

func (o *AttributeProblem) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type AttributeValue

type AttributeValue struct {
	// valLen:  The size, in bytes, of the pVal array.
	ValueLength uint32 `idl:"name:valLen" json:"value_length"`
	// pVal:  The value of the attribute. The encoding of the attribute varies by syntax,
	// as described in the following sections.
	Value []byte `idl:"name:pVal;size_is:(valLen)" json:"value"`
}

AttributeValue structure represents ATTRVAL RPC structure.

The ATTRVAL structure defines a concrete type for the value of a single attribute.

func (*AttributeValue) MarshalNDR

func (o *AttributeValue) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AttributeValue) UnmarshalNDR

func (o *AttributeValue) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type AttributeValueBlock

type AttributeValueBlock struct {
	// valCount:  The number of items in the pAVal array.
	ValueCount uint32 `idl:"name:valCount" json:"value_count"`
	// pAVal:  The sequence of attribute values.
	Values []*AttributeValue `idl:"name:pAVal;size_is:(valCount)" json:"values"`
}

AttributeValueBlock structure represents ATTRVALBLOCK RPC structure.

The ATTRVALBLOCK structure defines a concrete type for a sequence of attribute values.

func (*AttributeValueBlock) MarshalNDR

func (o *AttributeValueBlock) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*AttributeValueBlock) UnmarshalNDR

func (o *AttributeValueBlock) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type BindRequest

type BindRequest struct {
	// puuidClientDsa: A pointer to a GUID that identifies the caller.
	ClientDSA *dtyp.UUID `idl:"name:puuidClientDsa;pointer:unique" json:"client_dsa"`
	// pextClient: A pointer to client capabilities, for use in version negotiation.
	Client *Extensions `idl:"name:pextClient;pointer:unique" json:"client"`
}

BindRequest structure represents the IDL_DRSBind operation request

func (*BindRequest) MarshalNDR

func (o *BindRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BindRequest) UnmarshalNDR

func (o *BindRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type BindResponse

type BindResponse struct {
	// ppextServer: A pointer to a pointer to server capabilities, for use in version negotiation.
	Server *Extensions `idl:"name:ppextServer" json:"server"`
	// phDrs: A pointer to an RPC context handle (as specified in [C706]), which can be
	// used in calls to other methods in this interface.
	DRS *Handle `idl:"name:phDrs;pointer:ref" json:"drs"`
	// Return: The IDL_DRSBind return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

BindResponse structure represents the IDL_DRSBind operation response

func (*BindResponse) MarshalNDR

func (o *BindResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*BindResponse) UnmarshalNDR

func (o *BindResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type CompAlgorithmType

type CompAlgorithmType uint16

CompAlgorithmType type represents DRS_COMP_ALG_TYPE RPC enumeration.

The DRS_COMP_ALG_TYPE enumeration is a concrete type for identifying a compression algorithm.

var (
	// DRS_COMP_ALG_NONE:  No compression.
	CompressionAlgorithmTypeNone CompAlgorithmType = 0
	// DRS_COMP_ALG_UNUSED:  Unused. MUST not be used.
	CompressionAlgorithmTypeUnused CompAlgorithmType = 1
	// DRS_COMP_ALG_MSZIP:  MSZIP algorithm.
	CompressionAlgorithmTypeMSZIP CompAlgorithmType = 2
	// DRS_COMP_ALG_WIN2K3:  Windows Server 2003 operating system compression.
	CompressionAlgorithmTypeWIN2K3 CompAlgorithmType = 3
)

func (CompAlgorithmType) String

func (o CompAlgorithmType) String() string

type CompressedBlob

type CompressedBlob struct {
	// cbUncompressedSize:  Size in bytes of the uncompressed byte stream.
	UncompressedLength uint32 `idl:"name:cbUncompressedSize" json:"uncompressed_length"`
	// cbCompressedSize:  Size in bytes of the pbCompressedData array.<29>
	CompressedLength uint32 `idl:"name:cbCompressedSize" json:"compressed_length"`
	// pbCompressedData:  Compressed byte stream.
	CompressedData []byte `idl:"name:pbCompressedData;size_is:(cbCompressedSize)" json:"compressed_data"`
}

CompressedBlob structure represents DRS_COMPRESSED_BLOB RPC structure.

The DRS_COMPRESSED_BLOB structure defines a concrete type that results from marshaling a data structure into a byte stream by using RPC and compressing that byte stream.

func (*CompressedBlob) MarshalNDR

func (o *CompressedBlob) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*CompressedBlob) UnmarshalNDR

func (o *CompressedBlob) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ContinuationReferral

type ContinuationReferral struct {
	// pTarget:  The object to which the referral is directed.
	Target *DSName `idl:"name:pTarget" json:"target"`
	// OpState:  The operation state.
	OperationState *NameResolutionOperation `idl:"name:OpState" json:"operation_state"`
	// aliasRDN:  Unused. MUST be 0 and ignored.
	AliasRDN uint16 `idl:"name:aliasRDN" json:"alias_rdn"`
	// RDNsInternal:  Unused. MUST be 0 and ignored.
	RDNsInternal uint16 `idl:"name:RDNsInternal" json:"rdns_internal"`
	// refType:  The type of referral. This field MUST be one of the following values.
	//
	//	+-------------------------------+---------------------------------------------------------------------------------+
	//	|                               |                                                                                 |
	//	|             VALUE             |                                     MEANING                                     |
	//	|                               |                                                                                 |
	//	+-------------------------------+---------------------------------------------------------------------------------+
	//	+-------------------------------+---------------------------------------------------------------------------------+
	//	| CH_REFTYPE_SUPERIOR 0x0000    | A referral to a superior DC.                                                    |
	//	+-------------------------------+---------------------------------------------------------------------------------+
	//	| CH_REFTYPE_SUBORDINATE 0x0001 | A referral to a subordinate DC (for example, to a child domain).                |
	//	+-------------------------------+---------------------------------------------------------------------------------+
	//	| CH_REFTYPE_NSSR 0x0002        | Not in use.                                                                     |
	//	+-------------------------------+---------------------------------------------------------------------------------+
	//	| CH_REFTYPE_CROSS 0x0003       | A referral to an external crossRef object. See [MS-ADTS] section 6.1.1.2.1.1.1. |
	//	+-------------------------------+---------------------------------------------------------------------------------+
	Type uint16 `idl:"name:refType" json:"type"`
	// count:  The count of items in the pDAL linked list.
	Count uint16 `idl:"name:count" json:"count"`
	// pDAL:  A list of network names of the DCs to which the referral is directed.
	AddressList *AddressList `idl:"name:pDAL" json:"address_list"`
	// pNextContRef:  Null, or the next item in the linked list.
	NextContinuationReferral *ContinuationReferral `idl:"name:pNextContRef" json:"next_continuation_referral"`
	// bNewChoice:  True if and only if a new choice is specified.
	NewChoice bool `idl:"name:bNewChoice" json:"new_choice"`
	// choice:  The choice to use in the continuation referral. This field MUST be one of
	// the following values:
	//
	//	+------------------------------+----------------------------------------+
	//	|                              |                                        |
	//	|            VALUE             |                MEANING                 |
	//	|                              |                                        |
	//	+------------------------------+----------------------------------------+
	//	+------------------------------+----------------------------------------+
	//	| SE_CHOICE_BASE_ONLY 0x00     | A base search is to be performed.      |
	//	+------------------------------+----------------------------------------+
	//	| SE_CHOICE_IMMED_CHLDRN 0x01  | A one-level search is to be performed. |
	//	+------------------------------+----------------------------------------+
	//	| SE_CHOICE_WHOLE_SUBTREE 0x02 | A subtree search is to be performed.   |
	//	+------------------------------+----------------------------------------+
	Choice uint8 `idl:"name:choice" json:"choice"`
}

ContinuationReferral structure represents CONTREF_DRS_WIRE_V1 RPC structure.

The CONTREF_DRS_WIRE_V1 structure defines a linked list entry for a continuation referral.

func (*ContinuationReferral) MarshalNDR

func (o *ContinuationReferral) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ContinuationReferral) UnmarshalNDR

func (o *ContinuationReferral) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type CrackNamesRequest

type CrackNamesRequest struct {
	// hDrs: RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: Version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: Pointer to the request message.
	In *MessageCrackNamesRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

CrackNamesRequest structure represents the IDL_DRSCrackNames operation request

func (*CrackNamesRequest) MarshalNDR

func (o *CrackNamesRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*CrackNamesRequest) UnmarshalNDR

func (o *CrackNamesRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type CrackNamesResponse

type CrackNamesResponse struct {
	// pdwOutVersion: Pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: Pointer to the response message.
	Out *MessageCrackNamesReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSCrackNames return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

CrackNamesResponse structure represents the IDL_DRSCrackNames operation response

func (*CrackNamesResponse) MarshalNDR

func (o *CrackNamesResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*CrackNamesResponse) UnmarshalNDR

func (o *CrackNamesResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DSDomainControllerInfoV1

type DSDomainControllerInfoV1 struct {
	// NetbiosName:  NetBIOS name of the DC.
	NetBIOSName string `idl:"name:NetbiosName;string;pointer:unique" json:"netbios_name"`
	// DnsHostName:  DNS host name of the DC.
	DNSHostName string `idl:"name:DnsHostName;string;pointer:unique" json:"dns_host_name"`
	// SiteName:  RDN of the site object.
	SiteName string `idl:"name:SiteName;string;pointer:unique" json:"site_name"`
	// ComputerObjectName:  DN of the computer object that corresponds to the DC.
	ComputerObjectName string `idl:"name:ComputerObjectName;string;pointer:unique" json:"computer_object_name"`
	// ServerObjectName:  DN of the server object that corresponds to the DC.
	ServerObjectName string `idl:"name:ServerObjectName;string;pointer:unique" json:"server_object_name"`
	// fIsPdc:  True if and only if the DC is the PDC FSMO role owner.
	IsPDC bool `idl:"name:fIsPdc" json:"is_pdc"`
	// fDsEnabled:  A Boolean value that indicates whether or not the machine is a domain
	// controller. This value MUST be TRUE.
	DSEnabled bool `idl:"name:fDsEnabled" json:"ds_enabled"`
}

DSDomainControllerInfoV1 structure represents DS_DOMAIN_CONTROLLER_INFO_1W RPC structure.

The DS_DOMAIN_CONTROLLER_INFO_1W structure defines DC information that is returned as a part of the response to an InfoLevel = 1 request. The struct contains information about a single DC in the domain.

func (*DSDomainControllerInfoV1) MarshalNDR

func (o *DSDomainControllerInfoV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSDomainControllerInfoV1) UnmarshalNDR

func (o *DSDomainControllerInfoV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSDomainControllerInfoV2

type DSDomainControllerInfoV2 struct {
	// NetbiosName:  NetBIOS name of the DC.
	NetBIOSName string `idl:"name:NetbiosName;string;pointer:unique" json:"netbios_name"`
	// DnsHostName:  DNS host name of the DC.
	DNSHostName string `idl:"name:DnsHostName;string;pointer:unique" json:"dns_host_name"`
	// SiteName:  RDN of the site object.
	SiteName string `idl:"name:SiteName;string;pointer:unique" json:"site_name"`
	// SiteObjectName:  DN of the site object.
	SiteObjectName string `idl:"name:SiteObjectName;string;pointer:unique" json:"site_object_name"`
	// ComputerObjectName:  DN of the computer object that corresponds to the DC.
	ComputerObjectName string `idl:"name:ComputerObjectName;string;pointer:unique" json:"computer_object_name"`
	// ServerObjectName:  DN of the server object that corresponds to the DC.
	ServerObjectName string `idl:"name:ServerObjectName;string;pointer:unique" json:"server_object_name"`
	// NtdsDsaObjectName:  DN of the nTDSDSA object that corresponds to the DC.
	NTDSDSAObjectName string `idl:"name:NtdsDsaObjectName;string;pointer:unique" json:"ntds_dsa_object_name"`
	// fIsPdc:  True if and only if the DC is the PDC FSMO role owner.
	IsPDC bool `idl:"name:fIsPdc" json:"is_pdc"`
	// fDsEnabled:  A Boolean value that indicates whether or not the machine is a domain
	// controller. This value MUST be TRUE.
	DSEnabled bool `idl:"name:fDsEnabled" json:"ds_enabled"`
	// fIsGc:  True if and only if the DC is also a GC.
	IsGC bool `idl:"name:fIsGc" json:"is_gc"`
	// SiteObjectGuid:  The objectGUID attribute of the site object.
	SiteObjectGUID *dtyp.GUID `idl:"name:SiteObjectGuid" json:"site_object_guid"`
	// ComputerObjectGuid:  The objectGUID attribute of the computer object that corresponds
	// to the DC.
	ComputerObjectGUID *dtyp.GUID `idl:"name:ComputerObjectGuid" json:"computer_object_guid"`
	// ServerObjectGuid:  The objectGUID attribute of the server object that corresponds
	// to the DC.
	ServerObjectGUID *dtyp.GUID `idl:"name:ServerObjectGuid" json:"server_object_guid"`
	// NtdsDsaObjectGuid:  The objectGUID attribute of the nTDSDSA object that corresponds
	// to the DC.
	NTDSDSAObjectGUID *dtyp.GUID `idl:"name:NtdsDsaObjectGuid" json:"ntds_dsa_object_guid"`
}

DSDomainControllerInfoV2 structure represents DS_DOMAIN_CONTROLLER_INFO_2W RPC structure.

The DS_DOMAIN_CONTROLLER_INFO_2W structure defines DC information that is returned as a part of the response to an InfoLevel = 2 request. The struct contains information about a single DC in the domain.

func (*DSDomainControllerInfoV2) MarshalNDR

func (o *DSDomainControllerInfoV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSDomainControllerInfoV2) UnmarshalNDR

func (o *DSDomainControllerInfoV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSDomainControllerInfoV3

type DSDomainControllerInfoV3 struct {
	// NetbiosName:  NetBIOS name of the DC.
	NetBIOSName string `idl:"name:NetbiosName;string;pointer:unique" json:"netbios_name"`
	// DnsHostName:  DNS host name of the DC.
	DNSHostName string `idl:"name:DnsHostName;string;pointer:unique" json:"dns_host_name"`
	// SiteName:  RDN of the site object.
	SiteName string `idl:"name:SiteName;string;pointer:unique" json:"site_name"`
	// SiteObjectName:  DN of the site object.
	SiteObjectName string `idl:"name:SiteObjectName;string;pointer:unique" json:"site_object_name"`
	// ComputerObjectName:  DN of the computer object that corresponds to the DC.
	ComputerObjectName string `idl:"name:ComputerObjectName;string;pointer:unique" json:"computer_object_name"`
	// ServerObjectName:  DN of the server object that corresponds to the DC.
	ServerObjectName string `idl:"name:ServerObjectName;string;pointer:unique" json:"server_object_name"`
	// NtdsDsaObjectName:  DN of the nTDSDSA object that corresponds to the DC.
	NTDSDSAObjectName string `idl:"name:NtdsDsaObjectName;string;pointer:unique" json:"ntds_dsa_object_name"`
	// fIsPdc:  True if and only if the DC is the PDC FSMO role owner.
	IsPDC bool `idl:"name:fIsPdc" json:"is_pdc"`
	// fDsEnabled:  A Boolean value that indicates whether or not the machine is a domain
	// controller. This value MUST be TRUE.
	DSEnabled bool `idl:"name:fDsEnabled" json:"ds_enabled"`
	// fIsGc:  True if and only if the DC is also a GC.
	IsGC bool `idl:"name:fIsGc" json:"is_gc"`
	// fIsRodc:  True if and only if the DC is an RODC.
	IsReadOnlyDC bool `idl:"name:fIsRodc" json:"is_read_only_dc"`
	// SiteObjectGuid:  objectGUID of the site object.
	SiteObjectGUID *dtyp.GUID `idl:"name:SiteObjectGuid" json:"site_object_guid"`
	// ComputerObjectGuid:  objectGUID of the computer object that corresponds to the DC.
	ComputerObjectGUID *dtyp.GUID `idl:"name:ComputerObjectGuid" json:"computer_object_guid"`
	// ServerObjectGuid:  objectGUID of the server object that corresponds to the DC.
	ServerObjectGUID *dtyp.GUID `idl:"name:ServerObjectGuid" json:"server_object_guid"`
	// NtdsDsaObjectGuid:  objectGUID of the nTDSDSA object that corresponds to the DC.
	NTDSDSAObjectGUID *dtyp.GUID `idl:"name:NtdsDsaObjectGuid" json:"ntds_dsa_object_guid"`
}

DSDomainControllerInfoV3 structure represents DS_DOMAIN_CONTROLLER_INFO_3W RPC structure.

The DS_DOMAIN_CONTROLLER_INFO_3W structure defines DC information that is returned as a part of the response to an InfoLevel = 3 request. The struct contains information about a single DC in the domain.

func (*DSDomainControllerInfoV3) MarshalNDR

func (o *DSDomainControllerInfoV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSDomainControllerInfoV3) UnmarshalNDR

func (o *DSDomainControllerInfoV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSDomainControllerInfoVQ

type DSDomainControllerInfoVQ struct {
	// IPAddress:  The IPv4 address of the client that established the LDAP connection to
	// the server. If the client is connected with IPv6, this field MUST be zero.
	IPAddress uint32 `idl:"name:IPAddress" json:"ip_address"`
	// NotificationCount:  Number of LDAP notifications enabled on the server.
	NotificationCount uint32 `idl:"name:NotificationCount" json:"notification_count"`
	// secTimeConnected:  Total time in number of seconds that the connection is established.
	SecurityTimeConnected uint32 `idl:"name:secTimeConnected" json:"security_time_connected"`
	// Flags:  Zero or more of the bit flags from LDAP_CONN_PROPERTIES indicating the properties
	// of this connection.
	Flags uint32 `idl:"name:Flags" json:"flags"`
	// TotalRequests:  Total number of LDAP requests made on this LDAP connection.
	TotalRequests uint32 `idl:"name:TotalRequests" json:"total_requests"`

	// UserName:  Name of the security principal that established the LDAP connection.
	UserName string `idl:"name:UserName;string;pointer:unique" json:"user_name"`
	// contains filtered or unexported fields
}

DSDomainControllerInfoVQ structure represents DS_DOMAIN_CONTROLLER_INFO_FFFFFFFFW RPC structure.

The DS_DOMAIN_CONTROLLER_INFO_FFFFFFFFW structure defines DC information that is returned as a part of the response to an InfoLevel = 0xFFFFFFFF request. The struct contains information about a single LDAP connection to the current server.

func (*DSDomainControllerInfoVQ) MarshalNDR

func (o *DSDomainControllerInfoVQ) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSDomainControllerInfoVQ) UnmarshalNDR

func (o *DSDomainControllerInfoVQ) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSName

type DSName struct {
	// structLen:  The length, in bytes, of the entire data structure.
	Length uint32 `idl:"name:structLen" json:"length"`
	// SidLen:  The number of bytes in the Sid field used to represent the object's objectSid
	// attribute value. Zero indicates that the DSNAME does not identify the objectSid value
	// of the directory object.
	SIDLength uint32 `idl:"name:SidLen" json:"sid_length"`
	// Guid:  The value of the object's objectGUID attribute specified as a GUID structure,
	// which is defined in [MS-DTYP] section 2.3.4. If the values for all fields in the
	// GUID structure are zero, this indicates that the DSNAME does not identify the objectGUID
	// value of the directory object.
	GUID *dtyp.GUID `idl:"name:Guid" json:"guid"`
	// Sid:  The value of the object's objectSid attribute, its security identifier, specified
	// as a SID structure, which is defined in [MS-DTYP] section 2.4.2. The size of this
	// field is exactly 28 bytes, regardless of the value of SidLen, which specifies how
	// many bytes in this field are used. Note that this is smaller than the theoretical
	// size limit of a SID, which is 68 bytes. While Windows publishes a general SID format,
	// Windows never uses that format in its full generality. 28 bytes is sufficient for
	// a Windows SID.
	SID *NT4SID `idl:"name:Sid" json:"sid"`
	// NameLen:  The number of characters in the StringName field, not including the terminating
	// null character, used to represent the object's distinguishedName attribute value.
	// Zero indicates that the DSNAME does not identify the distinguishedName value of the
	// directory object.
	NameLength uint32 `idl:"name:NameLen" json:"name_length"`
	// StringName:  A null-terminated Unicode value of the object's distinguishedName attribute,
	// as specified in [MS-ADTS] section 3.1.1.1.4. This field always contains at least
	// one character: the terminating null character. Each Unicode value is encoded as 2
	// bytes. The byte ordering is little-endian.<48>
	//
	// The following table shows an alternative representation of this structure.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| structLen                                                                                                                     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| SidLen                                                                                                                        |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| Guid.Data1                                                                                                                    |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| Guid.Data2                                                    | Guid.Data3                                                    |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| Guid.Data4...                                                                                                                 |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Guid.Data4                                                                                                                 |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| Sid...                                                                                                                        |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Sid...                                                                                                                     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Sid...                                                                                                                     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Sid...                                                                                                                     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Sid...                                                                                                                     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Sid...                                                                                                                     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...Sid                                                                                                                        |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| NameLen                                                                                                                       |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| StringName (Variable Length) ...                                                                                              |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// Note  All fields have little-endian byte ordering.
	StringName string `idl:"name:StringName;size_is:((NameLen+1))" json:"string_name"`
}

DSName structure represents DSNAME RPC structure.

DSNAME is a concrete type for representing a DSName, identifying a directory object using the values of one or more of its LDAP attributes: objectGUID, objectSid, or distinguishedName.

func (*DSName) MarshalNDR

func (o *DSName) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSName) NDRSizeInfo

func (o *DSName) NDRSizeInfo() []uint64

func (*DSName) UnmarshalNDR

func (o *DSName) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSNameError added in v1.0.2

type DSNameError uint32

DSNameError type represents DS_NAME_ERROR RPC enumeration.

var (
	DSNameErrorNoError                DSNameError = 0
	DSNameErrorResolving              DSNameError = 1
	DSNameErrorNotFound               DSNameError = 2
	DSNameErrorNotUnique              DSNameError = 3
	DSNameErrorNoMapping              DSNameError = 4
	DSNameErrorDomainOnly             DSNameError = 5
	DSNameErrorNoSyntacticalMapping   DSNameError = 6
	DSNameErrorTrustReferral          DSNameError = 7
	DSNameErrorIsSIDHistoryUnknown    DSNameError = 4294967282
	DSNameErrorIsSIDHistoryAlias      DSNameError = 4294967283
	DSNameErrorIsSIDHistoryGroup      DSNameError = 4294967284
	DSNameErrorIsSIDHistoryUser       DSNameError = 4294967285
	DSNameErrorIsSIDUnknown           DSNameError = 4294967286
	DSNameErrorIsSIDAlias             DSNameError = 4294967287
	DSNameErrorIsSIDGroup             DSNameError = 4294967288
	DSNameErrorIsSIDUser              DSNameError = 4294967289
	DSNameErrorSchemaGUIDControlRight DSNameError = 4294967290
	DSNameErrorSchemaGUIDClass        DSNameError = 4294967291
	DSNameErrorSchemaGUIDAttributeSet DSNameError = 4294967292
	DSNameErrorSchemaGUIDAttribute    DSNameError = 4294967293
	DSNameErrorSchemaGUIDNotFound     DSNameError = 4294967294
	DSNameErrorIsFPO                  DSNameError = 4294967295
)

func (DSNameError) String added in v1.0.2

func (o DSNameError) String() string

type DSNameFormat added in v1.0.3

type DSNameFormat uint32

DSNameFormat type represents DS_NAME_FORMAT RPC enumeration.

The DS_NAME_FORMAT enumeration describes the format of a name sent to or received from the IDL_DRSCrackNames method.

var (
	// DS_UNKNOWN_NAME:  The server looks up the name by using the algorithm specified
	// in the LookupUnknownName procedure.
	DSNameFormatUnknownName DSNameFormat = 0
	// DS_FQDN_1779_NAME:  A distinguished name.
	DSNameFormatFQDN1779Name DSNameFormat = 1
	// DS_NT4_ACCOUNT_NAME:  Windows NT 4.0 operating system (and prior) name format. The
	// account name is in the format domain\user and the domain-only name is in the format
	// domain\.
	DSNameFormatNT4AccountName DSNameFormat = 2
	// DS_DISPLAY_NAME:  A user-friendly display name.
	DSNameFormatDisplayName DSNameFormat = 3
	// DS_UNIQUE_ID_NAME:  Curly braced string representation of an objectGUID. The format
	// of the string representation is specified in [MS-DTYP] section 2.3.4.3.
	DSNameFormatUniqueIDName DSNameFormat = 6
	// DS_CANONICAL_NAME:  A canonical name.
	DSNameFormatCanonicalName DSNameFormat = 7
	// DS_USER_PRINCIPAL_NAME:  User principal name.
	DSNameFormatUserPrincipalName DSNameFormat = 8
	// DS_CANONICAL_NAME_EX:  Same as DS_CANONICAL_NAME except that the rightmost forward
	// slash (/) is replaced with a newline character (\n).
	DSNameFormatCanonicalNameEx DSNameFormat = 9
	// DS_SERVICE_PRINCIPAL_NAME:  Service principal name (SPN).
	DSNameFormatServicePrincipalName DSNameFormat = 10
	// DS_SID_OR_SID_HISTORY_NAME:  String representation of a SID (as specified in [MS-DTYP]
	// section 2.4.2).
	DSNameFormatSIDOrSIDHistoryName DSNameFormat = 11
	// DS_DNS_DOMAIN_NAME:  Not supported.
	DSNameFormatDNSDomainName                     DSNameFormat = 12
	DSNameFormatListSites                         DSNameFormat = 4294967295
	DSNameFormatListServersInSite                 DSNameFormat = 4294967294
	DSNameFormatListDomainsInSite                 DSNameFormat = 4294967293
	DSNameFormatListServersForDomainInSite        DSNameFormat = 4294967292
	DSNameFormatListInfoForServer                 DSNameFormat = 4294967291
	DSNameFormatListRoles                         DSNameFormat = 4294967290
	DSNameFormatNT4AccountNameSANSDomain          DSNameFormat = 4294967289
	DSNameFormatMapSchemaGUID                     DSNameFormat = 4294967288
	DSNameFormatListDomains                       DSNameFormat = 4294967287
	DSNameFormatListNCS                           DSNameFormat = 4294967286
	DSNameFormatLtSecurityIdentitiesName          DSNameFormat = 4294967285
	DSNameFormatStringSIDName                     DSNameFormat = 4294967284
	DSNameFormatListServersWithDCSInSite          DSNameFormat = 4294967283
	DSNameFormatListGlobalCatalogServers          DSNameFormat = 4294967281
	DSNameFormatNT4AccountNameSANSDomainEx        DSNameFormat = 4294967280
	DSNameFormatUserPrincipalNameAndAltSecurityID DSNameFormat = 4294967279
	DSNameFormatUserPrincipalNameForLogon         DSNameFormat = 4294967282
)

func (DSNameFormat) String added in v1.0.3

func (o DSNameFormat) String() string

type DSNameResult

type DSNameResult struct {
	// cItems:  The count of items in the rItems array.
	ItemsCount uint32 `idl:"name:cItems" json:"items_count"`
	// rItems:  Translated names that correspond one-to-one with the elements in the rpNames
	// field of the request.
	Items []*DSNameResultItem `idl:"name:rItems;size_is:(cItems)" json:"items"`
}

DSNameResult structure represents DS_NAME_RESULTW RPC structure.

The DS_NAME_RESULTW structure defines the translated names returned by the IDL_DRSCrackNames method.

func (*DSNameResult) MarshalNDR

func (o *DSNameResult) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSNameResult) UnmarshalNDR

func (o *DSNameResult) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSNameResultItem

type DSNameResultItem struct {
	// status:  Status of the crack name operation for the corresponding element of the
	// rpNames field in the request. The status is one of the values from the enumeration
	// DS_NAME_ERROR.
	Status uint32 `idl:"name:status" json:"status"`
	// pDomain:  DNS domain name of the domain in which the named object resides.
	Domain string `idl:"name:pDomain;string;pointer:unique" json:"domain"`
	// pName:  Object name in the requested format.
	Name string `idl:"name:pName;string;pointer:unique" json:"name"`
}

DSNameResultItem structure represents DS_NAME_RESULT_ITEMW RPC structure.

The DS_NAME_RESULT_ITEMW structure defines the translated name returned by the IDL_DRSCrackNames method.

func (*DSNameResultItem) MarshalNDR

func (o *DSNameResultItem) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSNameResultItem) UnmarshalNDR

func (o *DSNameResultItem) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationAttributeMetadata

type DSReplicationAttributeMetadata struct {
	// pszAttributeName:  The lDAPDisplayName of the attribute to which the stamp corresponds.
	AttributeName string `idl:"name:pszAttributeName;string" json:"attribute_name"`
	// dwVersion:  The stamp version.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// ftimeLastOriginatingChange:  The date and time at which the last originating update
	// was made.
	LastOriginatingChange *dtyp.Filetime `idl:"name:ftimeLastOriginatingChange" json:"last_originating_change"`
	// uuidLastOriginatingDsaInvocationID:  The invocation ID of the DC that performed the
	// last originating update.
	LastOriginatingDSAInvocationID *dtyp.UUID `idl:"name:uuidLastOriginatingDsaInvocationID" json:"last_originating_dsa_invocation_id"`
	// usnOriginatingChange:  The USN assigned to the last originating update by the DC
	// that performed it.
	OriginatingChange int64 `idl:"name:usnOriginatingChange" json:"originating_change"`
	// usnLocalChange:  An implementation-specific value.
	LocalChange int64 `idl:"name:usnLocalChange" json:"local_change"`
}

DSReplicationAttributeMetadata structure represents DS_REPL_ATTR_META_DATA RPC structure.

The DS_REPL_ATTR_META_DATA structure defines an attribute stamp for a given object. This structure is a concrete representation of an AttributeStamp.

func (*DSReplicationAttributeMetadata) MarshalNDR

func (*DSReplicationAttributeMetadata) UnmarshalNDR

type DSReplicationAttributeMetadata2

type DSReplicationAttributeMetadata2 struct {
	// pszAttributeName:  The lDAPDisplayName of the attribute to which the stamp corresponds.
	AttributeName string `idl:"name:pszAttributeName;string" json:"attribute_name"`
	// dwVersion:  The stamp version.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// ftimeLastOriginatingChange:  The date and time at which the last originating update
	// was made.
	LastOriginatingChange *dtyp.Filetime `idl:"name:ftimeLastOriginatingChange" json:"last_originating_change"`
	// uuidLastOriginatingDsaInvocationID:  The invocation ID of the DC that performed the
	// last originating update.
	LastOriginatingDSAInvocationID *dtyp.UUID `idl:"name:uuidLastOriginatingDsaInvocationID" json:"last_originating_dsa_invocation_id"`
	// usnOriginatingChange:  The USN assigned to the last originating update by the DC
	// that performed it.
	OriginatingChange int64 `idl:"name:usnOriginatingChange" json:"originating_change"`
	// usnLocalChange:  An implementation-specific value.
	LocalChange int64 `idl:"name:usnLocalChange" json:"local_change"`
	// pszLastOriginatingDsaDN:  The DN of the nTDSDSA object with an invocationId of uuidLastOriginatingDsaInvocationID.
	LastOriginatingDSADN string `idl:"name:pszLastOriginatingDsaDN;string" json:"last_originating_dsa_dn"`
}

DSReplicationAttributeMetadata2 structure represents DS_REPL_ATTR_META_DATA_2 RPC structure.

The DS_REPL_ATTR_META_DATA_2 structure defines an attribute stamp for a given object. This structure is a concrete representation of an AttributeStamp; it is a superset of DS_REPL_ATTR_META_DATA.

func (*DSReplicationAttributeMetadata2) MarshalNDR

func (*DSReplicationAttributeMetadata2) UnmarshalNDR

type DSReplicationAttributeValueMetadata

type DSReplicationAttributeValueMetadata struct {
	// cNumEntries:  The number of items in rgMetaData array.
	EntriesCount uint32 `idl:"name:cNumEntries" json:"entries_count"`
	// dwEnumerationContext:  The value a client uses to populate the dwEnumerationContext
	// field of the request on a future call to IDL_DRSGetReplInfo to retrieve additional
	// results.  For an informative description of the sequencing issues associated with
	// this field, see section 1.3.2.
	EnumerationContext uint32 `idl:"name:dwEnumerationContext" json:"enumeration_context"`
	// rgMetaData:  The sequence of link value stamps.
	Metadata []*DSReplicationValueMetadata `idl:"name:rgMetaData;size_is:(cNumEntries)" json:"metadata"`
}

DSReplicationAttributeValueMetadata structure represents DS_REPL_ATTR_VALUE_META_DATA RPC structure.

The DS_REPL_ATTR_VALUE_META_DATA structure defines a sequence of link value stamps. This structure is a concrete representation of a sequence of LinkValueStamp values.

func (*DSReplicationAttributeValueMetadata) MarshalNDR

func (*DSReplicationAttributeValueMetadata) NDRSizeInfo

func (o *DSReplicationAttributeValueMetadata) NDRSizeInfo() []uint64

func (*DSReplicationAttributeValueMetadata) UnmarshalNDR

type DSReplicationAttributeValueMetadata2

type DSReplicationAttributeValueMetadata2 struct {
	// cNumEntries:  The number of items in the rgMetaData array.
	EntriesCount uint32 `idl:"name:cNumEntries" json:"entries_count"`
	// dwEnumerationContext:  The value a client uses to populate the dwEnumerationContext
	// field of the request on a future call to IDL_DRSGetReplInfo to retrieve additional
	// results. For an informative description of the sequencing issues associated with
	// this field, see section 1.3.2.
	EnumerationContext uint32 `idl:"name:dwEnumerationContext" json:"enumeration_context"`
	// rgMetaData:  The sequence of link value stamps.
	Metadata []*DSReplicationValueMetadata2 `idl:"name:rgMetaData;size_is:(cNumEntries)" json:"metadata"`
}

DSReplicationAttributeValueMetadata2 structure represents DS_REPL_ATTR_VALUE_META_DATA_2 RPC structure.

The DS_REPL_ATTR_VALUE_META_DATA_2 structure defines a sequence of link value stamps. This structure is a concrete representation of a sequence of LinkValueStamp values; it is a superset of DS_REPL_ATTR_VALUE_META_DATA.

func (*DSReplicationAttributeValueMetadata2) MarshalNDR

func (*DSReplicationAttributeValueMetadata2) NDRSizeInfo

func (o *DSReplicationAttributeValueMetadata2) NDRSizeInfo() []uint64

func (*DSReplicationAttributeValueMetadata2) UnmarshalNDR

type DSReplicationClientContext

type DSReplicationClientContext struct {
	// hCtx:  The unique ID of the client context.
	Context uint64 `idl:"name:hCtx" json:"context"`
	// lReferenceCount:  The number of references to the context.
	ReferenceCount int32 `idl:"name:lReferenceCount" json:"reference_count"`
	// fIsBound:  True if and only if the context has not yet been closed by the IDL_DRSUnbind
	// method.
	IsBound bool `idl:"name:fIsBound" json:"is_bound"`
	// uuidClient:  Zeros, or the value pointed to by the puuidClientDsa parameter to IDL_DRSBind.
	Client *dtyp.UUID `idl:"name:uuidClient" json:"client"`
	// timeLastUsed:  The date and time at which this context was last used in an RPC method
	// call.
	TimeLastUsed int64 `idl:"name:timeLastUsed" json:"time_last_used"`
	// IPAddr:  The IPv4 address of the client. If the client is connected with IPv6, this
	// field MUST be 0.
	IPAddr uint32 `idl:"name:IPAddr" json:"ip_addr"`
	// pid:  The process ID specified by the client in the pextClient parameter to IDL_DRSBind.
	PID int32 `idl:"name:pid" json:"pid"`
}

DSReplicationClientContext structure represents DS_REPL_CLIENT_CONTEXT RPC structure.

The DS_REPL_CLIENT_CONTEXT structure defines an active RPC client connection. This structure is a concrete representation of a tuple in an RPCClientContexts sequence.

func (*DSReplicationClientContext) MarshalNDR

func (o *DSReplicationClientContext) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationClientContext) UnmarshalNDR

func (o *DSReplicationClientContext) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationClientContexts

type DSReplicationClientContexts struct {
	// cNumContexts:  The number of items in the rgContext array.
	ContextsCount uint32 `idl:"name:cNumContexts" json:"contexts_count"`

	// rgContext:  A set of active RPC client connections.
	Context []*DSReplicationClientContext `idl:"name:rgContext;size_is:(cNumContexts)" json:"context"`
	// contains filtered or unexported fields
}

DSReplicationClientContexts structure represents DS_REPL_CLIENT_CONTEXTS RPC structure.

The DS_REPL_CLIENT_CONTEXTS structure defines a set of active RPC client connections. This structure is a concrete representation of RPCClientContexts.

func (*DSReplicationClientContexts) MarshalNDR

func (*DSReplicationClientContexts) NDRSizeInfo

func (o *DSReplicationClientContexts) NDRSizeInfo() []uint64

func (*DSReplicationClientContexts) UnmarshalNDR

func (o *DSReplicationClientContexts) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationCursor

type DSReplicationCursor struct {
	// uuidSourceDsaInvocationID:  The invocation ID of a DC.
	SourceDSAInvocationID *dtyp.UUID `idl:"name:uuidSourceDsaInvocationID" json:"source_dsa_invocation_id"`
	// usnAttributeFilter:  The update sequence number (USN) at which an update was applied
	// on the DC.
	AttributeFilter int64 `idl:"name:usnAttributeFilter" json:"attribute_filter"`
}

DSReplicationCursor structure represents DS_REPL_CURSOR RPC structure.

The DS_REPL_CURSOR structure defines a replication cursor for a given NC replica. This structure is a concrete representation of a ReplUpToDateVector value.

func (*DSReplicationCursor) MarshalNDR

func (o *DSReplicationCursor) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationCursor) UnmarshalNDR

func (o *DSReplicationCursor) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationCursor2

type DSReplicationCursor2 struct {
	// uuidSourceDsaInvocationID:  The invocation ID of a DC.
	SourceDSAInvocationID *dtyp.UUID `idl:"name:uuidSourceDsaInvocationID" json:"source_dsa_invocation_id"`
	// usnAttributeFilter:  The USN at which an update was applied on the DC.
	AttributeFilter int64 `idl:"name:usnAttributeFilter" json:"attribute_filter"`
	// ftimeLastSyncSuccess:  The time at which the last successful replication occurred
	// from the DC identified by uuidDsa. Used for replication latency reporting only.
	LastSyncSuccess *dtyp.Filetime `idl:"name:ftimeLastSyncSuccess" json:"last_sync_success"`
}

DSReplicationCursor2 structure represents DS_REPL_CURSOR_2 RPC structure.

The DS_REPL_CURSOR_2 structure defines a replication cursor for a given NC replica. This structure is a concrete representation of a ReplUpToDateVector value; it is a superset of DS_REPL_CURSOR.

func (*DSReplicationCursor2) MarshalNDR

func (o *DSReplicationCursor2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationCursor2) UnmarshalNDR

func (o *DSReplicationCursor2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationCursorV3

type DSReplicationCursorV3 struct {
	// uuidSourceDsaInvocationID:  The invocation ID of a DC.
	SourceDSAInvocationID *dtyp.UUID `idl:"name:uuidSourceDsaInvocationID" json:"source_dsa_invocation_id"`
	// usnAttributeFilter:  The USN at which an update was applied on the DC.
	AttributeFilter int64 `idl:"name:usnAttributeFilter" json:"attribute_filter"`
	// ftimeLastSyncSuccess:  The time at which the last successful replication occurred
	// from the DC identified by uuidDsa. Used for replication latency reporting only.
	LastSyncSuccess *dtyp.Filetime `idl:"name:ftimeLastSyncSuccess" json:"last_sync_success"`
	// pszSourceDsaDN:  The DN of the nTDSDSA object with an invocationId of uuidSourceDsaInvocationID.
	SourceDSADN string `idl:"name:pszSourceDsaDN;string" json:"source_dsa_dn"`
}

DSReplicationCursorV3 structure represents DS_REPL_CURSOR_3W RPC structure.

The DS_REPL_CURSOR_3W structure defines a replication cursor for a given NC replica. This structure is a concrete representation of a ReplUpToDateVector value; it is a superset of DS_REPL_CURSOR_2.

func (*DSReplicationCursorV3) MarshalNDR

func (o *DSReplicationCursorV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationCursorV3) UnmarshalNDR

func (o *DSReplicationCursorV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationCursors

type DSReplicationCursors struct {
	// cNumCursors:  The count of items in the rgCursor array.
	CursorsCount uint32 `idl:"name:cNumCursors" json:"cursors_count"`

	// rgCursor:  A set of replication cursors.
	Cursor []*DSReplicationCursor `idl:"name:rgCursor;size_is:(cNumCursors)" json:"cursor"`
	// contains filtered or unexported fields
}

DSReplicationCursors structure represents DS_REPL_CURSORS RPC structure.

The DS_REPL_CURSORS structure defines a set of replication cursors for a given NC replica. This structure is a concrete representation of a sequence of ReplUpToDateVector values.

func (*DSReplicationCursors) MarshalNDR

func (o *DSReplicationCursors) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationCursors) NDRSizeInfo

func (o *DSReplicationCursors) NDRSizeInfo() []uint64

func (*DSReplicationCursors) UnmarshalNDR

func (o *DSReplicationCursors) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationCursors2

type DSReplicationCursors2 struct {
	// cNumCursors:  The count of items in the rgCursor array.
	CursorsCount uint32 `idl:"name:cNumCursors" json:"cursors_count"`
	// dwEnumerationContext:  The value a client uses to populate the dwEnumerationContext
	// field of the request on a future call to IDL_DRSGetReplInfo to retrieve additional
	// results.  For an informative description of the sequencing issues associated with
	// this field, see section 1.3.2.
	EnumerationContext uint32 `idl:"name:dwEnumerationContext" json:"enumeration_context"`
	// rgCursor:  A set of replication cursors.
	Cursor []*DSReplicationCursor2 `idl:"name:rgCursor;size_is:(cNumCursors)" json:"cursor"`
}

DSReplicationCursors2 structure represents DS_REPL_CURSORS_2 RPC structure.

The DS_REPL_CURSORS_2 structure defines a set of replication cursors for a given NC replica. This structure is a concrete representation of a sequence of ReplUpToDateVector values; it is a superset of DS_REPL_CURSORS.

func (*DSReplicationCursors2) MarshalNDR

func (o *DSReplicationCursors2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationCursors2) NDRSizeInfo

func (o *DSReplicationCursors2) NDRSizeInfo() []uint64

func (*DSReplicationCursors2) UnmarshalNDR

func (o *DSReplicationCursors2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationCursorsV3

type DSReplicationCursorsV3 struct {
	// cNumCursors:  The count of items in the rgCursor array.
	CursorsCount uint32 `idl:"name:cNumCursors" json:"cursors_count"`
	// dwEnumerationContext:  The value a client uses to populate the dwEnumerationContext
	// field of the request on a future call to IDL_DRSGetReplInfo to retrieve additional
	// results.  For an informative description of the sequencing issues associated with
	// this field, see section 1.3.2.
	EnumerationContext uint32 `idl:"name:dwEnumerationContext" json:"enumeration_context"`
	// rgCursor:  A set of replication cursors.
	Cursor []*DSReplicationCursorV3 `idl:"name:rgCursor;size_is:(cNumCursors)" json:"cursor"`
}

DSReplicationCursorsV3 structure represents DS_REPL_CURSORS_3W RPC structure.

The DS_REPL_CURSORS_3W structure defines a replication cursor for a given NC replica. This structure is a concrete representation of a sequence of ReplUpToDateVector values; it is a superset of DS_REPL_CURSORS_2.

func (*DSReplicationCursorsV3) MarshalNDR

func (o *DSReplicationCursorsV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationCursorsV3) NDRSizeInfo

func (o *DSReplicationCursorsV3) NDRSizeInfo() []uint64

func (*DSReplicationCursorsV3) UnmarshalNDR

func (o *DSReplicationCursorsV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationKCCDSAFailure

type DSReplicationKCCDSAFailure struct {
	// pszDsaDN:  The DN of the nTDSDSA object corresponding to the DC.
	DSADN string `idl:"name:pszDsaDN;string" json:"dsa_dn"`
	// uuidDsaObjGuid:  The DSA GUID of the DC.
	DSAObjectGUID *dtyp.UUID `idl:"name:uuidDsaObjGuid" json:"dsa_object_guid"`
	// ftimeFirstFailure:  The date and time at which the DC entered an error state.
	FirstFailure *dtyp.Filetime `idl:"name:ftimeFirstFailure" json:"first_failure"`
	// cNumFailures:  The number of errors that have occurred.
	FailuresCount uint32 `idl:"name:cNumFailures" json:"failures_count"`
	// dwLastResult:  The Windows error code, as specified in [MS-ERREF] section 2.2, for
	// the last error.
	LastResult uint32 `idl:"name:dwLastResult" json:"last_result"`
}

DSReplicationKCCDSAFailure structure represents DS_REPL_KCC_DSA_FAILUREW RPC structure.

The DS_REPL_KCC_DSA_FAILUREW structure defines a DC that is in a replication error state. This structure is a concrete representation of a tuple in a KCCFailedConnections or KCCFailedLinks sequence.

func (*DSReplicationKCCDSAFailure) MarshalNDR

func (o *DSReplicationKCCDSAFailure) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationKCCDSAFailure) UnmarshalNDR

func (o *DSReplicationKCCDSAFailure) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationKCCDSAFailures

type DSReplicationKCCDSAFailures struct {
	// cNumEntries:  The count of items in the rgDsaFailure array.
	EntriesCount uint32 `idl:"name:cNumEntries" json:"entries_count"`

	// rgDsaFailure:  An array of DS_REPL_KCC_DSA_FAILUREW structures.
	DSAFailure []*DSReplicationKCCDSAFailure `idl:"name:rgDsaFailure;size_is:(cNumEntries)" json:"dsa_failure"`
	// contains filtered or unexported fields
}

DSReplicationKCCDSAFailures structure represents DS_REPL_KCC_DSA_FAILURESW RPC structure.

The DS_REPL_KCC_DSA_FAILURESW structure defines a set of DCs that are in an error state with respect to replication. This structure is a concrete representation of KCCFailedConnections and KCCFailedLinks.

func (*DSReplicationKCCDSAFailures) MarshalNDR

func (*DSReplicationKCCDSAFailures) NDRSizeInfo

func (o *DSReplicationKCCDSAFailures) NDRSizeInfo() []uint64

func (*DSReplicationKCCDSAFailures) UnmarshalNDR

func (o *DSReplicationKCCDSAFailures) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationNeighbor

type DSReplicationNeighbor struct {
	// pszNamingContext:  The NC root of the NC replica.
	NamingContext string `idl:"name:pszNamingContext;string" json:"naming_context"`
	// pszSourceDsaDN:  The DN of the server DC nTDSDSA object.
	SourceDSADN string `idl:"name:pszSourceDsaDN;string" json:"source_dsa_dn"`
	// pszSourceDsaAddress:  The NetworkAddress of the server DC.
	SourceDSAAddress string `idl:"name:pszSourceDsaAddress;string" json:"source_dsa_address"`
	// pszAsyncIntersiteTransportDN:  The DN of the interSiteTransport object corresponding
	// to the transport used to communicate with the server DC.
	AsyncIntersiteTransportDN string `idl:"name:pszAsyncIntersiteTransportDN;string" json:"async_intersite_transport_dn"`
	// dwReplicaFlags:  The DRS_OPTIONS flags.
	ReplicaFlags uint32 `idl:"name:dwReplicaFlags" json:"replica_flags"`

	// uuidNamingContextObjGuid:  The objectGUID of the NC root.
	NamingContextObjectGUID *dtyp.UUID `idl:"name:uuidNamingContextObjGuid" json:"naming_context_object_guid"`
	// uuidSourceDsaObjGuid:  The DSA GUID of the server DC.
	SourceDSAObjectGUID *dtyp.UUID `idl:"name:uuidSourceDsaObjGuid" json:"source_dsa_object_guid"`
	// uuidSourceDsaInvocationID:  The invocation ID associated with the server DC.
	SourceDSAInvocationID *dtyp.UUID `idl:"name:uuidSourceDsaInvocationID" json:"source_dsa_invocation_id"`
	// uuidAsyncIntersiteTransportObjGuid:  The objectGUID of the interSiteTransport object
	// corresponding to the transport used to communicate with the server DC.
	AsyncIntersiteTransportObjectGUID *dtyp.UUID `idl:"name:uuidAsyncIntersiteTransportObjGuid" json:"async_intersite_transport_object_guid"`
	// usnLastObjChangeSynced:  An implementation-specific value.
	LastObjectChangeSynced int64 `idl:"name:usnLastObjChangeSynced" json:"last_object_change_synced"`
	// usnAttributeFilter:  An implementation-specific value.
	AttributeFilter int64 `idl:"name:usnAttributeFilter" json:"attribute_filter"`
	// ftimeLastSyncSuccess:  The time of the last successful replication from the server
	// DC.
	LastSyncSuccess *dtyp.Filetime `idl:"name:ftimeLastSyncSuccess" json:"last_sync_success"`
	// ftimeLastSyncAttempt:  The time of the last attempt to replicate from the server
	// DC.
	LastSyncAttempt *dtyp.Filetime `idl:"name:ftimeLastSyncAttempt" json:"last_sync_attempt"`
	// dwLastSyncResult:  0, or the Windows error code, as specified in [MS-ERREF] section
	// 2.2, resulting from the last sync attempt.
	LastSyncResult uint32 `idl:"name:dwLastSyncResult" json:"last_sync_result"`
	// cNumConsecutiveSyncFailures:  The number of consecutive failures to replicate from
	// the server DC.
	ConsecutiveSyncFailuresCount uint32 `idl:"name:cNumConsecutiveSyncFailures" json:"consecutive_sync_failures_count"`
	// contains filtered or unexported fields
}

DSReplicationNeighbor structure represents DS_REPL_NEIGHBORW RPC structure.

The DS_REPL_NEIGHBORW structure defines a replication neighbor. This structure is a concrete representation of a RepsFrom or RepsTo value.

func (*DSReplicationNeighbor) MarshalNDR

func (o *DSReplicationNeighbor) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationNeighbor) UnmarshalNDR

func (o *DSReplicationNeighbor) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationNeighbors

type DSReplicationNeighbors struct {
	// cNumNeighbors:  The count of items in the rgNeighbor array.
	NeighborsCount uint32 `idl:"name:cNumNeighbors" json:"neighbors_count"`

	// rgNeighbor:  A set of replication neighbors.
	Neighbor []*DSReplicationNeighbor `idl:"name:rgNeighbor;size_is:(cNumNeighbors)" json:"neighbor"`
	// contains filtered or unexported fields
}

DSReplicationNeighbors structure represents DS_REPL_NEIGHBORSW RPC structure.

The DS_REPL_NEIGHBORSW structure defines a set of replication neighbors. This structure is a concrete representation of a sequence of RepsFrom or RepsTo values.

func (*DSReplicationNeighbors) MarshalNDR

func (o *DSReplicationNeighbors) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationNeighbors) NDRSizeInfo

func (o *DSReplicationNeighbors) NDRSizeInfo() []uint64

func (*DSReplicationNeighbors) UnmarshalNDR

func (o *DSReplicationNeighbors) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationObjectMetadata

type DSReplicationObjectMetadata struct {
	// cNumEntries:  The count of items in the rgMetaData array.
	EntriesCount uint32 `idl:"name:cNumEntries" json:"entries_count"`

	// rgMetaData:  A set of attribute stamps.
	Metadata []*DSReplicationAttributeMetadata `idl:"name:rgMetaData;size_is:(cNumEntries)" json:"metadata"`
	// contains filtered or unexported fields
}

DSReplicationObjectMetadata structure represents DS_REPL_OBJ_META_DATA RPC structure.

The DS_REPL_OBJ_META_DATA structure defines a set of attribute stamps for a given object. This structure is a concrete representation of the sequence of AttributeStamp values for all attributes of a given object.

func (*DSReplicationObjectMetadata) MarshalNDR

func (*DSReplicationObjectMetadata) NDRSizeInfo

func (o *DSReplicationObjectMetadata) NDRSizeInfo() []uint64

func (*DSReplicationObjectMetadata) UnmarshalNDR

func (o *DSReplicationObjectMetadata) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationObjectMetadata2

type DSReplicationObjectMetadata2 struct {
	// cNumEntries:  The count of items in the rgMetaData array.
	EntriesCount uint32 `idl:"name:cNumEntries" json:"entries_count"`

	// rgMetaData:  A set of attribute stamps.
	Metadata []*DSReplicationAttributeMetadata2 `idl:"name:rgMetaData;size_is:(cNumEntries)" json:"metadata"`
	// contains filtered or unexported fields
}

DSReplicationObjectMetadata2 structure represents DS_REPL_OBJ_META_DATA_2 RPC structure.

The DS_REPL_OBJ_META_DATA_2 structure defines a set of attribute stamps for a given object. This structure is a concrete representation of the sequence of AttributeStamp values for all attributes of a given object; it is a superset of DS_REPL_OBJ_META_DATA.

func (*DSReplicationObjectMetadata2) MarshalNDR

func (*DSReplicationObjectMetadata2) NDRSizeInfo

func (o *DSReplicationObjectMetadata2) NDRSizeInfo() []uint64

func (*DSReplicationObjectMetadata2) UnmarshalNDR

func (o *DSReplicationObjectMetadata2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationOperation

type DSReplicationOperation struct {
	// ftimeEnqueued:  The date and time at which the operation was requested.
	Enqueued *dtyp.Filetime `idl:"name:ftimeEnqueued" json:"enqueued"`
	// ulSerialNumber:  The unique ID associated with the operation.
	SerialNumber uint32 `idl:"name:ulSerialNumber" json:"serial_number"`
	// ulPriority:  A ULONG specifying the priority value of this operation. Tasks with
	// a higher priority value are executed first. The priority is calculated by the server
	// based on the type of operation and its parameters.
	Priority uint32 `idl:"name:ulPriority" json:"priority"`
	// OpType:  An integer that indicates the type of operation, as defined in DS_REPL_OP_TYPE
	// (section 5.46).
	OperationType DSReplicationOperationType `idl:"name:OpType" json:"operation_type"`
	// ulOptions:  The DRS_OPTIONS flags.
	Options uint32 `idl:"name:ulOptions" json:"options"`
	// pszNamingContext:  The NC root of the relevant NC replica.
	NamingContext string `idl:"name:pszNamingContext;string" json:"naming_context"`
	// pszDsaDN:  The DN of the relevant DC's nTDSDSA object.
	DSADN string `idl:"name:pszDsaDN;string" json:"dsa_dn"`
	// pszDsaAddress:  The NetworkAddress of the relevant DC.
	DSAAddress string `idl:"name:pszDsaAddress;string" json:"dsa_address"`
	// uuidNamingContextObjGuid:  The objectGUID of the NC root of the relevant NC replica.
	NamingContextObjectGUID *dtyp.UUID `idl:"name:uuidNamingContextObjGuid" json:"naming_context_object_guid"`
	// uuidDsaObjGuid:  The DSA GUID of the DC.
	DSAObjectGUID *dtyp.UUID `idl:"name:uuidDsaObjGuid" json:"dsa_object_guid"`
}

DSReplicationOperation structure represents DS_REPL_OPW RPC structure.

The DS_REPL_OPW structure defines a replication operation to be processed by a DC. This structure is a concrete representation of a tuple in a ReplicationQueue sequence.

func (*DSReplicationOperation) MarshalNDR

func (o *DSReplicationOperation) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationOperation) UnmarshalNDR

func (o *DSReplicationOperation) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationOperationType

type DSReplicationOperationType uint16

DSReplicationOperationType type represents DS_REPL_OP_TYPE RPC enumeration.

DS_REPL_OP_TYPE is a concrete type for the replication operation type.

var (
	// DS_REPL_OP_TYPE_SYNC:  Sync NC replica from server DC.
	DSReplicationOperationTypeSync DSReplicationOperationType = 0
	// DS_REPL_OP_TYPE_ADD:  Add NC replica server DC.
	DSReplicationOperationTypeAdd DSReplicationOperationType = 1
	// DS_REPL_OP_TYPE_DELETE:  Remove NC replica server DC.
	DSReplicationOperationTypeDelete DSReplicationOperationType = 2
	// DS_REPL_OP_TYPE_MODIFY:  Modify NC replica server DC.
	DSReplicationOperationTypeModify DSReplicationOperationType = 3
	// DS_REPL_OP_TYPE_UPDATE_REFS:  Update NC replica client DC.
	DSReplicationOperationTypeUpdateReferences DSReplicationOperationType = 4
)

func (DSReplicationOperationType) String

type DSReplicationPendingOperations

type DSReplicationPendingOperations struct {
	// ftimeCurrentOpStarted:  The time when the current operation started.
	CurrentOperationStarted *dtyp.Filetime `idl:"name:ftimeCurrentOpStarted" json:"current_operation_started"`
	// cNumPendingOps:  The number of items in the rgPendingOp array.
	PendingOperationsCount uint32 `idl:"name:cNumPendingOps" json:"pending_operations_count"`
	// rgPendingOp:  The sequence of replication operations to be performed.
	PendingOperation []*DSReplicationOperation `idl:"name:rgPendingOp;size_is:(cNumPendingOps)" json:"pending_operation"`
}

DSReplicationPendingOperations structure represents DS_REPL_PENDING_OPSW RPC structure.

The DS_REPL_PENDING_OPSW structure defines a sequence of replication operations to be processed by a DC. This structure is a concrete representation of ReplicationQueue.

func (*DSReplicationPendingOperations) MarshalNDR

func (*DSReplicationPendingOperations) NDRSizeInfo

func (o *DSReplicationPendingOperations) NDRSizeInfo() []uint64

func (*DSReplicationPendingOperations) UnmarshalNDR

type DSReplicationServerOutgoingCall

type DSReplicationServerOutgoingCall struct {
	// pszServerName:  The NetworkAddress of the server.
	ServerName string `idl:"name:pszServerName;string" json:"server_name"`
	// fIsHandleBound:  True if and only if the IDL_DRSBind method has completed and the
	// IDL_DRSUnbind method has not yet been called.
	IsHandleBound bool `idl:"name:fIsHandleBound" json:"is_handle_bound"`
	// fIsHandleFromCache:  True if and only if the context handle used was retrieved from
	// the cache.
	IsHandleFromCache bool `idl:"name:fIsHandleFromCache" json:"is_handle_from_cache"`
	// fIsHandleInCache:  True if and only if the context handle is still in the cache.
	IsHandleInCache bool `idl:"name:fIsHandleInCache" json:"is_handle_in_cache"`
	// dwThreadId:  The thread ID of the thread that is using the context.
	ThreadID uint32 `idl:"name:dwThreadId" json:"thread_id"`
	// dwBindingTimeoutMins:  If the context is set to be canceled, the time-out in minutes.
	BindingTimeoutMins uint32 `idl:"name:dwBindingTimeoutMins" json:"binding_timeout_mins"`
	// dstimeCreated:  The date and time when the context was created.
	Created int64 `idl:"name:dstimeCreated" json:"created"`
	// dwCallType:  The call that the client is waiting on. MUST be one of the values in
	// the following table.
	//
	//	+-------+---------------------------+
	//	|       |                           |
	//	| VALUE |          MEANING          |
	//	|       |                           |
	//	+-------+---------------------------+
	//	+-------+---------------------------+
	//	|     2 | IDL_DRSBind               |
	//	+-------+---------------------------+
	//	|     3 | IDL_DRSUnbind             |
	//	+-------+---------------------------+
	//	|     4 | IDL_DRSReplicaSync        |
	//	+-------+---------------------------+
	//	|     5 | IDL_DRSGetNCChanges       |
	//	+-------+---------------------------+
	//	|     6 | IDL_DRSUpdateRefs         |
	//	+-------+---------------------------+
	//	|     7 | IDL_DRSReplicaAdd         |
	//	+-------+---------------------------+
	//	|     8 | IDL_DRSReplicaDel         |
	//	+-------+---------------------------+
	//	|     9 | IDL_DRSVerifyNames        |
	//	+-------+---------------------------+
	//	|    10 | IDL_DRSGetMemberships     |
	//	+-------+---------------------------+
	//	|    11 | IDL_DRSInterDomainMove    |
	//	+-------+---------------------------+
	//	|    12 | IDL_DRSGetNT4ChangeLog    |
	//	+-------+---------------------------+
	//	|    13 | IDL_DRSCrackNames         |
	//	+-------+---------------------------+
	//	|    14 | IDL_DRSAddEntry           |
	//	+-------+---------------------------+
	//	|    15 | IDL_DRSGetMemberships2    |
	//	+-------+---------------------------+
	//	|    16 | IDL_DRSGetObjectExistence |
	//	+-------+---------------------------+
	//	|    17 | IDL_DRSGetReplInfo        |
	//	+-------+---------------------------+
	//	|    18 | IDL_DRSWriteSPN           |
	//	+-------+---------------------------+
	CallType uint32 `idl:"name:dwCallType" json:"call_type"`
}

DSReplicationServerOutgoingCall structure represents DS_REPL_SERVER_OUTGOING_CALL RPC structure.

The DS_REPL_SERVER_OUTGOING_CALL structure defines an outstanding request from this DC to another DC. This structure is a concrete representation of a tuple from an RPCOutgoingContexts sequence.

func (*DSReplicationServerOutgoingCall) MarshalNDR

func (*DSReplicationServerOutgoingCall) UnmarshalNDR

type DSReplicationServerOutgoingCalls

type DSReplicationServerOutgoingCalls struct {
	// cNumCalls:  The number of items in the rgCall array.
	CallsCount uint32 `idl:"name:cNumCalls" json:"calls_count"`

	// rgCall:  A set of outstanding requests from this DC to other DCs.
	Call []*DSReplicationServerOutgoingCall `idl:"name:rgCall;size_is:(cNumCalls)" json:"call"`
	// contains filtered or unexported fields
}

DSReplicationServerOutgoingCalls structure represents DS_REPL_SERVER_OUTGOING_CALLS RPC structure.

The DS_REPL_SERVER_OUTGOING_CALLS structure defines a set of outstanding requests from this DC to other DCs. This structure is a concrete representation of RPCOutgoingContexts.

func (*DSReplicationServerOutgoingCalls) MarshalNDR

func (*DSReplicationServerOutgoingCalls) NDRSizeInfo

func (o *DSReplicationServerOutgoingCalls) NDRSizeInfo() []uint64

func (*DSReplicationServerOutgoingCalls) UnmarshalNDR

type DSReplicationValueMetadata

type DSReplicationValueMetadata struct {
	// pszAttributeName:  The lDAPDisplayName of the attribute.
	AttributeName string `idl:"name:pszAttributeName;string" json:"attribute_name"`
	// pszObjectDn:  The DN of the object.
	ObjectDN string `idl:"name:pszObjectDn;string" json:"object_dn"`
	// cbData:  The size, in bytes, of the pbData array.
	DataLength uint32 `idl:"name:cbData" json:"data_length"`
	// pbData:  The binary_value portion of the attribute value if the attribute is of syntax
	// Object(DN-Binary), or the string_value portion of the attribute value if the attribute
	// is of syntax Object(DN-String); null otherwise.
	Data []byte `idl:"name:pbData;size_is:(cbData);pointer:ptr" json:"data"`
	// ftimeDeleted:  The date and time at which the last replicated update was made that
	// deleted the value, or 0 if the value is not currently deleted.
	Deleted *dtyp.Filetime `idl:"name:ftimeDeleted" json:"deleted"`
	// ftimeCreated:  The date and time at which the first originating update was made.
	Created *dtyp.Filetime `idl:"name:ftimeCreated" json:"created"`
	// dwVersion:  The stamp version.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// ftimeLastOriginatingChange:  The date and time at which the last originating update
	// was made.
	LastOriginatingChange *dtyp.Filetime `idl:"name:ftimeLastOriginatingChange" json:"last_originating_change"`
	// uuidLastOriginatingDsaInvocationID:  The invocation ID of the DC that performed the
	// last originating update.
	LastOriginatingDSAInvocationID *dtyp.UUID `idl:"name:uuidLastOriginatingDsaInvocationID" json:"last_originating_dsa_invocation_id"`
	// usnOriginatingChange:  The USN assigned to the last originating update by the DC
	// that performed the update.
	OriginatingChange int64 `idl:"name:usnOriginatingChange" json:"originating_change"`
	// usnLocalChange:  An implementation-specific value.
	LocalChange int64 `idl:"name:usnLocalChange" json:"local_change"`
}

DSReplicationValueMetadata structure represents DS_REPL_VALUE_META_DATA RPC structure.

The DS_REPL_VALUE_META_DATA structure defines a link value stamp. This structure is a concrete representation of a LinkValueStamp.

func (*DSReplicationValueMetadata) MarshalNDR

func (o *DSReplicationValueMetadata) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DSReplicationValueMetadata) UnmarshalNDR

func (o *DSReplicationValueMetadata) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DSReplicationValueMetadata2

type DSReplicationValueMetadata2 struct {
	// pszAttributeName:  The lDAPDisplayName of the attribute.
	AttributeName string `idl:"name:pszAttributeName;string" json:"attribute_name"`
	// pszObjectDn:  The DN of the object.
	ObjectDN string `idl:"name:pszObjectDn;string" json:"object_dn"`
	// cbData:  The size, in bytes, of the pbData array.
	DataLength uint32 `idl:"name:cbData" json:"data_length"`
	// pbData:  The binary_value portion of the attribute value if the attribute is of syntax
	// Object(DN-Binary), or the string_value portion of the attribute value if the attribute
	// is of syntax Object(DN-String); null otherwise.
	Data []byte `idl:"name:pbData;size_is:(cbData);pointer:ptr" json:"data"`
	// ftimeDeleted:  The date and time at which the last replicated update was made that
	// deleted the value, or 0 if the value is not currently deleted.
	Deleted *dtyp.Filetime `idl:"name:ftimeDeleted" json:"deleted"`
	// ftimeCreated:  The date and time at which the first originating update was made.
	Created *dtyp.Filetime `idl:"name:ftimeCreated" json:"created"`
	// dwVersion:  The stamp version.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// ftimeLastOriginatingChange:  The date and time at which the last originating update
	// was made.
	LastOriginatingChange *dtyp.Filetime `idl:"name:ftimeLastOriginatingChange" json:"last_originating_change"`
	// uuidLastOriginatingDsaInvocationID:  The invocation ID of the DC that performed the
	// last originating update.
	LastOriginatingDSAInvocationID *dtyp.UUID `idl:"name:uuidLastOriginatingDsaInvocationID" json:"last_originating_dsa_invocation_id"`
	// usnOriginatingChange:  The USN assigned to the last originating update by the DC
	// that performed the update.
	OriginatingChange int64 `idl:"name:usnOriginatingChange" json:"originating_change"`
	// usnLocalChange:  An implementation-specific value.
	LocalChange int64 `idl:"name:usnLocalChange" json:"local_change"`
	// pszLastOriginatingDsaDN:  The DN of the nTDSDSA object with an invocationId of uuidLastOriginatingDsaInvocationID.
	LastOriginatingDSADN string `idl:"name:pszLastOriginatingDsaDN;string" json:"last_originating_dsa_dn"`
}

DSReplicationValueMetadata2 structure represents DS_REPL_VALUE_META_DATA_2 RPC structure.

The DS_REPL_VALUE_META_DATA_2 structure defines a link value stamp. This structure is a concrete representation of LinkValueStamp; it is a superset of DS_REPL_VALUE_META_DATA.

func (*DSReplicationValueMetadata2) MarshalNDR

func (*DSReplicationValueMetadata2) UnmarshalNDR

func (o *DSReplicationValueMetadata2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DeleteReplicaRequest

type DeleteReplicaRequest struct {
	// hDrs: The RPC context handle returned by IDL_DRSBind.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwVersion: The version of the request message.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// pmsgDel: A pointer to the request message.
	Delete *MessageDeleteReplica `idl:"name:pmsgDel;switch_is:dwVersion;pointer:ref" json:"delete"`
}

DeleteReplicaRequest structure represents the IDL_DRSReplicaDel operation request

func (*DeleteReplicaRequest) MarshalNDR

func (o *DeleteReplicaRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DeleteReplicaRequest) UnmarshalNDR

func (o *DeleteReplicaRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DeleteReplicaResponse

type DeleteReplicaResponse struct {
	// Return: The IDL_DRSReplicaDel return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

DeleteReplicaResponse structure represents the IDL_DRSReplicaDel operation response

func (*DeleteReplicaResponse) MarshalNDR

func (o *DeleteReplicaResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DeleteReplicaResponse) UnmarshalNDR

func (o *DeleteReplicaResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DemotionReplicaRequest

type DemotionReplicaRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageReplicaDemotionRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

DemotionReplicaRequest structure represents the IDL_DRSReplicaDemotion operation request

func (*DemotionReplicaRequest) MarshalNDR

func (o *DemotionReplicaRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DemotionReplicaRequest) UnmarshalNDR

func (o *DemotionReplicaRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DemotionReplicaResponse

type DemotionReplicaResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageReplicaDemotionReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSReplicaDemotion return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

DemotionReplicaResponse structure represents the IDL_DRSReplicaDemotion operation response

func (*DemotionReplicaResponse) MarshalNDR

func (o *DemotionReplicaResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DemotionReplicaResponse) UnmarshalNDR

func (o *DemotionReplicaResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DirectoryError

type DirectoryError struct {
	// Types that are assignable to Value
	//
	// *DirectoryError_AttributeError
	// *DirectoryError_NameError
	// *DirectoryError_ReferralError
	// *DirectoryError_SecurityError
	// *DirectoryError_ServiceError
	// *DirectoryError_UpdateError
	// *DirectoryError_SystemError
	Value is_DirectoryError `json:"value"`
}

DirectoryError structure represents DIRERR_DRS_WIRE_V1 RPC union.

The DIRERR_DRS_WIRE_V1 union defines the error that occurred during processing of a request sent to the IDL_DRSAddEntry method.

func (*DirectoryError) GetValue

func (o *DirectoryError) GetValue() any

func (*DirectoryError) MarshalUnionNDR

func (o *DirectoryError) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*DirectoryError) NDRSwitchValue

func (o *DirectoryError) NDRSwitchValue(sw uint32) uint32

func (*DirectoryError) UnmarshalUnionNDR

func (o *DirectoryError) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type DirectoryError_AttributeError

type DirectoryError_AttributeError struct {
	// AtrErr:  Attribute errors.
	AttributeError *AttributeError `idl:"name:AtrErr" json:"attribute_error"`
}

DirectoryError_AttributeError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 1

func (*DirectoryError_AttributeError) MarshalNDR

func (*DirectoryError_AttributeError) UnmarshalNDR

func (o *DirectoryError_AttributeError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DirectoryError_NameError

type DirectoryError_NameError struct {
	// NamErr:  Name resolution error.
	NameError *NameError `idl:"name:NamErr" json:"name_error"`
}

DirectoryError_NameError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 2

func (*DirectoryError_NameError) MarshalNDR

func (o *DirectoryError_NameError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DirectoryError_NameError) UnmarshalNDR

func (o *DirectoryError_NameError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DirectoryError_ReferralError

type DirectoryError_ReferralError struct {
	// RefErr:  Referral.
	ReferralError *ReferralError `idl:"name:RefErr" json:"referral_error"`
}

DirectoryError_ReferralError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 3

func (*DirectoryError_ReferralError) MarshalNDR

func (*DirectoryError_ReferralError) UnmarshalNDR

func (o *DirectoryError_ReferralError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DirectoryError_SecurityError

type DirectoryError_SecurityError struct {
	// SecErr:  Security error.
	SecurityError *SecurityError `idl:"name:SecErr" json:"security_error"`
}

DirectoryError_SecurityError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 4

func (*DirectoryError_SecurityError) MarshalNDR

func (*DirectoryError_SecurityError) UnmarshalNDR

func (o *DirectoryError_SecurityError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DirectoryError_ServiceError

type DirectoryError_ServiceError struct {
	// SvcErr:  Service error.
	ServiceError *ServiceError `idl:"name:SvcErr" json:"service_error"`
}

DirectoryError_ServiceError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 5

func (*DirectoryError_ServiceError) MarshalNDR

func (*DirectoryError_ServiceError) UnmarshalNDR

func (o *DirectoryError_ServiceError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DirectoryError_SystemError

type DirectoryError_SystemError struct {
	// SysErr:  System error.
	SystemError *SystemError `idl:"name:SysErr" json:"system_error"`
}

DirectoryError_SystemError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 7

func (*DirectoryError_SystemError) MarshalNDR

func (o *DirectoryError_SystemError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DirectoryError_SystemError) UnmarshalNDR

func (o *DirectoryError_SystemError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DirectoryError_UpdateError

type DirectoryError_UpdateError struct {
	// UpdErr:  Update error.
	UpdateError *UpdateError `idl:"name:UpdErr" json:"update_error"`
}

DirectoryError_UpdateError structure represents DIRERR_DRS_WIRE_V1 RPC union arm.

It has following labels: 6

func (*DirectoryError_UpdateError) MarshalNDR

func (o *DirectoryError_UpdateError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*DirectoryError_UpdateError) UnmarshalNDR

func (o *DirectoryError_UpdateError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type DomainControllerInfoRequest

type DomainControllerInfoRequest struct {
	// hDrs: RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: Version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: Pointer to the request message.
	In *MessageDCInfoRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

DomainControllerInfoRequest structure represents the IDL_DRSDomainControllerInfo operation request

func (*DomainControllerInfoRequest) MarshalNDR

func (*DomainControllerInfoRequest) UnmarshalNDR

func (o *DomainControllerInfoRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DomainControllerInfoResponse

type DomainControllerInfoResponse struct {
	// pdwOutVersion: Pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: Pointer to the response message.
	Out *MessageDCInfoReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSDomainControllerInfo return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

DomainControllerInfoResponse structure represents the IDL_DRSDomainControllerInfo operation response

func (*DomainControllerInfoResponse) MarshalNDR

func (*DomainControllerInfoResponse) UnmarshalNDR

func (o *DomainControllerInfoResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type DrsuapiClient

type DrsuapiClient interface {

	// The IDL_DRSBind method creates a context handle that is necessary to call any other
	// method in this interface.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method does not throw exceptions beyond those thrown by the
	// underlying RPC protocol.
	Bind(context.Context, *BindRequest, ...dcerpc.CallOption) (*BindResponse, error)

	// The IDL_DRSUnbind method destroys a context handle previously created by the IDL_DRSBind
	// method.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exception beyond those thrown
	// by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE.
	Unbind(context.Context, *UnbindRequest, ...dcerpc.CallOption) (*UnbindResponse, error)

	// The IDL_DRSReplicaSync method triggers replication from another DC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	SyncReplica(context.Context, *SyncReplicaRequest, ...dcerpc.CallOption) (*SyncReplicaResponse, error)

	// The IDL_DRSGetNCChanges method replicates updates from an NC replica on the server.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetNCChanges(context.Context, *GetNCChangesRequest, ...dcerpc.CallOption) (*GetNCChangesResponse, error)

	// The IDL_DRSUpdateRefs method adds or deletes a value from the repsTo of a specified
	// NC replica.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	UpdateReferences(context.Context, *UpdateReferencesRequest, ...dcerpc.CallOption) (*UpdateReferencesResponse, error)

	// The IDL_DRSReplicaAdd method adds a replication source reference for the specified
	// NC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	AddReplica(context.Context, *AddReplicaRequest, ...dcerpc.CallOption) (*AddReplicaResponse, error)

	// The IDL_DRSReplicaDel method deletes a replication source reference for the specified
	// NC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	DeleteReplica(context.Context, *DeleteReplicaRequest, ...dcerpc.CallOption) (*DeleteReplicaResponse, error)

	// The IDL_DRSReplicaModify method updates the value for repsFrom for the NC replica.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	ModifyReplica(context.Context, *ModifyReplicaRequest, ...dcerpc.CallOption) (*ModifyReplicaResponse, error)

	// The IDL_DRSVerifyNames method resolves a sequence of object identities.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	VerifyNames(context.Context, *VerifyNamesRequest, ...dcerpc.CallOption) (*VerifyNamesResponse, error)

	// The IDL_DRSGetMemberships method retrieves group membership for an object.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetMemberships(context.Context, *GetMembershipsRequest, ...dcerpc.CallOption) (*GetMembershipsResponse, error)

	// The IDL_DRSInterDomainMove method is a helper method used in a cross-NC move LDAP
	// operation.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	InterdomainMove(context.Context, *InterdomainMoveRequest, ...dcerpc.CallOption) (*InterdomainMoveResponse, error)

	// If the server is the PDC emulator FSMO role owner, the IDL_DRSGetNT4ChangeLog method
	// returns either a sequence of PDC change log entries or the NT4 replication state,
	// or both, as requested by the client.
	//
	// Return Values: 0 or ERROR_MORE_DATA if successful; another Windows error code if
	// a failure occurred.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetNT4ChangeLog(context.Context, *GetNT4ChangeLogRequest, ...dcerpc.CallOption) (*GetNT4ChangeLogResponse, error)

	// The IDL_DRSCrackNames method looks up each of a set of objects in the directory and
	// returns it to the caller in the requested format.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	CrackNames(context.Context, *CrackNamesRequest, ...dcerpc.CallOption) (*CrackNamesResponse, error)

	// The IDL_DRSWriteSPN method updates the set of SPNs on an object.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	WriteSPN(context.Context, *WriteSPNRequest, ...dcerpc.CallOption) (*WriteSPNResponse, error)

	// The IDL_DRSRemoveDsServer method removes the representation (also known as metadata)
	// of a DC from the directory.
	//
	// Return Values: 0 if successful or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	RemoveDSServer(context.Context, *RemoveDSServerRequest, ...dcerpc.CallOption) (*RemoveDSServerResponse, error)

	// The IDL_DRSRemoveDsDomain method removes the representation (also known as metadata)
	// of a domain from the directory.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	RemoveDSDomain(context.Context, *RemoveDSDomainRequest, ...dcerpc.CallOption) (*RemoveDSDomainResponse, error)

	// The IDL_DRSDomainControllerInfo method retrieves information about DCs in a given
	// domain.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	DomainControllerInfo(context.Context, *DomainControllerInfoRequest, ...dcerpc.CallOption) (*DomainControllerInfoResponse, error)

	// The IDL_DRSAddEntry method adds one or more objects.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	AddEntry(context.Context, *AddEntryRequest, ...dcerpc.CallOption) (*AddEntryResponse, error)

	// The IDL_DRSExecuteKCC method validates the replication interconnections of DCs and
	// updates them if necessary.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and ERROR_INVALID_PARAMETER.
	ExecuteKCC(context.Context, *ExecuteKCCRequest, ...dcerpc.CallOption) (*ExecuteKCCResponse, error)

	// The IDL_DRSGetReplInfo method retrieves the replication state of the server.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetReplicationInfo(context.Context, *GetReplicationInfoRequest, ...dcerpc.CallOption) (*GetReplicationInfoResponse, error)

	// The IDL_DRSAddSidHistory method adds one or more SIDs to the sIDHistory attribute
	// of a given object.
	//
	// Return Values: 0 or one of the following Windows error codes: ERROR_DS_MUST_RUN_ON_DST_DC
	// or ERROR_INVALID_PARAMETER.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and ERROR_INVALID_PARAMETER.
	AddSIDHistory(context.Context, *AddSIDHistoryRequest, ...dcerpc.CallOption) (*AddSIDHistoryResponse, error)

	// The IDL_DRSGetMemberships2 method retrieves group memberships for a sequence of objects.
	//
	// Return Values: 0 if successful; otherwise, a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetMemberships2(context.Context, *GetMemberships2Request, ...dcerpc.CallOption) (*GetMemberships2Response, error)

	// The IDL_DRSReplicaVerifyObjects method verifies the existence of objects in an NC
	// replica by comparing against a replica of the same NC on a reference DC, optionally
	// deleting any objects that do not exist on the reference DC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	VerifyObjectsReplica(context.Context, *VerifyObjectsReplicaRequest, ...dcerpc.CallOption) (*VerifyObjectsReplicaResponse, error)

	// The IDL_DRSGetObjectExistence method helps the client check the consistency of object
	// existence between its replica of an NC and the server's replica of the same NC. Checking
	// the consistency of object existence means identifying objects that have replicated
	// to both replicas and that exist in one replica but not in the other. For the purposes
	// of this method, an object exists within a NC replica if it is either an object or
	// a tombstone.
	//
	// See IDL_DRSReplicaVerifyObjects for a use of this method.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetObjectExistence(context.Context, *GetObjectExistenceRequest, ...dcerpc.CallOption) (*GetObjectExistenceResponse, error)

	// The IDL_DRSQuerySitesByCost method determines the communication cost from a "from"
	// site to one or more "to" sites.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	QuerySitesByCost(context.Context, *QuerySitesByCostRequest, ...dcerpc.CallOption) (*QuerySitesByCostResponse, error)

	// The IDL_DRSInitDemotion method performs the first phase of the removal of a DC from
	// an AD LDS forest. This method is supported only by AD LDS.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	InitDemotion(context.Context, *InitDemotionRequest, ...dcerpc.CallOption) (*InitDemotionResponse, error)

	// The IDL_DRSReplicaDemotion method replicates off all changes to the specified NC
	// and moves any FSMOs held to another server.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	DemotionReplica(context.Context, *DemotionReplicaRequest, ...dcerpc.CallOption) (*DemotionReplicaResponse, error)

	// The IDL_DRSFinishDemotion method either performs one or more steps toward the complete
	// removal of a DC from an AD LDS forest, or it undoes the effects of the first phase
	// of removal (performed by IDL_DRSInitDemotion). This method is supported by AD LDS
	// only.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	FinishDemotion(context.Context, *FinishDemotionRequest, ...dcerpc.CallOption) (*FinishDemotionResponse, error)

	// The IDL_DRSAddCloneDC method is used to create a new DC object by copying attributes
	// from an existing DC object.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, and ERROR_INVALID_PARAMETER.
	AddCloneDC(context.Context, *AddCloneDCRequest, ...dcerpc.CallOption) (*AddCloneDCResponse, error)

	// IDL_DRSWriteNgcKey operation.
	WriteNGCKey(context.Context, *WriteNGCKeyRequest, ...dcerpc.CallOption) (*WriteNGCKeyResponse, error)

	// IDL_DRSReadNgcKey operation.
	ReadNGCKey(context.Context, *ReadNGCKeyRequest, ...dcerpc.CallOption) (*ReadNGCKeyResponse, error)

	// AlterContext alters the client context.
	AlterContext(context.Context, ...dcerpc.Option) error
}

drsuapi interface.

func NewDrsuapiClient

func NewDrsuapiClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (DrsuapiClient, error)

type DrsuapiServer

type DrsuapiServer interface {

	// The IDL_DRSBind method creates a context handle that is necessary to call any other
	// method in this interface.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method does not throw exceptions beyond those thrown by the
	// underlying RPC protocol.
	Bind(context.Context, *BindRequest) (*BindResponse, error)

	// The IDL_DRSUnbind method destroys a context handle previously created by the IDL_DRSBind
	// method.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exception beyond those thrown
	// by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE.
	Unbind(context.Context, *UnbindRequest) (*UnbindResponse, error)

	// The IDL_DRSReplicaSync method triggers replication from another DC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	SyncReplica(context.Context, *SyncReplicaRequest) (*SyncReplicaResponse, error)

	// The IDL_DRSGetNCChanges method replicates updates from an NC replica on the server.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetNCChanges(context.Context, *GetNCChangesRequest) (*GetNCChangesResponse, error)

	// The IDL_DRSUpdateRefs method adds or deletes a value from the repsTo of a specified
	// NC replica.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	UpdateReferences(context.Context, *UpdateReferencesRequest) (*UpdateReferencesResponse, error)

	// The IDL_DRSReplicaAdd method adds a replication source reference for the specified
	// NC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	AddReplica(context.Context, *AddReplicaRequest) (*AddReplicaResponse, error)

	// The IDL_DRSReplicaDel method deletes a replication source reference for the specified
	// NC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	DeleteReplica(context.Context, *DeleteReplicaRequest) (*DeleteReplicaResponse, error)

	// The IDL_DRSReplicaModify method updates the value for repsFrom for the NC replica.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	ModifyReplica(context.Context, *ModifyReplicaRequest) (*ModifyReplicaResponse, error)

	// The IDL_DRSVerifyNames method resolves a sequence of object identities.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	VerifyNames(context.Context, *VerifyNamesRequest) (*VerifyNamesResponse, error)

	// The IDL_DRSGetMemberships method retrieves group membership for an object.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetMemberships(context.Context, *GetMembershipsRequest) (*GetMembershipsResponse, error)

	// The IDL_DRSInterDomainMove method is a helper method used in a cross-NC move LDAP
	// operation.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	InterdomainMove(context.Context, *InterdomainMoveRequest) (*InterdomainMoveResponse, error)

	// If the server is the PDC emulator FSMO role owner, the IDL_DRSGetNT4ChangeLog method
	// returns either a sequence of PDC change log entries or the NT4 replication state,
	// or both, as requested by the client.
	//
	// Return Values: 0 or ERROR_MORE_DATA if successful; another Windows error code if
	// a failure occurred.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetNT4ChangeLog(context.Context, *GetNT4ChangeLogRequest) (*GetNT4ChangeLogResponse, error)

	// The IDL_DRSCrackNames method looks up each of a set of objects in the directory and
	// returns it to the caller in the requested format.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	CrackNames(context.Context, *CrackNamesRequest) (*CrackNamesResponse, error)

	// The IDL_DRSWriteSPN method updates the set of SPNs on an object.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	WriteSPN(context.Context, *WriteSPNRequest) (*WriteSPNResponse, error)

	// The IDL_DRSRemoveDsServer method removes the representation (also known as metadata)
	// of a DC from the directory.
	//
	// Return Values: 0 if successful or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	RemoveDSServer(context.Context, *RemoveDSServerRequest) (*RemoveDSServerResponse, error)

	// The IDL_DRSRemoveDsDomain method removes the representation (also known as metadata)
	// of a domain from the directory.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	RemoveDSDomain(context.Context, *RemoveDSDomainRequest) (*RemoveDSDomainResponse, error)

	// The IDL_DRSDomainControllerInfo method retrieves information about DCs in a given
	// domain.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	DomainControllerInfo(context.Context, *DomainControllerInfoRequest) (*DomainControllerInfoResponse, error)

	// The IDL_DRSAddEntry method adds one or more objects.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	AddEntry(context.Context, *AddEntryRequest) (*AddEntryResponse, error)

	// The IDL_DRSExecuteKCC method validates the replication interconnections of DCs and
	// updates them if necessary.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and ERROR_INVALID_PARAMETER.
	ExecuteKCC(context.Context, *ExecuteKCCRequest) (*ExecuteKCCResponse, error)

	// The IDL_DRSGetReplInfo method retrieves the replication state of the server.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetReplicationInfo(context.Context, *GetReplicationInfoRequest) (*GetReplicationInfoResponse, error)

	// The IDL_DRSAddSidHistory method adds one or more SIDs to the sIDHistory attribute
	// of a given object.
	//
	// Return Values: 0 or one of the following Windows error codes: ERROR_DS_MUST_RUN_ON_DST_DC
	// or ERROR_INVALID_PARAMETER.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and ERROR_INVALID_PARAMETER.
	AddSIDHistory(context.Context, *AddSIDHistoryRequest) (*AddSIDHistoryResponse, error)

	// The IDL_DRSGetMemberships2 method retrieves group memberships for a sequence of objects.
	//
	// Return Values: 0 if successful; otherwise, a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetMemberships2(context.Context, *GetMemberships2Request) (*GetMemberships2Response, error)

	// The IDL_DRSReplicaVerifyObjects method verifies the existence of objects in an NC
	// replica by comparing against a replica of the same NC on a reference DC, optionally
	// deleting any objects that do not exist on the reference DC.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	VerifyObjectsReplica(context.Context, *VerifyObjectsReplicaRequest) (*VerifyObjectsReplicaResponse, error)

	// The IDL_DRSGetObjectExistence method helps the client check the consistency of object
	// existence between its replica of an NC and the server's replica of the same NC. Checking
	// the consistency of object existence means identifying objects that have replicated
	// to both replicas and that exist in one replica but not in the other. For the purposes
	// of this method, an object exists within a NC replica if it is either an object or
	// a tombstone.
	//
	// See IDL_DRSReplicaVerifyObjects for a use of this method.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	GetObjectExistence(context.Context, *GetObjectExistenceRequest) (*GetObjectExistenceResponse, error)

	// The IDL_DRSQuerySitesByCost method determines the communication cost from a "from"
	// site to one or more "to" sites.
	//
	// Return Values: 0 if successful, or a Windows error code if a failure occurs.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	QuerySitesByCost(context.Context, *QuerySitesByCostRequest) (*QuerySitesByCostResponse, error)

	// The IDL_DRSInitDemotion method performs the first phase of the removal of a DC from
	// an AD LDS forest. This method is supported only by AD LDS.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	InitDemotion(context.Context, *InitDemotionRequest) (*InitDemotionResponse, error)

	// The IDL_DRSReplicaDemotion method replicates off all changes to the specified NC
	// and moves any FSMOs held to another server.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	DemotionReplica(context.Context, *DemotionReplicaRequest) (*DemotionReplicaResponse, error)

	// The IDL_DRSFinishDemotion method either performs one or more steps toward the complete
	// removal of a DC from an AD LDS forest, or it undoes the effects of the first phase
	// of removal (performed by IDL_DRSInitDemotion). This method is supported by AD LDS
	// only.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, ERROR_DS_DIFFERENT_REPL_EPOCHS, and  ERROR_INVALID_PARAMETER.
	FinishDemotion(context.Context, *FinishDemotionRequest) (*FinishDemotionResponse, error)

	// The IDL_DRSAddCloneDC method is used to create a new DC object by copying attributes
	// from an existing DC object.
	//
	// Return Values: 0 if successful, otherwise a Windows error code.
	//
	// Exceptions Thrown: This method might throw the following exceptions beyond those
	// thrown by the underlying RPC protocol (as specified in [MS-RPCE]): ERROR_INVALID_HANDLE,
	// ERROR_DS_DRS_EXTENSIONS_CHANGED, and ERROR_INVALID_PARAMETER.
	AddCloneDC(context.Context, *AddCloneDCRequest) (*AddCloneDCResponse, error)

	// IDL_DRSWriteNgcKey operation.
	WriteNGCKey(context.Context, *WriteNGCKeyRequest) (*WriteNGCKeyResponse, error)

	// IDL_DRSReadNgcKey operation.
	ReadNGCKey(context.Context, *ReadNGCKeyRequest) (*ReadNGCKeyResponse, error)
}

drsuapi server interface.

type EncryptedPayload added in v1.0.2

type EncryptedPayload struct {
	// Salt (16 bytes): A 128-bit randomly generated value.
	Salt []byte `idl:"name:Salt" json:"salt"`
	// CheckSum (4 bytes): A 32-bit CRC32 checksum of the data that is encrypted along with
	// the data.
	CheckSum uint32 `idl:"name:CheckSum" json:"check_sum"`
	// EncryptedData (variable): A variable-length byte array that represents the encrypted
	// value.
	EncryptedData []byte `idl:"name:EncryptedData" json:"encrypted_data"`
}

EncryptedPayload structure represents ENCRYPTED_PAYLOAD RPC structure.

The ENCRYPTED_PAYLOAD packet is the concrete type for a value of an encrypted attribute.

+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| Salt (16 bytes)                                                                                                               |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| CheckSum                                                                                                                      |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| EncryptedData (variable)                                                                                                      |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

func (*EncryptedPayload) MarshalNDR added in v1.0.2

func (o *EncryptedPayload) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EncryptedPayload) UnmarshalNDR added in v1.0.2

func (o *EncryptedPayload) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type EntityInfo

type EntityInfo struct {
	// pName:  The identity of the object.
	Name *DSName `idl:"name:pName" json:"name"`
	// ulFlags:  A flags field that supports the following flags, which are presented in
	// little-endian byte order.
	//
	//	+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 |  6  | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 |  3  | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |     |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |     |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | X | D O | M | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | R M | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// M (ENTINF_FROM_MASTER, 0x00000001): Retrieved from a full replica.
	//
	// DO (ENTINF_DYNAMIC_OBJECT, 0x00000002): A dynamic object.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
	// AttrBlock:  Some of all of the attributes for this object, as determined by the particular
	// method. See section 1.3.3 for an overview of methods using type ENTINF.
	AttributeBlock *AttributeBlock `idl:"name:AttrBlock" json:"attribute_block"`
}

EntityInfo structure represents ENTINF RPC structure.

ENTINF is a concrete type for the identity and attributes (some or all) of a given object.

func (*EntityInfo) MarshalNDR

func (o *EntityInfo) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EntityInfo) UnmarshalNDR

func (o *EntityInfo) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type EntityInfoList

type EntityInfoList struct {
	// pNextEntInf:  The next ENTINFLIST in the sequence, or null.
	NextEntityInfo *EntityInfoList `idl:"name:pNextEntInf" json:"next_entity_info"`
	// Entinf:  An ENTINF entry.
	EntityInfo *EntityInfo `idl:"name:Entinf" json:"entity_info"`
}

EntityInfoList structure represents ENTINFLIST RPC structure.

ENTINFLIST is a concrete type for a list of ENTINF entries.

func (*EntityInfoList) MarshalNDR

func (o *EntityInfoList) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*EntityInfoList) UnmarshalNDR

func (o *EntityInfoList) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ErrorData

type ErrorData struct {
	// Types that are assignable to Value
	//
	// *ErrorData_V1
	Value is_ErrorData `json:"value"`
}

ErrorData structure represents DRS_ERROR_DATA RPC union.

The DRS_ERROR_DATA union defines the error responses that are received from the IDL_DRSAddEntry method.

func (*ErrorData) GetValue

func (o *ErrorData) GetValue() any

func (*ErrorData) MarshalUnionNDR

func (o *ErrorData) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*ErrorData) NDRSwitchValue

func (o *ErrorData) NDRSwitchValue(sw uint32) uint32

func (*ErrorData) UnmarshalUnionNDR

func (o *ErrorData) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type ErrorDataV1

type ErrorDataV1 struct {
	// dwRepError:  0 or a Windows error code.
	RepError uint32 `idl:"name:dwRepError" json:"rep_error"`
	// errCode:  A DIRERR code (section 4.1.1.1.25) that specifies the error category.
	ErrorCode uint32 `idl:"name:errCode" json:"error_code"`
	// pErrInfo:  Category-specific error information.
	ErrorInfo *DirectoryError `idl:"name:pErrInfo;switch_is:errCode" json:"error_info"`
}

ErrorDataV1 structure represents DRS_ERROR_DATA_V1 RPC structure.

The DRS_ERROR_DATA_V1 structure defines the error response received from the IDL_DRSAddEntry method.

func (*ErrorDataV1) MarshalNDR

func (o *ErrorDataV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ErrorDataV1) UnmarshalNDR

func (o *ErrorDataV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ErrorData_V1

type ErrorData_V1 struct {
	// V1:  Version 1 response.
	V1 *ErrorDataV1 `idl:"name:V1" json:"v1"`
}

ErrorData_V1 structure represents DRS_ERROR_DATA RPC union arm.

It has following labels: 1

func (*ErrorData_V1) MarshalNDR

func (o *ErrorData_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ErrorData_V1) UnmarshalNDR

func (o *ErrorData_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ExecuteKCCRequest

type ExecuteKCCRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageKCCExecute `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

ExecuteKCCRequest structure represents the IDL_DRSExecuteKCC operation request

func (*ExecuteKCCRequest) MarshalNDR

func (o *ExecuteKCCRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ExecuteKCCRequest) UnmarshalNDR

func (o *ExecuteKCCRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ExecuteKCCResponse

type ExecuteKCCResponse struct {
	// Return: The IDL_DRSExecuteKCC return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

ExecuteKCCResponse structure represents the IDL_DRSExecuteKCC operation response

func (*ExecuteKCCResponse) MarshalNDR

func (o *ExecuteKCCResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ExecuteKCCResponse) UnmarshalNDR

func (o *ExecuteKCCResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type Extensions

type Extensions struct {
	// cb:  The size, in bytes, of the rgb array.
	Length uint32 `idl:"name:cb" json:"length"`
	// rgb:  To RPC, this field is a string of cb bytes. It is interpreted by the client
	// and the server as the first cb bytes of a DRS_EXTENSIONS_INT structure that follow
	// the cb field of that structure. The fields of the DRS_EXTENSIONS_INT structure are
	// in little-endian byte order. Since both DRS_EXTENSIONS and DRS_EXTENSIONS_INT begin
	// with a DWORD cb, a field in DRS_EXTENSIONS_INT is at the same offset in DRS_EXTENSIONS
	// as it is in DRS_EXTENSIONS_INT.
	Data []byte `idl:"name:rgb;size_is:(cb)" json:"data"`
}

Extensions structure represents DRS_EXTENSIONS RPC structure.

The DRS_EXTENSIONS structure defines a concrete type for capabilities information used in version negotiation.

func (*Extensions) MarshalNDR

func (o *Extensions) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*Extensions) NDRSizeInfo

func (o *Extensions) NDRSizeInfo() []uint64

func (*Extensions) UnmarshalNDR

func (o *Extensions) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ExtensionsInt added in v1.0.2

type ExtensionsInt struct {
	// cb (4 bytes): The count of bytes in the fields dwFlags through dwExtCaps, inclusive.<38><39><40>
	// This field allows the DRS_EXTENSIONS_INT structure to be extended by including new
	// fields at the end of the structure.
	Length uint32 `idl:"name:cb" json:"length"`
	// dwFlags (4 bytes): The dwFlags field contains individual bit flags that describe
	// the capabilities of the DC that produced the DRS_EXTENSIONS_INT structure.<41>
	//
	// The following table lists the bit flags, which are presented in little-endian byte
	// order.
	//
	//	+-----+-----+-----+-----+-----+-----+-----+-------+-----+-------+-----+-------+-------+-------+-------+-----+-------+-------+-------+-------+-------+-----+-----+-------+-----+-----+--------+-------+-------+-------+-------+-------+
	//	|  0  |  1  |  2  |  3  |  4  |  5  |  6  |   7   |  8  |   9   |  1  |   1   |   2   |   3   |   4   |  5  |   6   |   7   |   8   |   9   |   2   |  1  |  2  |   3   |  4  |  5  |   6    |   7   |   8   |   9   |   3   |   1   |
	//	|     |     |     |     |     |     |     |       |     |       |  0  |       |       |       |       |     |       |       |       |       |   0   |     |     |       |     |     |        |       |       |       |   0   |       |
	//	+-----+-----+-----+-----+-----+-----+-----+-------+-----+-------+-----+-------+-------+-------+-------+-----+-------+-------+-------+-------+-------+-----+-----+-------+-----+-----+--------+-------+-------+-------+-------+-------+
	//	+-----+-----+-----+-----+-----+-----+-----+-------+-----+-------+-----+-------+-------+-------+-------+-----+-------+-------+-------+-------+-------+-----+-----+-------+-----+-----+--------+-------+-------+-------+-------+-------+
	//	| A E | U O | D C | D F | M V | R M | A S | B A S | S E | G R I | C B | I N R | D C 2 | L V R | A E 2 | K E | A N C | G C 6 | G M 2 | G C 5 | P B 3 | S H | T M | D C F | R 3 | R 2 | G C 10 | D F 2 | W B 3 | G R 6 | G R 5 | G C 8 |
	//	+-----+-----+-----+-----+-----+-----+-----+-------+-----+-------+-----+-------+-------+-------+-------+-----+-------+-------+-------+-------+-------+-----+-----+-------+-----+-----+--------+-------+-------+-------+-------+-------+
	//
	// BAS (DRS_EXT_BASE, 0x00000001): Unused. SHOULD be 1 and MUST be ignored.
	//
	// AS (DRS_EXT_ASYNCREPL, 0x00000002): If present, signifies that the DC supports DRS_MSG_REPADD_V2.
	//
	// RM (DRS_EXT_REMOVEAPI, 0x00000004): If present, signifies that the DC supports IDL_DRSRemoveDsServer
	// and IDL_DRSRemoveDsDomain.
	//
	// MV (DRS_EXT_MOVEREQ_V2, 0x00000008): If present, signifies that the DC supports DRS_MSG_MOVEREQ_V2.
	//
	// DF (DRS_EXT_GETCHG_DEFLATE, 0x00000010): If present, signifies that the DC supports
	// DRS_MSG_GETCHGREPLY_V2.
	//
	// DC (DRS_EXT_DCINFO_V1, 0x00000020): If present, signifies that the DC supports IDL_DRSDomainControllerInfo.
	//
	// UO (DRS_EXT_RESTORE_USN_OPTIMIZATION, 0x00000040): Unused. SHOULD be 1 and MUST be
	// ignored.
	//
	// AE (DRS_EXT_ADDENTRY, 0x00000080): If present, signifies that the DC supports IDL_DRSAddEntry.
	//
	// KE (DRS_EXT_KCC_EXECUTE, 0x00000100): If present, signifies that the DC supports
	// IDL_DRSExecuteKCC.
	//
	// AE2 (DRS_EXT_ADDENTRY_V2, 0x00000200): If present, signifies that the DC supports
	// DRS_MSG_ADDENTRYREQ_V2.
	//
	// LVR (DRS_EXT_LINKED_VALUE_REPLICATION, 0x00000400): If present, signifies that the
	// DC supports link value replication, and this support is enabled.
	//
	// DC2 (DRS_EXT_DCINFO_V2, 0x00000800): If present, signifies that the DC supports DRS_MSG_DCINFOREPLY_V2.
	//
	// INR (DRS_EXT_INSTANCE_TYPE_NOT_REQ_ON_MOD, 0x00001000): Unused. SHOULD be 1 and MUST
	// be ignored.
	//
	// CB (DRS_EXT_CRYPTO_BIND, 0x00002000): A client-only flag. If present, it indicates
	// that the security provider used for the connection supports session keys through
	// RPC (example, Kerberos connections with mutual authentication enable RPC to expose
	// session keys, but NTLM connections do not enable RPC to expose session keys).
	//
	// GRI (DRS_EXT_GET_REPL_INFO, 0x00004000): If present, signifies that the DC supports
	// IDL_DRSGetReplInfo.
	//
	// SE (DRS_EXT_STRONG_ENCRYPTION, 0x00008000): If present, signifies that the DC supports
	// additional 128-bit encryption for passwords over the wire. DCs MUST NOT replicate
	// passwords to other DCs that do not support this extension.
	//
	// DCF (DRS_EXT_DCINFO_VFFFFFFFF, 0x00010000): If present, signifies that the DC supports
	// DRS_MSG_DCINFOREPLY_VFFFFFFFF.
	//
	// TM (DRS_EXT_TRANSITIVE_MEMBERSHIP, 0x00020000): If present, signifies that the DC
	// supports IDL_DRSGetMemberships.
	//
	// SH (DRS_EXT_ADD_SID_HISTORY, 0x00040000): If present, signifies that the DC supports
	// IDL_DRSAddSidHistory.
	//
	// PB3 (DRS_EXT_POST_BETA3, 0x00080000): Reserved. MUST be set to 1 and ignored.
	//
	// GC5 (DRS_EXT_GETCHGREQ_V5, 0x00100000): If present, signifies that the DC supports
	// DRS_MSG_GETCHGREQ_V5.
	//
	// GM2(DRS_EXT_GETMEMBERSHIPS2, 0x00200000): If present, signifies that the DC supports
	// IDL_DRSGetMemberships2.
	//
	// GC6 (DRS_EXT_GETCHGREQ_V6, 0x00400000): Unused. This bit was used for a pre-release
	// version of Windows. No released version of Windows references it. This bit can be
	// set or unset with no change in behavior.
	//
	// ANC (DRS_EXT_NONDOMAIN_NCS, 0x00800000): If present, signifies that the DC supports
	// application NCs.
	//
	// GC8 (DRS_EXT_GETCHGREQ_V8, 0x01000000): If present, signifies that the DC supports
	// DRS_MSG_GETCHGREQ_V8.
	//
	// GR5 (DRS_EXT_GETCHGREPLY_V5, 0x02000000): Unused. SHOULD be 1 and MUST be ignored.
	//
	// GR6 (DRS_EXT_GETCHGREPLY_V6, 0x04000000): If present, signifies that the DC supports
	// DRS_MSG_GETCHGREPLY_V6.
	//
	// WB3 (DRS_EXT_WHISTLER_BETA3, 0x08000000): If present, signifies that the DC supports
	// DRS_MSG_ADDENTRYREPLY_V3, DRS_MSG_REPVERIFYOBJ, DRS_MSG_GETCHGREPLY_V7, and DRS_MSG_QUERYSITESREQ_V1.
	//
	// DF2 (DRS_EXT_W2K3_DEFLATE, 0x10000000): If present, signifies that the DC supports
	// the W2K3 AD deflation library.
	//
	// GC10 (DRS_EXT_GETCHGREQ_V10, 0x20000000): If present, signifies that the DC supports
	// DRS_MSG_GETCHGREQ_V10.
	//
	// R2 (DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART2, 0x40000000): Unused. MUST be 0 and
	// ignored.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// SiteObjGuid (16 bytes): A GUID. The objectGUID of the site object of which the DC's
	// DSA object is a descendant. For non-DC client callers, this field SHOULD be set to
	// zero.
	SiteObjectGUID *dtyp.GUID `idl:"name:SiteObjGuid" json:"site_object_guid"`
	// Pid (4 bytes): A 32-bit, signed integer value that specifies a process identifier.
	// The client sets the Pid field to the current client process, or the server sets the
	// Pid to the current server process. This is for informational and debugging purposes
	// only. The assignment of this field is implementation-specific.<42>
	PID int32 `idl:"name:Pid" json:"pid"`
	// dwReplEpoch (4 bytes): A 32-bit, unsigned integer value that specifies the replication
	// epoch. This value is set to zero by all client callers. The server sets this value
	// by assigning the value of msDS-ReplicationEpoch from its nTDSDSA object. If dwReplEpoch
	// is not included in DRS_EXTENSIONS_INT, the value is considered to be zero.<43>
	ReplicationEpoch uint32 `idl:"name:dwReplEpoch" json:"replication_epoch"`
	// dwFlagsExt (4 bytes): An extension of the dwFlags field that contains individual
	// bit flags. These bit flags determine which extended capabilities are enabled in the
	// DC that produced the DRS_EXTENSIONS_INT structure. For non-DC client callers, no
	// bits SHOULD be set. If dwFlagsExt is not included in DRS_EXTENSIONS_INT, all bit
	// flags are considered unset.
	//
	// The following table lists the bit flags, which are presented in little-endian byte
	// order.<44>
	//
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+-----+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 |  5  |  6  |  7  | 8 | 9 | 1 | 1 | 2 |  3  | 4 |   5   | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |     |     |     |   |   | 0 |   |   |     |   |       |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+-----+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+-----+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | R B | L H | D A | X | X | X | X | X | CID | X | G R 9 | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+-----+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// DA (DRS_EXT_ADAM, 0x00000001): If present, signifies that the DC supports DRS_MSG_REPSYNC_V1,
	// DRS_MSG_UPDREFS_V1, DRS_MSG_INIT_DEMOTIONREQ_V1, DRS_MSG_REPLICA_DEMOTIONREQ_V1,
	// and DRS_MSG_FINISH_DEMOTIONREQ_V1.
	//
	// LH (DRS_EXT_LH_BETA2, 0x00000002): If present, signifies that the DC supports the
	// DRS_SPECIAL_SECRET_PROCESSING and DRS_GET_ALL_GROUP_MEMBERSHIP flags as well as InfoLevel
	// 3 in DRS_MSG_DCINFOREQ_V1.
	//
	// RB (DRS_EXT_RECYCLE_BIN, 0x00000004): If present, signifies that the DC has enabled
	// the Recycle Bin optional feature.
	//
	// GR9 (DRS_EXT_GETCHGREPLY_V9, 0x00000100): If present, signifies that the DC supports
	// DRS_MSG_GETCHGREPLY_V9.
	FlagsExt uint32 `idl:"name:dwFlagsExt" json:"flags_ext"`
	// ConfigObjGUID (16 bytes): A GUID. This field is set to zero by all client callers.
	// The server sets this field by assigning it the value of the objectGUID of the config
	// NC object. If ConfigObjGUID is not included in DRS_EXTENSIONS_INT, the value is considered
	// to be the NULL GUID value.<45>
	ConfigObjectGUID *dtyp.GUID `idl:"name:ConfigObjGUID" json:"config_object_guid"`
	// dwExtCaps (4 bytes): A mask for the dwFlagsExt field that contains individual bit
	// flags. These bit flags describe the potential extended capabilities of the DC that
	// produced the DRS_EXTENSIONS_INT structure. For non-DC client callers, no bits SHOULD
	// be set. If neither dwFlagsExt nor dwExtCaps is included in DRS_EXTENSIONS_INT, all
	// bits in dwExtCaps are considered unset. If dwFlagsExt is included in DRS_EXTENSIONS_INT
	// but dwExtCaps is not, all relevant bits in dwExtCaps (as explained below) are implicitly
	// set.<46>
	//
	// Each bit in dwExtCaps corresponds exactly to each bit in dwFlagsExt. If the DC that
	// produced the DRS_EXTENSIONS_INT structure supports a capability described by a bit
	// in the dwFlagsExt field (that is, the bit either is or could potentially be set),
	// then the corresponding bit in dwExtCaps MUST be set. If a bit in dwExtCaps is not
	// set, it is assumed that the corresponding bit in dwFlagsExt will not and cannot be
	// set.
	ExtCaps uint32 `idl:"name:dwExtCaps" json:"ext_caps"`
}

ExtensionsInt structure represents DRS_EXTENSIONS_INT RPC structure.

The DRS_EXTENSIONS_INT structure is a concrete type for structured capabilities information used in version negotiation.

+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| cb                                                                                                                            |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| dwFlags                                                                                                                       |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| SiteObjGuid (16 bytes)                                                                                                        |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| Pid                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| dwReplEpoch                                                                                                                   |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| dwFlagsExt                                                                                                                    |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ConfigObjGUID (16 bytes)                                                                                                      |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| ...                                                                                                                           |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| dwExtCaps                                                                                                                     |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

func (*ExtensionsInt) MarshalNDR added in v1.0.2

func (o *ExtensionsInt) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ExtensionsInt) UnmarshalNDR added in v1.0.2

func (o *ExtensionsInt) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type FinishDemotionRequest

type FinishDemotionRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageFinishDemotionRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

FinishDemotionRequest structure represents the IDL_DRSFinishDemotion operation request

func (*FinishDemotionRequest) MarshalNDR

func (o *FinishDemotionRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*FinishDemotionRequest) UnmarshalNDR

func (o *FinishDemotionRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type FinishDemotionResponse

type FinishDemotionResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageFinishDemotionReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSFinishDemotion return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

FinishDemotionResponse structure represents the IDL_DRSFinishDemotion operation response

func (*FinishDemotionResponse) MarshalNDR

func (o *FinishDemotionResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*FinishDemotionResponse) UnmarshalNDR

func (o *FinishDemotionResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetMemberships2Request

type GetMemberships2Request struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: Version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: Pointer to the request message.
	In *MessageGetMemberships2Request `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

GetMemberships2Request structure represents the IDL_DRSGetMemberships2 operation request

func (*GetMemberships2Request) MarshalNDR

func (o *GetMemberships2Request) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetMemberships2Request) UnmarshalNDR

func (o *GetMemberships2Request) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetMemberships2Response

type GetMemberships2Response struct {
	// pdwOutVersion: Pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: Pointer to the response message.
	Out *MessageGetMemberships2Reply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSGetMemberships2 return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

GetMemberships2Response structure represents the IDL_DRSGetMemberships2 operation response

func (*GetMemberships2Response) MarshalNDR

func (o *GetMemberships2Response) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetMemberships2Response) UnmarshalNDR

func (o *GetMemberships2Response) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetMembershipsRequest

type GetMembershipsRequest struct {
	// hDrs: RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: Version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: Pointer to the request message.
	In *MessageReverseMembershipRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

GetMembershipsRequest structure represents the IDL_DRSGetMemberships operation request

func (*GetMembershipsRequest) MarshalNDR

func (o *GetMembershipsRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetMembershipsRequest) UnmarshalNDR

func (o *GetMembershipsRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetMembershipsResponse

type GetMembershipsResponse struct {
	// pdwOutVersion: Pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: Pointer to the response message.
	Out *MessageReverseMembershipReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSGetMemberships return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

GetMembershipsResponse structure represents the IDL_DRSGetMemberships operation response

func (*GetMembershipsResponse) MarshalNDR

func (o *GetMembershipsResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetMembershipsResponse) UnmarshalNDR

func (o *GetMembershipsResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetNCChangesRequest

type GetNCChangesRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: Version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageGetNCChangesRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

GetNCChangesRequest structure represents the IDL_DRSGetNCChanges operation request

func (*GetNCChangesRequest) MarshalNDR

func (o *GetNCChangesRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetNCChangesRequest) UnmarshalNDR

func (o *GetNCChangesRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetNCChangesResponse

type GetNCChangesResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageGetNCChangesReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSGetNCChanges return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

GetNCChangesResponse structure represents the IDL_DRSGetNCChanges operation response

func (*GetNCChangesResponse) MarshalNDR

func (o *GetNCChangesResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetNCChangesResponse) UnmarshalNDR

func (o *GetNCChangesResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetNT4ChangeLogRequest

type GetNT4ChangeLogRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageNT4ChangeLogRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

GetNT4ChangeLogRequest structure represents the IDL_DRSGetNT4ChangeLog operation request

func (*GetNT4ChangeLogRequest) MarshalNDR

func (o *GetNT4ChangeLogRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetNT4ChangeLogRequest) UnmarshalNDR

func (o *GetNT4ChangeLogRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetNT4ChangeLogResponse

type GetNT4ChangeLogResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageNT4ChangeLogReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSGetNT4ChangeLog return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

GetNT4ChangeLogResponse structure represents the IDL_DRSGetNT4ChangeLog operation response

func (*GetNT4ChangeLogResponse) MarshalNDR

func (o *GetNT4ChangeLogResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetNT4ChangeLogResponse) UnmarshalNDR

func (o *GetNT4ChangeLogResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetObjectExistenceRequest

type GetObjectExistenceRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageExistRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

GetObjectExistenceRequest structure represents the IDL_DRSGetObjectExistence operation request

func (*GetObjectExistenceRequest) MarshalNDR

func (o *GetObjectExistenceRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetObjectExistenceRequest) UnmarshalNDR

func (o *GetObjectExistenceRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetObjectExistenceResponse

type GetObjectExistenceResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageExistReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSGetObjectExistence return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

GetObjectExistenceResponse structure represents the IDL_DRSGetObjectExistence operation response

func (*GetObjectExistenceResponse) MarshalNDR

func (o *GetObjectExistenceResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetObjectExistenceResponse) UnmarshalNDR

func (o *GetObjectExistenceResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetReplicationInfoRequest

type GetReplicationInfoRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageGetReplicationInfoRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

GetReplicationInfoRequest structure represents the IDL_DRSGetReplInfo operation request

func (*GetReplicationInfoRequest) MarshalNDR

func (o *GetReplicationInfoRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetReplicationInfoRequest) UnmarshalNDR

func (o *GetReplicationInfoRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type GetReplicationInfoResponse

type GetReplicationInfoResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageGetReplicationInfoReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSGetReplInfo return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

GetReplicationInfoResponse structure represents the IDL_DRSGetReplInfo operation response

func (*GetReplicationInfoResponse) MarshalNDR

func (o *GetReplicationInfoResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*GetReplicationInfoResponse) UnmarshalNDR

func (o *GetReplicationInfoResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type Handle

type Handle dcetypes.ContextHandle

Handle structure represents DRS_HANDLE RPC structure.

func (*Handle) ContextHandle

func (o *Handle) ContextHandle() *dcetypes.ContextHandle

func (*Handle) MarshalNDR

func (o *Handle) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*Handle) UnmarshalNDR

func (o *Handle) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type InitDemotionRequest

type InitDemotionRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageInitDemotionRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

InitDemotionRequest structure represents the IDL_DRSInitDemotion operation request

func (*InitDemotionRequest) MarshalNDR

func (o *InitDemotionRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*InitDemotionRequest) UnmarshalNDR

func (o *InitDemotionRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type InitDemotionResponse

type InitDemotionResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageInitDemotionReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSInitDemotion return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

InitDemotionResponse structure represents the IDL_DRSInitDemotion operation response

func (*InitDemotionResponse) MarshalNDR

func (o *InitDemotionResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*InitDemotionResponse) UnmarshalNDR

func (o *InitDemotionResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type InterdomainMoveRequest

type InterdomainMoveRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageMoveRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

InterdomainMoveRequest structure represents the IDL_DRSInterDomainMove operation request

func (*InterdomainMoveRequest) MarshalNDR

func (o *InterdomainMoveRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*InterdomainMoveRequest) UnmarshalNDR

func (o *InterdomainMoveRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type InterdomainMoveResponse

type InterdomainMoveResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageMoveReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSInterDomainMove return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

InterdomainMoveResponse structure represents the IDL_DRSInterDomainMove operation response

func (*InterdomainMoveResponse) MarshalNDR

func (o *InterdomainMoveResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*InterdomainMoveResponse) UnmarshalNDR

func (o *InterdomainMoveResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type MTXAddr

type MTXAddr struct {
	// mtx_namelen:  A 32-bit, unsigned integer that specifies the number of bytes in mtx_name,
	// including a terminating null character.
	MTXNameLength uint32 `idl:"name:mtx_namelen" json:"mtx_name_length"`
	// mtx_name:  The UTF-8 encoding of a NetworkAddress.
	//
	// The following table shows an alternative representation of this structure.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| mtx_namelen                                                                                                                   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| mtx_name (variable length) ...                                                                                                |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	MTXName []byte `idl:"name:mtx_name;size_is:(mtx_namelen)" json:"mtx_name"`
}

MTXAddr structure represents MTX_ADDR RPC structure.

The MTX_ADDR structure defines a concrete type for the network name of a DC.

func (*MTXAddr) MarshalNDR

func (o *MTXAddr) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MTXAddr) NDRSizeInfo

func (o *MTXAddr) NDRSizeInfo() []uint64

func (*MTXAddr) UnmarshalNDR

func (o *MTXAddr) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddCloneDCReply

type MessageAddCloneDCReply struct {
	// Types that are assignable to Value
	//
	// *MessageAddCloneDCReply_V1
	Value is_MessageAddCloneDCReply `json:"value"`
}

MessageAddCloneDCReply structure represents DRS_MSG_ADDCLONEDCREPLY RPC union.

The DRS_MSG_ADDCLONEDCREPLY union defines the response messages received from the IDL_DRSAddCloneDC method.

func (*MessageAddCloneDCReply) GetValue

func (o *MessageAddCloneDCReply) GetValue() any

func (*MessageAddCloneDCReply) MarshalUnionNDR

func (o *MessageAddCloneDCReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddCloneDCReply) NDRSwitchValue

func (o *MessageAddCloneDCReply) NDRSwitchValue(sw uint32) uint32

func (*MessageAddCloneDCReply) UnmarshalUnionNDR

func (o *MessageAddCloneDCReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddCloneDCReplyV1

type MessageAddCloneDCReplyV1 struct {
	// pwszCloneDCName:  The new DC's name.
	CloneDCName string `idl:"name:pwszCloneDCName;string" json:"clone_dc_name"`
	// pwszSite:  The site containing the new DC.
	Site string `idl:"name:pwszSite;string" json:"site"`
	// cPasswordLength:  The length of the pwsNewDCAccountPassword member.
	PasswordLengthCount uint32 `idl:"name:cPasswordLength" json:"password_length_count"`
	// pwsNewDCAccountPassword:  The password of the new DC account.
	NewDCAccountPassword string `idl:"name:pwsNewDCAccountPassword;size_is:(cPasswordLength)" json:"new_dc_account_password"`
}

MessageAddCloneDCReplyV1 structure represents DRS_MSG_ADDCLONEDCREPLY_V1 RPC structure.

The DRS_MSG_ADDCLONEDCREPLY_V1 structure defines a response message received from the IDL_DRSAddCloneDC method.

func (*MessageAddCloneDCReplyV1) MarshalNDR

func (o *MessageAddCloneDCReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddCloneDCReplyV1) UnmarshalNDR

func (o *MessageAddCloneDCReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddCloneDCReply_V1

type MessageAddCloneDCReply_V1 struct {
	// V1:  The version 1 response.
	V1 *MessageAddCloneDCReplyV1 `idl:"name:V1" json:"v1"`
}

MessageAddCloneDCReply_V1 structure represents DRS_MSG_ADDCLONEDCREPLY RPC union arm.

It has following labels: 1

func (*MessageAddCloneDCReply_V1) MarshalNDR

func (o *MessageAddCloneDCReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddCloneDCReply_V1) UnmarshalNDR

func (o *MessageAddCloneDCReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddCloneDCRequest

type MessageAddCloneDCRequest struct {
	// Types that are assignable to Value
	//
	// *MessageAddCloneDCRequest_V1
	Value is_MessageAddCloneDCRequest `json:"value"`
}

MessageAddCloneDCRequest structure represents DRS_MSG_ADDCLONEDCREQ RPC union.

The DRS_MSG_ADDCLONEDCREQ union defines the request messages sent to the IDL_DRSAddCloneDC method.

func (*MessageAddCloneDCRequest) GetValue

func (o *MessageAddCloneDCRequest) GetValue() any

func (*MessageAddCloneDCRequest) MarshalUnionNDR

func (o *MessageAddCloneDCRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddCloneDCRequest) NDRSwitchValue

func (o *MessageAddCloneDCRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageAddCloneDCRequest) UnmarshalUnionNDR

func (o *MessageAddCloneDCRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddCloneDCRequestV1

type MessageAddCloneDCRequestV1 struct {
	// pwszCloneDCName:  The new DC name.
	CloneDCName string `idl:"name:pwszCloneDCName;string" json:"clone_dc_name"`
	// pwszSite:  The RDN of the site the new DC will be placed into.
	Site string `idl:"name:pwszSite;string" json:"site"`
}

MessageAddCloneDCRequestV1 structure represents DRS_MSG_ADDCLONEDCREQ_V1 RPC structure.

The DRS_MSG_ADDCLONEDCREQ_V1 structure defines a request message sent to the IDL_DRSAddCloneDC method.

func (*MessageAddCloneDCRequestV1) MarshalNDR

func (o *MessageAddCloneDCRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddCloneDCRequestV1) UnmarshalNDR

func (o *MessageAddCloneDCRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddCloneDCRequest_V1

type MessageAddCloneDCRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageAddCloneDCRequestV1 `idl:"name:V1" json:"v1"`
}

MessageAddCloneDCRequest_V1 structure represents DRS_MSG_ADDCLONEDCREQ RPC union arm.

It has following labels: 1

func (*MessageAddCloneDCRequest_V1) MarshalNDR

func (*MessageAddCloneDCRequest_V1) UnmarshalNDR

func (o *MessageAddCloneDCRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryReply

type MessageAddEntryReply struct {
	// Types that are assignable to Value
	//
	// *MessageAddEntryReply_V1
	// *MessageAddEntryReply_V2
	// *MessageAddEntryReply_V3
	Value is_MessageAddEntryReply `json:"value"`
}

MessageAddEntryReply structure represents DRS_MSG_ADDENTRYREPLY RPC union.

The DRS_MSG_ADDENTRYREPLY union defines the response messages received from the IDL_DRSAddEntry method.

func (*MessageAddEntryReply) GetValue

func (o *MessageAddEntryReply) GetValue() any

func (*MessageAddEntryReply) MarshalUnionNDR

func (o *MessageAddEntryReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddEntryReply) NDRSwitchValue

func (o *MessageAddEntryReply) NDRSwitchValue(sw uint32) uint32

func (*MessageAddEntryReply) UnmarshalUnionNDR

func (o *MessageAddEntryReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddEntryReplyV1

type MessageAddEntryReplyV1 struct {
	// Guid:   The objectGUID of the added object.
	GUID *dtyp.GUID `idl:"name:Guid" json:"guid"`
	// Sid:   The objectSid of the added object.
	SID *NT4SID `idl:"name:Sid" json:"sid"`
	// errCode:  0 if successful or a DIRERR error code (section 4.1.1.1.25) if a fatal
	// error occurred.
	ErrorCode uint32 `idl:"name:errCode" json:"error_code"`
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
}

MessageAddEntryReplyV1 structure represents DRS_MSG_ADDENTRYREPLY_V1 RPC structure.

The DRS_MSG_ADDENTRYREPLY_V1 structure defines the response message received from the IDL_DRSAddEntry method. This response version is obsolete.<7>

func (*MessageAddEntryReplyV1) MarshalNDR

func (o *MessageAddEntryReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryReplyV1) UnmarshalNDR

func (o *MessageAddEntryReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryReplyV2

type MessageAddEntryReplyV2 struct {
	// pErrorObject:  Null, or the identity of the object that was being added when an error
	// occurred.
	ErrorObject *DSName `idl:"name:pErrorObject;pointer:unique" json:"error_object"`
	// errCode:  0 if successful, otherwise a DIRERR error code (section 4.1.1.1.25).
	ErrorCode uint32 `idl:"name:errCode" json:"error_code"`
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
	// cObjectsAdded:  The count of items in the infoList array.
	ObjectsAddedCount uint32 `idl:"name:cObjectsAdded" json:"objects_added_count"`
	// infoList:  The identities of the added objects. The item order matches the item order
	// of values in the EntInfList field in the request structure.
	InfoList []*AddEntryReplyInfo `idl:"name:infoList;size_is:(cObjectsAdded)" json:"info_list"`
}

MessageAddEntryReplyV2 structure represents DRS_MSG_ADDENTRYREPLY_V2 RPC structure.

The DRS_MSG_ADDENTRYREPLY_V2 structure defines the response message received from the IDL_DRSAddEntry method.

func (*MessageAddEntryReplyV2) MarshalNDR

func (o *MessageAddEntryReplyV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryReplyV2) UnmarshalNDR

func (o *MessageAddEntryReplyV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryReplyV3

type MessageAddEntryReplyV3 struct {
	// pdsErrObject:  Null, or the identity of the object that was being added when an error
	// occurred.
	PdsErrorObject *DSName `idl:"name:pdsErrObject" json:"pds_error_object"`
	// dwErrVer:  MUST be set to 1.
	ErrorVer uint32 `idl:"name:dwErrVer" json:"error_ver"`
	// pErrData:  Null, or an error that occurred while processing the request.
	ErrorData *ErrorData `idl:"name:pErrData;switch_is:dwErrVer" json:"error_data"`
	// cObjectsAdded:  The count of items in the infoList array.
	ObjectsAddedCount uint32 `idl:"name:cObjectsAdded" json:"objects_added_count"`
	// infoList:  The identities of the added objects. The item order matches the item order
	// of values in the EntInfList field in the request structure.
	InfoList []*AddEntryReplyInfo `idl:"name:infoList;size_is:(cObjectsAdded)" json:"info_list"`
}

MessageAddEntryReplyV3 structure represents DRS_MSG_ADDENTRYREPLY_V3 RPC structure.

The DRS_MSG_ADDENTRYREPLY_V3 structure defines the response message received from the IDL_DRSAddEntry method.

func (*MessageAddEntryReplyV3) MarshalNDR

func (o *MessageAddEntryReplyV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryReplyV3) UnmarshalNDR

func (o *MessageAddEntryReplyV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryReply_V1

type MessageAddEntryReply_V1 struct {
	// V1:  Version 1 response (obsolete).
	V1 *MessageAddEntryReplyV1 `idl:"name:V1" json:"v1"`
}

MessageAddEntryReply_V1 structure represents DRS_MSG_ADDENTRYREPLY RPC union arm.

It has following labels: 1

func (*MessageAddEntryReply_V1) MarshalNDR

func (o *MessageAddEntryReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryReply_V1) UnmarshalNDR

func (o *MessageAddEntryReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryReply_V2

type MessageAddEntryReply_V2 struct {
	// V2:  Version 2 response.
	V2 *MessageAddEntryReplyV2 `idl:"name:V2" json:"v2"`
}

MessageAddEntryReply_V2 structure represents DRS_MSG_ADDENTRYREPLY RPC union arm.

It has following labels: 2

func (*MessageAddEntryReply_V2) MarshalNDR

func (o *MessageAddEntryReply_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryReply_V2) UnmarshalNDR

func (o *MessageAddEntryReply_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryReply_V3

type MessageAddEntryReply_V3 struct {
	// V3:  Version 3 response.
	V3 *MessageAddEntryReplyV3 `idl:"name:V3" json:"v3"`
}

MessageAddEntryReply_V3 structure represents DRS_MSG_ADDENTRYREPLY RPC union arm.

It has following labels: 3

func (*MessageAddEntryReply_V3) MarshalNDR

func (o *MessageAddEntryReply_V3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryReply_V3) UnmarshalNDR

func (o *MessageAddEntryReply_V3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryRequest

type MessageAddEntryRequest struct {
	// Types that are assignable to Value
	//
	// *MessageAddEntryRequest_V1
	// *MessageAddEntryRequest_V2
	// *MessageAddEntryRequest_V3
	Value is_MessageAddEntryRequest `json:"value"`
}

MessageAddEntryRequest structure represents DRS_MSG_ADDENTRYREQ RPC union.

The DRS_MSG_ADDENTRYREQ union defines the request messages that are sent to the IDL_DRSAddEntry method.

func (*MessageAddEntryRequest) GetValue

func (o *MessageAddEntryRequest) GetValue() any

func (*MessageAddEntryRequest) MarshalUnionNDR

func (o *MessageAddEntryRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddEntryRequest) NDRSwitchValue

func (o *MessageAddEntryRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageAddEntryRequest) UnmarshalUnionNDR

func (o *MessageAddEntryRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddEntryRequestV1

type MessageAddEntryRequestV1 struct {
	// pObject:  The identity of the object to add.
	Object *DSName `idl:"name:pObject;pointer:ref" json:"object"`
	// AttrBlock:  The attributes of the object to add.
	AttributeBlock *AttributeBlock `idl:"name:AttrBlock" json:"attribute_block"`
}

MessageAddEntryRequestV1 structure represents DRS_MSG_ADDENTRYREQ_V1 RPC structure.

The DRS_MSG_ADDENTRYREQ_V1 structure defines the request message sent to the IDL_DRSAddEntry method. This request version is obsolete.<6>

func (*MessageAddEntryRequestV1) MarshalNDR

func (o *MessageAddEntryRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryRequestV1) UnmarshalNDR

func (o *MessageAddEntryRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryRequestV2

type MessageAddEntryRequestV2 struct {
	// EntInfList:  The objects to be added, as specified in section 5.57.
	EntityInfoList *EntityInfoList `idl:"name:EntInfList" json:"entity_info_list"`
}

MessageAddEntryRequestV2 structure represents DRS_MSG_ADDENTRYREQ_V2 RPC structure.

The DRS_MSG_ADDENTRYREQ_V2 structure defines the request message sent to the IDL_DRSAddEntry method.

func (*MessageAddEntryRequestV2) MarshalNDR

func (o *MessageAddEntryRequestV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryRequestV2) UnmarshalNDR

func (o *MessageAddEntryRequestV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryRequestV3

type MessageAddEntryRequestV3 struct {
	// EntInfList:  The objects to be added.
	EntityInfoList *EntityInfoList `idl:"name:EntInfList" json:"entity_info_list"`
	// pClientCreds:  The user credentials to authorize the operation.
	ClientCreds *SecurityBufferDesc `idl:"name:pClientCreds" json:"client_creds"`
}

MessageAddEntryRequestV3 structure represents DRS_MSG_ADDENTRYREQ_V3 RPC structure.

The DRS_MSG_ADDENTRYREQ_V3 structure defines the request message sent to the IDL_DRSAddEntry method.

func (*MessageAddEntryRequestV3) MarshalNDR

func (o *MessageAddEntryRequestV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryRequestV3) UnmarshalNDR

func (o *MessageAddEntryRequestV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryRequest_V1

type MessageAddEntryRequest_V1 struct {
	// V1:  Version 1 request (obsolete).
	V1 *MessageAddEntryRequestV1 `idl:"name:V1" json:"v1"`
}

MessageAddEntryRequest_V1 structure represents DRS_MSG_ADDENTRYREQ RPC union arm.

It has following labels: 1

func (*MessageAddEntryRequest_V1) MarshalNDR

func (o *MessageAddEntryRequest_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryRequest_V1) UnmarshalNDR

func (o *MessageAddEntryRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryRequest_V2

type MessageAddEntryRequest_V2 struct {
	// V2:  Version 2 request.
	V2 *MessageAddEntryRequestV2 `idl:"name:V2" json:"v2"`
}

MessageAddEntryRequest_V2 structure represents DRS_MSG_ADDENTRYREQ RPC union arm.

It has following labels: 2

func (*MessageAddEntryRequest_V2) MarshalNDR

func (o *MessageAddEntryRequest_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryRequest_V2) UnmarshalNDR

func (o *MessageAddEntryRequest_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddEntryRequest_V3

type MessageAddEntryRequest_V3 struct {
	// V3:  Version 3 request.
	V3 *MessageAddEntryRequestV3 `idl:"name:V3" json:"v3"`
}

MessageAddEntryRequest_V3 structure represents DRS_MSG_ADDENTRYREQ RPC union arm.

It has following labels: 3

func (*MessageAddEntryRequest_V3) MarshalNDR

func (o *MessageAddEntryRequest_V3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddEntryRequest_V3) UnmarshalNDR

func (o *MessageAddEntryRequest_V3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddReplica

type MessageAddReplica struct {
	// Types that are assignable to Value
	//
	// *MessageAddReplica_V1
	// *MessageAddReplica_V2
	// *MessageAddReplica_V3
	Value is_MessageAddReplica `json:"value"`
}

MessageAddReplica structure represents DRS_MSG_REPADD RPC union.

The DRS_MSG_REPADD union defines request messages that are sent to the IDL_DRSReplicaAdd method.

func (*MessageAddReplica) GetValue

func (o *MessageAddReplica) GetValue() any

func (*MessageAddReplica) MarshalUnionNDR

func (o *MessageAddReplica) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddReplica) NDRSwitchValue

func (o *MessageAddReplica) NDRSwitchValue(sw uint32) uint32

func (*MessageAddReplica) UnmarshalUnionNDR

func (o *MessageAddReplica) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddReplicaV1

type MessageAddReplicaV1 struct {
	// pNC:  The NC root of the NC to replicate.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// pszDsaSrc:  The transport-specific NetworkAddress of the DC from which to replicate
	// updates.
	DSASource string `idl:"name:pszDsaSrc;string;pointer:ref" json:"dsa_source"`
	// rtSchedule:  The schedule used to perform periodic replication.
	Schedule *ReplicationTimes `idl:"name:rtSchedule" json:"schedule"`
	// ulOptions:  Zero or more DRS_OPTIONS flags.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageAddReplicaV1 structure represents DRS_MSG_REPADD_V1 RPC structure.

The DRS_MSG_REPADD_V1 structure defines a request message sent to the IDL_DRSReplicaAdd method.

func (*MessageAddReplicaV1) MarshalNDR

func (o *MessageAddReplicaV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddReplicaV1) UnmarshalNDR

func (o *MessageAddReplicaV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddReplicaV2

type MessageAddReplicaV2 struct {
	// pNC:  The NC root of the NC to replicate.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// pSourceDsaDN:  The nTDSDSA object for the DC from which to replicate changes.
	SourceDSADN *DSName `idl:"name:pSourceDsaDN;pointer:unique" json:"source_dsa_dn"`
	// pTransportDN:  The interSiteTransport object that identifies the network transport
	// over which replication is to be performed.
	TransportDN *DSName `idl:"name:pTransportDN;pointer:unique" json:"transport_dn"`
	// pszSourceDsaAddress:  The transport-specific NetworkAddress of the DC from which
	// to replicate updates.
	SourceDSAAddress string `idl:"name:pszSourceDsaAddress;string;pointer:ref" json:"source_dsa_address"`
	// rtSchedule:  The schedule used to perform periodic replication.
	Schedule *ReplicationTimes `idl:"name:rtSchedule" json:"schedule"`
	// ulOptions:  Zero or more DRS_OPTIONS flags.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageAddReplicaV2 structure represents DRS_MSG_REPADD_V2 RPC structure.

The DRS_MSG_REPADD_V2 structure defines a request message sent to the IDL_DRSReplicaAdd method. This request version is a superset of V1.

func (*MessageAddReplicaV2) MarshalNDR

func (o *MessageAddReplicaV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddReplicaV2) UnmarshalNDR

func (o *MessageAddReplicaV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddReplicaV3

type MessageAddReplicaV3 struct {
	NC               *DSName                   `idl:"name:pNC;pointer:ref" json:"nc"`
	SourceDSADN      *DSName                   `idl:"name:pSourceDsaDN;pointer:unique" json:"source_dsa_dn"`
	TransportDN      *DSName                   `idl:"name:pTransportDN;pointer:unique" json:"transport_dn"`
	SourceDSAAddress string                    `idl:"name:pszSourceDsaAddress;string;pointer:ref" json:"source_dsa_address"`
	Schedule         *ReplicationTimes         `idl:"name:rtSchedule" json:"schedule"`
	Options          uint32                    `idl:"name:ulOptions" json:"options"`
	CorrelationID    *dtyp.GUID                `idl:"name:correlationID" json:"correlation_id"`
	ReservedBuffer   *VarSizeBufferWithVersion `idl:"name:pReservedBuffer;pointer:unique" json:"reserved_buffer"`
}

MessageAddReplicaV3 structure represents DRS_MSG_REPADD_V3 RPC structure.

func (*MessageAddReplicaV3) MarshalNDR

func (o *MessageAddReplicaV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddReplicaV3) UnmarshalNDR

func (o *MessageAddReplicaV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddReplica_V1

type MessageAddReplica_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageAddReplicaV1 `idl:"name:V1" json:"v1"`
}

MessageAddReplica_V1 structure represents DRS_MSG_REPADD RPC union arm.

It has following labels: 1

func (*MessageAddReplica_V1) MarshalNDR

func (o *MessageAddReplica_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddReplica_V1) UnmarshalNDR

func (o *MessageAddReplica_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddReplica_V2

type MessageAddReplica_V2 struct {
	// V2:  The version 2 request (a superset of V1).
	V2 *MessageAddReplicaV2 `idl:"name:V2" json:"v2"`
}

MessageAddReplica_V2 structure represents DRS_MSG_REPADD RPC union arm.

It has following labels: 2

func (*MessageAddReplica_V2) MarshalNDR

func (o *MessageAddReplica_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddReplica_V2) UnmarshalNDR

func (o *MessageAddReplica_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddReplica_V3

type MessageAddReplica_V3 struct {
	// V3:  The version 3 request (a superset of V2).
	V3 *MessageAddReplicaV3 `idl:"name:V3" json:"v3"`
}

MessageAddReplica_V3 structure represents DRS_MSG_REPADD RPC union arm.

It has following labels: 3

func (*MessageAddReplica_V3) MarshalNDR

func (o *MessageAddReplica_V3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageAddReplica_V3) UnmarshalNDR

func (o *MessageAddReplica_V3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddSIDHistoryReply

type MessageAddSIDHistoryReply struct {
	// Types that are assignable to Value
	//
	// *MessageAddSIDHistoryReply_V1
	Value is_MessageAddSIDHistoryReply `json:"value"`
}

MessageAddSIDHistoryReply structure represents DRS_MSG_ADDSIDREPLY RPC union.

The DRS_MSG_ADDSIDREPLY union defines the response messages received from the IDL_DRSAddSidHistory method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageAddSIDHistoryReply) GetValue

func (o *MessageAddSIDHistoryReply) GetValue() any

func (*MessageAddSIDHistoryReply) MarshalUnionNDR

func (o *MessageAddSIDHistoryReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddSIDHistoryReply) NDRSwitchValue

func (o *MessageAddSIDHistoryReply) NDRSwitchValue(sw uint32) uint32

func (*MessageAddSIDHistoryReply) UnmarshalUnionNDR

func (o *MessageAddSIDHistoryReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddSIDHistoryReplyV1

type MessageAddSIDHistoryReplyV1 struct {
	// dwWin32Error:  Zero if successful, otherwise a Windows error code.
	Win32Error uint32 `idl:"name:dwWin32Error" json:"win32_error"`
}

MessageAddSIDHistoryReplyV1 structure represents DRS_MSG_ADDSIDREPLY_V1 RPC structure.

The DRS_MSG_ADDSIDREPLY_V1 structure defines the response message received from the IDL_DRSAddSidHistory method.

func (*MessageAddSIDHistoryReplyV1) MarshalNDR

func (*MessageAddSIDHistoryReplyV1) UnmarshalNDR

func (o *MessageAddSIDHistoryReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddSIDHistoryReply_V1

type MessageAddSIDHistoryReply_V1 struct {
	// V1:  Version 1 of the reply packet structure.
	V1 *MessageAddSIDHistoryReplyV1 `idl:"name:V1" json:"v1"`
}

MessageAddSIDHistoryReply_V1 structure represents DRS_MSG_ADDSIDREPLY RPC union arm.

It has following labels: 1

func (*MessageAddSIDHistoryReply_V1) MarshalNDR

func (*MessageAddSIDHistoryReply_V1) UnmarshalNDR

func (o *MessageAddSIDHistoryReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddSIDHistoryRequest

type MessageAddSIDHistoryRequest struct {
	// Types that are assignable to Value
	//
	// *MessageAddSIDHistoryRequest_V1
	Value is_MessageAddSIDHistoryRequest `json:"value"`
}

MessageAddSIDHistoryRequest structure represents DRS_MSG_ADDSIDREQ RPC union.

The DRS_MSG_ADDSIDREQ union defines the request messages that are sent to the IDL_DRSAddSidHistory method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageAddSIDHistoryRequest) GetValue

func (o *MessageAddSIDHistoryRequest) GetValue() any

func (*MessageAddSIDHistoryRequest) MarshalUnionNDR

func (o *MessageAddSIDHistoryRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageAddSIDHistoryRequest) NDRSwitchValue

func (o *MessageAddSIDHistoryRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageAddSIDHistoryRequest) UnmarshalUnionNDR

func (o *MessageAddSIDHistoryRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageAddSIDHistoryRequestV1

type MessageAddSIDHistoryRequestV1 struct {
	// Flags:  A set of zero or more DRS_ADDSID_FLAGS bit flags.
	Flags uint32 `idl:"name:Flags" json:"flags"`
	// SrcDomain:  Name of the domain to query for the SID of SrcPrincipal. The domain name
	// can be an FQDN (1) or a NetBIOS name.
	SourceDomain string `idl:"name:SrcDomain;string" json:"source_domain"`
	// SrcPrincipal:  Name of a security principal (user, computer, or group) in the source
	// domain. This is the source security principal, whose SIDs will be added to the destination
	// security principal. If Flags contains DS_ADDSID_FLAG_PRIVATE_CHK_SECURE, this parameter
	// is not used and is not validated. Otherwise, if Flags does not contain DS_ADDSID_FLAG_PRIVATE_DEL_SRC_OBJ,
	// this name is a domain-relative Security Accounts Manager (SAM) name. Otherwise, it
	// is a DN.
	SourcePrincipal string `idl:"name:SrcPrincipal;string" json:"source_principal"`
	// SrcDomainController:  Name of the primary domain controller (PDC) (or PDC role owner)
	// in the source domain. The DC name can be an Internet host name or a NetBIOS name.
	// This parameter is only used when Flags contains neither DS_ADDSID_FLAG_PRIVATE_CHK_SECURE
	// nor DS_ADDSID_FLAG_PRIVATE_DEL_SRC_OBJ. If Flags contains DS_ADDSID_FLAG_PRIVATE_DEL_SRC_OBJ,
	// this parameter is not used, but it is validated.
	SourceDomainController string `idl:"name:SrcDomainController;string;pointer:ptr" json:"source_domain_controller"`
	// SrcCredsUserLength:  Count of characters in the SrcCredsUser array.
	SourceCredsUserLength uint32 `idl:"name:SrcCredsUserLength" json:"source_creds_user_length"`
	// SrcCredsUser:  User name for the credentials to be used in the source domain.
	SourceCredsUser string `idl:"name:SrcCredsUser;size_is:(SrcCredsUserLength)" json:"source_creds_user"`
	// SrcCredsDomainLength:  Count of characters in the SrcCredsDomain array.
	SourceCredsDomainLength uint32 `idl:"name:SrcCredsDomainLength" json:"source_creds_domain_length"`
	// SrcCredsDomain:  Domain name for the credentials to be used in the source domain.
	// The domain name can be an FQDN (1) or a NetBIOS domain name.
	SourceCredsDomain string `idl:"name:SrcCredsDomain;size_is:(SrcCredsDomainLength)" json:"source_creds_domain"`
	// SrcCredsPasswordLength:  Count of characters in the SrcCredsPassword array.
	SourceCredsPasswordLength uint32 `idl:"name:SrcCredsPasswordLength" json:"source_creds_password_length"`
	// SrcCredsPassword:  Password for the credentials to be used in the source domain.
	SourceCredsPassword string `idl:"name:SrcCredsPassword;size_is:(SrcCredsPasswordLength)" json:"source_creds_password"`
	// DstDomain:  Name of the destination domain in which DstPrincipal resides. The domain
	// name can be an FQDN (1) or a NetBIOS name.
	DestinationDomain string `idl:"name:DstDomain;string" json:"destination_domain"`
	// DstPrincipal:  Name of a security principal (user, computer, or group) in the destination
	// domain. This is the destination principal, to which the source principal's SIDs will
	// be added. If Flags contains DS_ADDSID_FLAG_PRIVATE_CHK_SECURE, this parameter is
	// not used and is not validated. Otherwise, if Flags does not contain DS_ADDSID_FLAG_PRIVATE_DEL_SRC_OBJ,
	// this name is a domain-relative SAM name. Otherwise, it is a DN.
	DestinationPrincipal string `idl:"name:DstPrincipal;string" json:"destination_principal"`
}

MessageAddSIDHistoryRequestV1 structure represents DRS_MSG_ADDSIDREQ_V1 RPC structure.

The DRS_MSG_ADDSIDREQ_V1 structure defines the request message sent to the IDL_DRSAddSidHistory method.

func (*MessageAddSIDHistoryRequestV1) MarshalNDR

func (*MessageAddSIDHistoryRequestV1) UnmarshalNDR

func (o *MessageAddSIDHistoryRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageAddSIDHistoryRequest_V1

type MessageAddSIDHistoryRequest_V1 struct {
	// V1:  Version 1 request.
	V1 *MessageAddSIDHistoryRequestV1 `idl:"name:V1" json:"v1"`
}

MessageAddSIDHistoryRequest_V1 structure represents DRS_MSG_ADDSIDREQ RPC union arm.

It has following labels: 1

func (*MessageAddSIDHistoryRequest_V1) MarshalNDR

func (*MessageAddSIDHistoryRequest_V1) UnmarshalNDR

type MessageCrackNamesReply

type MessageCrackNamesReply struct {
	// Types that are assignable to Value
	//
	// *MessageCrackNamesReply_V1
	Value is_MessageCrackNamesReply `json:"value"`
}

MessageCrackNamesReply structure represents DRS_MSG_CRACKREPLY RPC union.

The DRS_MSG_CRACKREPLY union defines the response messages received from the IDL_DRSCrackNames method.

func (*MessageCrackNamesReply) GetValue

func (o *MessageCrackNamesReply) GetValue() any

func (*MessageCrackNamesReply) MarshalUnionNDR

func (o *MessageCrackNamesReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageCrackNamesReply) NDRSwitchValue

func (o *MessageCrackNamesReply) NDRSwitchValue(sw uint32) uint32

func (*MessageCrackNamesReply) UnmarshalUnionNDR

func (o *MessageCrackNamesReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageCrackNamesReplyV1

type MessageCrackNamesReplyV1 struct {
	// pResult:  Translated form of the names.
	Result *DSNameResult `idl:"name:pResult" json:"result"`
}

MessageCrackNamesReplyV1 structure represents DRS_MSG_CRACKREPLY_V1 RPC structure.

The DRS_MSG_CRACKREPLY_V1 structure defines the response message received from the IDL_DRSCrackNames method.

func (*MessageCrackNamesReplyV1) MarshalNDR

func (o *MessageCrackNamesReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageCrackNamesReplyV1) UnmarshalNDR

func (o *MessageCrackNamesReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageCrackNamesReply_V1

type MessageCrackNamesReply_V1 struct {
	// V1:  Version 1 reply.
	V1 *MessageCrackNamesReplyV1 `idl:"name:V1" json:"v1"`
}

MessageCrackNamesReply_V1 structure represents DRS_MSG_CRACKREPLY RPC union arm.

It has following labels: 1

func (*MessageCrackNamesReply_V1) MarshalNDR

func (o *MessageCrackNamesReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageCrackNamesReply_V1) UnmarshalNDR

func (o *MessageCrackNamesReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageCrackNamesRequest

type MessageCrackNamesRequest struct {
	// Types that are assignable to Value
	//
	// *MessageCrackNamesRequest_V1
	Value is_MessageCrackNamesRequest `json:"value"`
}

MessageCrackNamesRequest structure represents DRS_MSG_CRACKREQ RPC union.

The DRS_MSG_CRACKREQ union defines the request messages sent to the IDL_DRSCrackNames method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageCrackNamesRequest) GetValue

func (o *MessageCrackNamesRequest) GetValue() any

func (*MessageCrackNamesRequest) MarshalUnionNDR

func (o *MessageCrackNamesRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageCrackNamesRequest) NDRSwitchValue

func (o *MessageCrackNamesRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageCrackNamesRequest) UnmarshalUnionNDR

func (o *MessageCrackNamesRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageCrackNamesRequestV1

type MessageCrackNamesRequestV1 struct {
	// CodePage:  The character set used by the client. This field SHOULD be ignored by
	// the server.
	CodePage uint32 `idl:"name:CodePage" json:"code_page"`
	// LocaleId:  The locale used by the client. This field SHOULD be ignored by the server.
	LocaleID uint32 `idl:"name:LocaleId" json:"locale_id"`
	// dwFlags:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order.
	//
	//	+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 |  4  |  5  | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 |   4   | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |     |     |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |       |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+---+---+---+---+---+---+---+
	//	+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+---+---+---+---+---+---+---+
	//	| X | X | X | X | T R | G C | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | F P O | X | X | X | X | X | X | X |
	//	+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// GC (DS_NAME_FLAG_GCVERIFY, 0x00000004): If set, the call fails if the server is not
	// a GC server.
	//
	// TR (DS_NAME_FLAG_TRUST_REFERRAL, 0x00000008): If set and the lookup fails on the
	// server, referrals are returned to trusted forests where the lookup might succeed.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// formatOffered:  The format of the names in rpNames. This can be one of the values
	// from DS_NAME_FORMAT (section 4.1.4.1.3) or one of the following.
	//
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	|                                                |                                                                                  |
	//	|                     VALUE                      |                                     MEANING                                      |
	//	|                                                |                                                                                  |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_SITES 0xFFFFFFFF                       | Get all sites in the forest.                                                     |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_SERVERS_IN_SITE 0xFFFFFFFE             | Get all servers in a given site.                                                 |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_DOMAINS_IN_SITE 0xFFFFFFFD             | Get all domains in a given site.                                                 |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_SERVERS_FOR_DOMAIN_IN_SITE 0xFFFFFFFC  | Get all DCs of a specified domain in a given site.                               |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_INFO_FOR_SERVER 0xFFFFFFFB             | Get DNS host name and server reference for a given DC.                           |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_ROLES 0xFFFFFFFA                       | Get FSMO role owners.                                                            |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_NT4_ACCOUNT_NAME_SANS_DOMAIN 0xFFFFFFF9     | Get value of sAMAccountName attribute.                                           |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_MAP_SCHEMA_GUID 0xFFFFFFF8                  | Get LDAP display name from schema GUID. The given schema GUID must be in the     |
	//	|                                                | curly braced GUID string format as specified in [MS-DTYP] section 2.3.4.3.       |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_DOMAINS 0xFFFFFFF7                     | Get all domains in the forest.                                                   |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_NCS 0xFFFFFFF6                         | Get all NCs in the forest.                                                       |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_ALT_SECURITY_IDENTITIES_NAME 0xFFFFFFF5     | Compares input names against the values of the altSecurityIdentities attribute.  |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_STRING_SID_NAME 0xFFFFFFF4                  | String form of SID.                                                              |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_SERVERS_WITH_DCS_IN_SITE 0xFFFFFFF3    | Get all DCs in a given site.                                                     |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_LIST_GLOBAL_CATALOG_SERVERS 0xFFFFFFF1      | Get all GCs in the forest.                                                       |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_NT4_ACCOUNT_NAME_SANS_DOMAIN_EX 0xFFFFFFF0  | Get value of sAMAccountName attribute; return status DS_NAME_ERROR_NOT_FOUND if  |
	//	|                                                | account is invalid.                                                              |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	//	| DS_USER_PRINCIPAL_NAME_AND_ALTSECID 0xFFFFFFEF | Compares input names against the user principal name and the values of the       |
	//	|                                                | altSecurityIdentities attribute.                                                 |
	//	+------------------------------------------------+----------------------------------------------------------------------------------+
	FormatOffered uint32 `idl:"name:formatOffered" json:"format_offered"`
	// formatDesired:  Format of the names in the rItems field of the DS_NAME_RESULTW structure,
	// which is returned inside the DRS_MSG_CRACKREPLY message. This can be one of the values
	// from DS_NAME_FORMAT or one of the following.
	//
	//	+---------------------------------------------+-----------------------+
	//	|                                             |                       |
	//	|                    VALUE                    |        MEANING        |
	//	|                                             |                       |
	//	+---------------------------------------------+-----------------------+
	//	+---------------------------------------------+-----------------------+
	//	| DS_STRING_SID_NAME 0xFFFFFFF4               | String form of a SID. |
	//	+---------------------------------------------+-----------------------+
	//	| DS_USER_PRINCIPAL_NAME_FOR_LOGON 0xFFFFFFF2 | User principal name.  |
	//	+---------------------------------------------+-----------------------+
	FormatDesired uint32 `idl:"name:formatDesired" json:"format_desired"`
	// cNames:  Count of items in the rpNames array.
	NamesCount uint32 `idl:"name:cNames" json:"names_count"`
	// rpNames:  Input names to translate.
	Names []string `idl:"name:rpNames;size_is:(cNames);string" json:"names"`
}

MessageCrackNamesRequestV1 structure represents DRS_MSG_CRACKREQ_V1 RPC structure.

The DRS_MSG_CRACKREQ_V1 structure defines the request message sent to the IDL_DRSCrackNames method.

func (*MessageCrackNamesRequestV1) MarshalNDR

func (o *MessageCrackNamesRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageCrackNamesRequestV1) UnmarshalNDR

func (o *MessageCrackNamesRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageCrackNamesRequest_V1

type MessageCrackNamesRequest_V1 struct {
	// V1:  Version 1 request.
	V1 *MessageCrackNamesRequestV1 `idl:"name:V1" json:"v1"`
}

MessageCrackNamesRequest_V1 structure represents DRS_MSG_CRACKREQ RPC union arm.

It has following labels: 1

func (*MessageCrackNamesRequest_V1) MarshalNDR

func (*MessageCrackNamesRequest_V1) UnmarshalNDR

func (o *MessageCrackNamesRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReply

type MessageDCInfoReply struct {
	// Types that are assignable to Value
	//
	// *MessageDCInfoReply_V1
	// *MessageDCInfoReply_V2
	// *MessageDCInfoReply_V3
	// *MessageDCInfoReply_VQ
	Value is_MessageDCInfoReply `json:"value"`
}

MessageDCInfoReply structure represents DRS_MSG_DCINFOREPLY RPC union.

The DRS_MSG_DCINFOREPLY union defines the response messages received from the IDL_DRSDomainControllerInfo method.

func (*MessageDCInfoReply) GetValue

func (o *MessageDCInfoReply) GetValue() any

func (*MessageDCInfoReply) MarshalUnionNDR

func (o *MessageDCInfoReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageDCInfoReply) NDRSwitchValue

func (o *MessageDCInfoReply) NDRSwitchValue(sw uint32) uint32

func (*MessageDCInfoReply) UnmarshalUnionNDR

func (o *MessageDCInfoReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageDCInfoReplyV1

type MessageDCInfoReplyV1 struct {
	// cItems:  Count of items in the rItems array.
	ItemsCount uint32 `idl:"name:cItems" json:"items_count"`
	// rItems:  DC information.
	Items []*DSDomainControllerInfoV1 `idl:"name:rItems;size_is:(cItems)" json:"items"`
}

MessageDCInfoReplyV1 structure represents DRS_MSG_DCINFOREPLY_V1 RPC structure.

The DRS_MSG_DCINFOREPLY_V1 structure defines the response message received from the IDL_DRSDomainControllerInfo method, when the client has requested InfoLevel = 1.

func (*MessageDCInfoReplyV1) MarshalNDR

func (o *MessageDCInfoReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReplyV1) UnmarshalNDR

func (o *MessageDCInfoReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReplyV2

type MessageDCInfoReplyV2 struct {
	// cItems:  Count of items in the rItems array.
	ItemsCount uint32 `idl:"name:cItems" json:"items_count"`
	// rItems:  DC information.
	Items []*DSDomainControllerInfoV2 `idl:"name:rItems;size_is:(cItems)" json:"items"`
}

MessageDCInfoReplyV2 structure represents DRS_MSG_DCINFOREPLY_V2 RPC structure.

The DRS_MSG_DCINFOREPLY_V2 structure defines the response message received from the IDL_DRSDomainControllerInfo method, when the client has requested InfoLevel = 2.

func (*MessageDCInfoReplyV2) MarshalNDR

func (o *MessageDCInfoReplyV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReplyV2) UnmarshalNDR

func (o *MessageDCInfoReplyV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReplyV3

type MessageDCInfoReplyV3 struct {
	// cItems:  Count of items in the rItems array.
	ItemsCount uint32 `idl:"name:cItems" json:"items_count"`
	// rItems:  DC information.
	Items []*DSDomainControllerInfoV3 `idl:"name:rItems;size_is:(cItems)" json:"items"`
}

MessageDCInfoReplyV3 structure represents DRS_MSG_DCINFOREPLY_V3 RPC structure.

The DRS_MSG_DCINFOREPLY_V3 structure defines the response message received from the IDL_DRSDomainControllerInfo method when the client has requested InfoLevel = 3.

func (*MessageDCInfoReplyV3) MarshalNDR

func (o *MessageDCInfoReplyV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReplyV3) UnmarshalNDR

func (o *MessageDCInfoReplyV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReplyVQ

type MessageDCInfoReplyVQ struct {
	// cItems:  The count of items in the rItems array.
	ItemsCount uint32 `idl:"name:cItems" json:"items_count"`
	// rItems:  Information about the active LDAP connections.
	Items []*DSDomainControllerInfoVQ `idl:"name:rItems;size_is:(cItems)" json:"items"`
}

MessageDCInfoReplyVQ structure represents DRS_MSG_DCINFOREPLY_VFFFFFFFF RPC structure.

The DRS_MSG_DCINFOREPLY_VFFFFFFFF structure defines the response message received from the IDL_DRSDomainControllerInfo method, when the client has requested InfoLevel = 0xFFFFFFFF.

func (*MessageDCInfoReplyVQ) MarshalNDR

func (o *MessageDCInfoReplyVQ) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReplyVQ) UnmarshalNDR

func (o *MessageDCInfoReplyVQ) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReply_V1

type MessageDCInfoReply_V1 struct {
	// V1:  Version 1 response.
	V1 *MessageDCInfoReplyV1 `idl:"name:V1" json:"v1"`
}

MessageDCInfoReply_V1 structure represents DRS_MSG_DCINFOREPLY RPC union arm.

It has following labels: 1

func (*MessageDCInfoReply_V1) MarshalNDR

func (o *MessageDCInfoReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReply_V1) UnmarshalNDR

func (o *MessageDCInfoReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReply_V2

type MessageDCInfoReply_V2 struct {
	// V2:  Version 2 response.
	V2 *MessageDCInfoReplyV2 `idl:"name:V2" json:"v2"`
}

MessageDCInfoReply_V2 structure represents DRS_MSG_DCINFOREPLY RPC union arm.

It has following labels: 2

func (*MessageDCInfoReply_V2) MarshalNDR

func (o *MessageDCInfoReply_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReply_V2) UnmarshalNDR

func (o *MessageDCInfoReply_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReply_V3

type MessageDCInfoReply_V3 struct {
	// V3:  Version 3 response.
	V3 *MessageDCInfoReplyV3 `idl:"name:V3" json:"v3"`
}

MessageDCInfoReply_V3 structure represents DRS_MSG_DCINFOREPLY RPC union arm.

It has following labels: 3

func (*MessageDCInfoReply_V3) MarshalNDR

func (o *MessageDCInfoReply_V3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReply_V3) UnmarshalNDR

func (o *MessageDCInfoReply_V3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoReply_VQ

type MessageDCInfoReply_VQ struct {
	// VFFFFFFFF:  Version 0xFFFFFFFF response.
	VQ *MessageDCInfoReplyVQ `idl:"name:VFFFFFFFF" json:"vq"`
}

MessageDCInfoReply_VQ structure represents DRS_MSG_DCINFOREPLY RPC union arm.

It has following labels: 4294967295

func (*MessageDCInfoReply_VQ) MarshalNDR

func (o *MessageDCInfoReply_VQ) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoReply_VQ) UnmarshalNDR

func (o *MessageDCInfoReply_VQ) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoRequest

type MessageDCInfoRequest struct {
	// Types that are assignable to Value
	//
	// *MessageDCInfoRequest_V1
	Value is_MessageDCInfoRequest `json:"value"`
}

MessageDCInfoRequest structure represents DRS_MSG_DCINFOREQ RPC union.

The DRS_MSG_DCINFOREQ union defines the request messages sent to the IDL_DRSDomainControllerInfo method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageDCInfoRequest) GetValue

func (o *MessageDCInfoRequest) GetValue() any

func (*MessageDCInfoRequest) MarshalUnionNDR

func (o *MessageDCInfoRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageDCInfoRequest) NDRSwitchValue

func (o *MessageDCInfoRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageDCInfoRequest) UnmarshalUnionNDR

func (o *MessageDCInfoRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageDCInfoRequestV1

type MessageDCInfoRequestV1 struct {
	// Domain:  The domain for which the client requests information. The domain can be
	// an FQDN (1) or a NetBIOS domain name.
	Domain string `idl:"name:Domain;string" json:"domain"`
	// InfoLevel:  The response version requested by the client: 1, 2, 3, or 0xFFFFFFFF.
	// The responses at InfoLevel 1, 2, and 3 all contain information about DCs in the given
	// domain. The information at InfoLevel 1 is a subset of the information at InfoLevel
	// 2, which is a subset of the information at InfoLevel 3. InfoLevel 3 includes information
	// about the RODCs in the given domain. InfoLevel 0xFFFFFFFF server returns information
	// about the active LDAP connections.
	InfoLevel uint32 `idl:"name:InfoLevel" json:"info_level"`
}

MessageDCInfoRequestV1 structure represents DRS_MSG_DCINFOREQ_V1 RPC structure.

The DRS_MSG_DCINFOREQ_V1 structure defines the request message sent to the IDL_DRSDomainControllerInfo method.

func (*MessageDCInfoRequestV1) MarshalNDR

func (o *MessageDCInfoRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoRequestV1) UnmarshalNDR

func (o *MessageDCInfoRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDCInfoRequest_V1

type MessageDCInfoRequest_V1 struct {
	// V1:  Version 1 request.
	V1 *MessageDCInfoRequestV1 `idl:"name:V1" json:"v1"`
}

MessageDCInfoRequest_V1 structure represents DRS_MSG_DCINFOREQ RPC union arm.

It has following labels: 1

func (*MessageDCInfoRequest_V1) MarshalNDR

func (o *MessageDCInfoRequest_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDCInfoRequest_V1) UnmarshalNDR

func (o *MessageDCInfoRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDeleteReplica

type MessageDeleteReplica struct {
	// Types that are assignable to Value
	//
	// *MessageDeleteReplica_V1
	Value is_MessageDeleteReplica `json:"value"`
}

MessageDeleteReplica structure represents DRS_MSG_REPDEL RPC union.

The DRS_MSG_REPDEL union defines the request messages sent to the IDL_DRSReplicaDel method. Only one version, identified by dwVersion = 1, is currently defined.

func (*MessageDeleteReplica) GetValue

func (o *MessageDeleteReplica) GetValue() any

func (*MessageDeleteReplica) MarshalUnionNDR

func (o *MessageDeleteReplica) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageDeleteReplica) NDRSwitchValue

func (o *MessageDeleteReplica) NDRSwitchValue(sw uint32) uint32

func (*MessageDeleteReplica) UnmarshalUnionNDR

func (o *MessageDeleteReplica) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageDeleteReplicaV1

type MessageDeleteReplicaV1 struct {
	// pNC:  A pointer to DSName of the root of an NC replica on the server.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// pszDsaSrc:  The transport-specific NetworkAddress of a DC.
	DSASource string `idl:"name:pszDsaSrc;string" json:"dsa_source"`
	// ulOptions:  The DRS_OPTIONS flags.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageDeleteReplicaV1 structure represents DRS_MSG_REPDEL_V1 RPC structure.

The DRS_MSG_REPDEL_V1 structure defines a request message sent to the IDL_DRSReplicaDel method.

func (*MessageDeleteReplicaV1) MarshalNDR

func (o *MessageDeleteReplicaV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDeleteReplicaV1) UnmarshalNDR

func (o *MessageDeleteReplicaV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageDeleteReplica_V1

type MessageDeleteReplica_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageDeleteReplicaV1 `idl:"name:V1" json:"v1"`
}

MessageDeleteReplica_V1 structure represents DRS_MSG_REPDEL RPC union arm.

It has following labels: 1

func (*MessageDeleteReplica_V1) MarshalNDR

func (o *MessageDeleteReplica_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageDeleteReplica_V1) UnmarshalNDR

func (o *MessageDeleteReplica_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageExistReply

type MessageExistReply struct {
	// Types that are assignable to Value
	//
	// *MessageExistReply_V1
	Value is_MessageExistReply `json:"value"`
}

MessageExistReply structure represents DRS_MSG_EXISTREPLY RPC union.

The DRS_MSG_EXISTREPLY union defines the response message versions received from the IDL_DRSGetObjectExistence method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageExistReply) GetValue

func (o *MessageExistReply) GetValue() any

func (*MessageExistReply) MarshalUnionNDR

func (o *MessageExistReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageExistReply) NDRSwitchValue

func (o *MessageExistReply) NDRSwitchValue(sw uint32) uint32

func (*MessageExistReply) UnmarshalUnionNDR

func (o *MessageExistReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageExistReplyV1

type MessageExistReplyV1 struct {
	// dwStatusFlags:  1 if the digests of the object sequences on the client and server
	// are the same, 0 if they are different.
	StatusFlags uint32 `idl:"name:dwStatusFlags" json:"status_flags"`
	// cNumGuids:  The number of items in the rgGuids array. Zero if dwStatusFlags = 0.
	GUIDsCount uint32 `idl:"name:cNumGuids" json:"guids_count"`
	// rgGuids:   The objectGUIDs of the objects in the server's object sequence.
	GUIDs []*dtyp.UUID `idl:"name:rgGuids;size_is:(cNumGuids)" json:"guids"`
}

MessageExistReplyV1 structure represents DRS_MSG_EXISTREPLY_V1 RPC structure.

The DRS_MSG_EXISTREPLY_V1 structure defines the response message received from the IDL_DRSGetObjectExistence method.

func (*MessageExistReplyV1) MarshalNDR

func (o *MessageExistReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageExistReplyV1) UnmarshalNDR

func (o *MessageExistReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageExistReply_V1

type MessageExistReply_V1 struct {
	// V1:  The version 1 response.
	V1 *MessageExistReplyV1 `idl:"name:V1" json:"v1"`
}

MessageExistReply_V1 structure represents DRS_MSG_EXISTREPLY RPC union arm.

It has following labels: 1

func (*MessageExistReply_V1) MarshalNDR

func (o *MessageExistReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageExistReply_V1) UnmarshalNDR

func (o *MessageExistReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageExistRequest

type MessageExistRequest struct {
	// Types that are assignable to Value
	//
	// *MessageExistRequest_V1
	Value is_MessageExistRequest `json:"value"`
}

MessageExistRequest structure represents DRS_MSG_EXISTREQ RPC union.

The DRS_MSG_EXISTREQ union defines request messages sent to the IDL_DRSGetObjectExistence method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageExistRequest) GetValue

func (o *MessageExistRequest) GetValue() any

func (*MessageExistRequest) MarshalUnionNDR

func (o *MessageExistRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageExistRequest) NDRSwitchValue

func (o *MessageExistRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageExistRequest) UnmarshalUnionNDR

func (o *MessageExistRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageExistRequestV1

type MessageExistRequestV1 struct {
	// guidStart:  The objectGUID of the first object in the client's object sequence.
	Start *dtyp.UUID `idl:"name:guidStart" json:"start"`
	// cGuids:  The number of objects in the client's object sequence.
	GUIDsCount uint32 `idl:"name:cGuids" json:"guids_count"`
	// pNC:  The NC containing the objects in the sequence.
	NC *DSName `idl:"name:pNC" json:"nc"`
	// pUpToDateVecCommonV1:  The filter excluding objects from the client's object sequence.
	UpToDateVectorCommonV1 *UpToDateVectorV1Ext `idl:"name:pUpToDateVecCommonV1" json:"up_to_date_vector_common_v1"`
	// Md5Digest:  The digest of the objectGUID values of the objects in the client's object
	// sequence.
	MD5Digest []byte `idl:"name:Md5Digest" json:"md5_digest"`
}

MessageExistRequestV1 structure represents DRS_MSG_EXISTREQ_V1 RPC structure.

The DRS_MSG_EXISTREQ_V1 structure defines the request message sent to the IDL_DRSGetObjectExistence method.

func (*MessageExistRequestV1) MarshalNDR

func (o *MessageExistRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageExistRequestV1) UnmarshalNDR

func (o *MessageExistRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageExistRequest_V1

type MessageExistRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageExistRequestV1 `idl:"name:V1" json:"v1"`
}

MessageExistRequest_V1 structure represents DRS_MSG_EXISTREQ RPC union arm.

It has following labels: 1

func (*MessageExistRequest_V1) MarshalNDR

func (o *MessageExistRequest_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageExistRequest_V1) UnmarshalNDR

func (o *MessageExistRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageFinishDemotionReply

type MessageFinishDemotionReply struct {
	// Types that are assignable to Value
	//
	// *MessageFinishDemotionReply_V1
	Value is_MessageFinishDemotionReply `json:"value"`
}

MessageFinishDemotionReply structure represents DRS_MSG_FINISH_DEMOTIONREPLY RPC union.

The DRS_MSG_FINISH_DEMOTIONREPLY union defines the response messages received from the IDL_DRSFinishDemotion method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageFinishDemotionReply) GetValue

func (o *MessageFinishDemotionReply) GetValue() any

func (*MessageFinishDemotionReply) MarshalUnionNDR

func (o *MessageFinishDemotionReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageFinishDemotionReply) NDRSwitchValue

func (o *MessageFinishDemotionReply) NDRSwitchValue(sw uint32) uint32

func (*MessageFinishDemotionReply) UnmarshalUnionNDR

func (o *MessageFinishDemotionReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageFinishDemotionReplyV1

type MessageFinishDemotionReplyV1 struct {
	// dwOperationsDone:  The set of operations that were successfully performed. This can
	// include the following values: DS_DEMOTE_ROLLBACK_DEMOTE, DS_DEMOTE_COMMIT_DEMOTE,
	// DS_DEMOTE_DELETE_CSMETA, DS_DEMOTE_UNREGISTER_SCPS, DS_DEMOTE_UNREGISTER_SPNS. This
	// MUST include any value from the input element DRS_MSG_FINISH_DEMOTIONREQ_V1.dwOperations
	// whose corresponding operations (see pseudocode in section 4.1.7.3) succeeded.
	OperationsDone uint32 `idl:"name:dwOperationsDone" json:"operations_done"`
	// dwOpFailed:  The set of operations that failed during demotion. This can include
	// the same values as the dwOperationsDone field. This MUST include any value from the
	// input element DRS_MSG_FINISH_DEMOTIONREQ_V1.dwOperations whose corresponding operations
	// (see pseudocode in section 4.1.7.3) failed.
	OperationFailed uint32 `idl:"name:dwOpFailed" json:"operation_failed"`
	// dwOpError:  The Win32 error code (as specified in [MS-ERREF] section 2.2) of the
	// first failed operation (if any), from the following operations: DS_DEMOTE_ROLLBACK_DEMOTE,
	// DS_DEMOTE_COMMIT_DEMOTE, DS_DEMOTE_DELETE_CSMETA, or DS_DEMOTE_UNREGISTER_SCPS.
	OperationError uint32 `idl:"name:dwOpError" json:"operation_error"`
}

MessageFinishDemotionReplyV1 structure represents DRS_MSG_FINISH_DEMOTIONREPLY_V1 RPC structure.

The DRS_MSG_FINISH_DEMOTIONREPLY_V1 structure defines the response message received from the IDL_DRSFinishDemotion method.

func (*MessageFinishDemotionReplyV1) MarshalNDR

func (*MessageFinishDemotionReplyV1) UnmarshalNDR

func (o *MessageFinishDemotionReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageFinishDemotionReply_V1

type MessageFinishDemotionReply_V1 struct {
	// V1:  Version 1 reply.
	V1 *MessageFinishDemotionReplyV1 `idl:"name:V1" json:"v1"`
}

MessageFinishDemotionReply_V1 structure represents DRS_MSG_FINISH_DEMOTIONREPLY RPC union arm.

It has following labels: 1

func (*MessageFinishDemotionReply_V1) MarshalNDR

func (*MessageFinishDemotionReply_V1) UnmarshalNDR

func (o *MessageFinishDemotionReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageFinishDemotionRequest

type MessageFinishDemotionRequest struct {
	// Types that are assignable to Value
	//
	// *MessageFinishDemotionRequest_V1
	Value is_MessageFinishDemotionRequest `json:"value"`
}

MessageFinishDemotionRequest structure represents DRS_MSG_FINISH_DEMOTIONREQ RPC union.

The DRS_MSG_FINISH_DEMOTIONREQ union defines the request messages sent to the IDL_DRSFinishDemotion method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageFinishDemotionRequest) GetValue

func (o *MessageFinishDemotionRequest) GetValue() any

func (*MessageFinishDemotionRequest) MarshalUnionNDR

func (o *MessageFinishDemotionRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageFinishDemotionRequest) NDRSwitchValue

func (o *MessageFinishDemotionRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageFinishDemotionRequest) UnmarshalUnionNDR

func (o *MessageFinishDemotionRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageFinishDemotionRequestV1

type MessageFinishDemotionRequestV1 struct {
	// dwOperations:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order.
	//
	//	+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 |  3  |  4  | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |     |     |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | U 2 | U 1 | D | C | R | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | F | X | X | X | X | X | X | X |
	//	+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// R (DS_DEMOTE_ROLLBACK_DEMOTE, 0x00000001): Undo the effects of IDL_DRSInitDemotion.
	// If present, any other flags present (except for DS_DEMOTE_OPT_FAIL_ON_UNKNOWN) are
	// ignored.
	//
	// C (DS_DEMOTE_COMMIT_DEMOTE, 0x00000002): Discontinue being a DC for the current DC
	// instance by stopping all AD LDS protocols.
	//
	// D (DS_DEMOTE_DELETE_CSMETA, 0x00000004): Delete the nTDSDSA object for this DC; see
	// RemoveADLDSServer (section 4.1.7.2.1).
	//
	// U1 (DS_DEMOTE_UNREGISTER_SCPS, 0x00000008): Delete any serviceConnectionPoint objects
	// for this DC from AD DS; see RemoveADLDSSCP (section 4.1.7.2.2).
	//
	// U2 (DS_DEMOTE_UNREGISTER_SPNS, 0x00000010): Delete any AD LDS SPNs from the object
	// (in the external AD DS domain) that corresponds to the security principal that the
	// AD LDS service is running as; see RemoveADLDSSPNs (section 4.1.7.2.3).
	Operations uint32 `idl:"name:dwOperations" json:"operations"`
	// uuidHelperDest: Unused. Must be NULL GUID and ignored.
	HelperDestination *dtyp.UUID `idl:"name:uuidHelperDest" json:"helper_destination"`
	// szScriptBase: The path name of the folder in which to store SPN unregistration scripts.
	// Required when DS_DEMOTE_UNREGISTER_SPNS is specified in dwOperations.
	ScriptBase string `idl:"name:szScriptBase;string" json:"script_base"`
}

MessageFinishDemotionRequestV1 structure represents DRS_MSG_FINISH_DEMOTIONREQ_V1 RPC structure.

The DRS_MSG_FINISH_DEMOTIONREQ_V1 structure defines the request message sent to the IDL_DRSFinishDemotion method.

func (*MessageFinishDemotionRequestV1) MarshalNDR

func (*MessageFinishDemotionRequestV1) UnmarshalNDR

type MessageFinishDemotionRequest_V1

type MessageFinishDemotionRequest_V1 struct {
	// V1:  Version 1 request. Currently, only one version is defined.
	V1 *MessageFinishDemotionRequestV1 `idl:"name:V1" json:"v1"`
}

MessageFinishDemotionRequest_V1 structure represents DRS_MSG_FINISH_DEMOTIONREQ RPC union arm.

It has following labels: 1

func (*MessageFinishDemotionRequest_V1) MarshalNDR

func (*MessageFinishDemotionRequest_V1) UnmarshalNDR

type MessageGetMemberships2Reply

type MessageGetMemberships2Reply struct {
	// Types that are assignable to Value
	//
	// *MessageGetMemberships2Reply_V1
	Value is_MessageGetMemberships2Reply `json:"value"`
}

MessageGetMemberships2Reply structure represents DRS_MSG_GETMEMBERSHIPS2_REPLY RPC union.

The DRS_MSG_GETMEMBERSHIPS2_REPLY union defines response messages received from the IDL_DRSGetMemberships2 method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageGetMemberships2Reply) GetValue

func (o *MessageGetMemberships2Reply) GetValue() any

func (*MessageGetMemberships2Reply) MarshalUnionNDR

func (o *MessageGetMemberships2Reply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageGetMemberships2Reply) NDRSwitchValue

func (o *MessageGetMemberships2Reply) NDRSwitchValue(sw uint32) uint32

func (*MessageGetMemberships2Reply) UnmarshalUnionNDR

func (o *MessageGetMemberships2Reply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageGetMemberships2ReplyV1

type MessageGetMemberships2ReplyV1 struct {
	// Count:  Count of items in the Replies array.
	Count uint32 `idl:"name:Count" json:"count"`
	// Replies:  Sequence of reverse membership replies, in the same order as the Requests
	// field of the request message.
	Replies []*MessageReverseMembershipReplyV1 `idl:"name:Replies;size_is:(Count)" json:"replies"`
}

MessageGetMemberships2ReplyV1 structure represents DRS_MSG_GETMEMBERSHIPS2_REPLY_V1 RPC structure.

The DRS_MSG_GETMEMBERSHIPS2_REPLY_V1 structure defines the response message received from the IDL_DRSGetMemberships2 method.

func (*MessageGetMemberships2ReplyV1) MarshalNDR

func (*MessageGetMemberships2ReplyV1) UnmarshalNDR

func (o *MessageGetMemberships2ReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetMemberships2Reply_V1

type MessageGetMemberships2Reply_V1 struct {
	// V1:  Version 1 response.
	V1 *MessageGetMemberships2ReplyV1 `idl:"name:V1" json:"v1"`
}

MessageGetMemberships2Reply_V1 structure represents DRS_MSG_GETMEMBERSHIPS2_REPLY RPC union arm.

It has following labels: 1

func (*MessageGetMemberships2Reply_V1) MarshalNDR

func (*MessageGetMemberships2Reply_V1) UnmarshalNDR

type MessageGetMemberships2Request

type MessageGetMemberships2Request struct {
	// Types that are assignable to Value
	//
	// *MessageGetMemberships2Request_V1
	Value is_MessageGetMemberships2Request `json:"value"`
}

MessageGetMemberships2Request structure represents DRS_MSG_GETMEMBERSHIPS2_REQ RPC union.

The DRS_MSG_GETMEMBERSHIPS2_REQ union defines request messages sent to the IDL_DRSGetMemberships2 method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageGetMemberships2Request) GetValue

func (o *MessageGetMemberships2Request) GetValue() any

func (*MessageGetMemberships2Request) MarshalUnionNDR

func (o *MessageGetMemberships2Request) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageGetMemberships2Request) NDRSwitchValue

func (o *MessageGetMemberships2Request) NDRSwitchValue(sw uint32) uint32

func (*MessageGetMemberships2Request) UnmarshalUnionNDR

func (o *MessageGetMemberships2Request) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageGetMemberships2RequestV1

type MessageGetMemberships2RequestV1 struct {
	// Count:  Count of items in the Requests array.
	Count uint32 `idl:"name:Count" json:"count"`
	// Requests:  Sequence of reverse membership requests.
	Requests []*MessageReverseMembershipRequestV1 `idl:"name:Requests;size_is:(Count)" json:"requests"`
}

MessageGetMemberships2RequestV1 structure represents DRS_MSG_GETMEMBERSHIPS2_REQ_V1 RPC structure.

The DRS_MSG_GETMEMBERSHIPS2_REQ_V1 structure defines the request message sent to the IDL_DRSGetMemberships2 method.

func (*MessageGetMemberships2RequestV1) MarshalNDR

func (*MessageGetMemberships2RequestV1) UnmarshalNDR

type MessageGetMemberships2Request_V1

type MessageGetMemberships2Request_V1 struct {
	// V1:  Version 1 request.
	V1 *MessageGetMemberships2RequestV1 `idl:"name:V1" json:"v1"`
}

MessageGetMemberships2Request_V1 structure represents DRS_MSG_GETMEMBERSHIPS2_REQ RPC union arm.

It has following labels: 1

func (*MessageGetMemberships2Request_V1) MarshalNDR

func (*MessageGetMemberships2Request_V1) UnmarshalNDR

type MessageGetNCChangesReply

type MessageGetNCChangesReply struct {
	// Types that are assignable to Value
	//
	// *MessageGetNCChangesReply_V1
	// *MessageGetNCChangesReply_V2
	// *MessageGetNCChangesReply_V6
	// *MessageGetNCChangesReply_V7
	// *MessageGetNCChangesReply_V9
	Value is_MessageGetNCChangesReply `json:"value"`
}

MessageGetNCChangesReply structure represents DRS_MSG_GETCHGREPLY RPC union.

The DRS_MSG_GETCHGREPLY union defines the response messages received from the IDL_DRSGetNCChanges method. There are no V3, V4, V5, or V8 messages.

func (*MessageGetNCChangesReply) GetValue

func (o *MessageGetNCChangesReply) GetValue() any

func (*MessageGetNCChangesReply) MarshalUnionNDR

func (o *MessageGetNCChangesReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageGetNCChangesReply) NDRSwitchValue

func (o *MessageGetNCChangesReply) NDRSwitchValue(sw uint32) uint32

func (*MessageGetNCChangesReply) UnmarshalUnionNDR

func (o *MessageGetNCChangesReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageGetNCChangesReplyV1

type MessageGetNCChangesReplyV1 struct {
	// uuidDsaObjSrc:  DSA GUID of the server DC.
	DSAObjectSource *dtyp.UUID `idl:"name:uuidDsaObjSrc" json:"dsa_object_source"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  The NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:unique" json:"nc"`
	// usnvecFrom:  Data used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// usnvecTo:  Data used to correlate calls to IDL_DRSGetNCChanges.
	To *Vector `idl:"name:usnvecTo" json:"to"`
	// pUpToDateVecSrcV1:  Stamp filter that describes updates the server has already applied.
	UpToDateVectorSourceV1 *UpToDateVectorV1Ext `idl:"name:pUpToDateVecSrcV1;pointer:unique" json:"up_to_date_vector_source_v1"`
	// PrefixTableSrc:  Table for translating ATTRTYP values in the response to OIDs.
	PrefixTableSource *SchemaPrefixTable `idl:"name:PrefixTableSrc" json:"prefix_table_source"`
	// ulExtendedRet:  0 or an EXOP_ERR code (section 4.1.10.2.21).
	ExtendedReturn uint32 `idl:"name:ulExtendedRet" json:"extended_return"`
	// cNumObjects:  Count of items in the pObjects linked list.
	ObjectsCount uint32 `idl:"name:cNumObjects" json:"objects_count"`
	// cNumBytes:  Size in bytes of items in or referenced by elements in the pObjects linked
	// list.
	BytesCount uint32 `idl:"name:cNumBytes" json:"bytes_count"`
	// pObjects:  Linked list of object updates that the client applies to its NC replica.
	Objects *ReplicationEntityInfoList `idl:"name:pObjects;pointer:unique" json:"objects"`
	// fMoreData:  False if and only if this is the last response in a replication cycle.
	MoreData bool `idl:"name:fMoreData" json:"more_data"`
}

MessageGetNCChangesReplyV1 structure represents DRS_MSG_GETCHGREPLY_V1 RPC structure.

The DRS_MSG_GETCHGREPLY_V1 structure defines the response message received from the IDL_DRSGetNCChanges method.

func (*MessageGetNCChangesReplyV1) MarshalNDR

func (o *MessageGetNCChangesReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageGetNCChangesReplyV1) UnmarshalNDR

func (o *MessageGetNCChangesReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReplyV2

type MessageGetNCChangesReplyV2 struct {
	// CompressedV1:  Compressed DRS_MSG_GETCHGREPLY_V1 response.
	CompressedV1 *CompressedBlob `idl:"name:CompressedV1" json:"compressed_v1"`
}

MessageGetNCChangesReplyV2 structure represents DRS_MSG_GETCHGREPLY_V2 RPC structure.

The DRS_MSG_GETCHGREPLY_V2 structure defines the compressed DRS_MSG_GETCHGREPLY_V1 message received from the IDL_DRSGetNCChanges method.

func (*MessageGetNCChangesReplyV2) MarshalNDR

func (o *MessageGetNCChangesReplyV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageGetNCChangesReplyV2) UnmarshalNDR

func (o *MessageGetNCChangesReplyV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReplyV6

type MessageGetNCChangesReplyV6 struct {
	// uuidDsaObjSrc:  DSA GUID of the server DC.
	DSAObjectSource *dtyp.UUID `idl:"name:uuidDsaObjSrc" json:"dsa_object_source"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  The NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:unique" json:"nc"`
	// usnvecFrom:  Data used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// usnvecTo:  Data used to correlate calls to IDL_DRSGetNCChanges.
	To *Vector `idl:"name:usnvecTo" json:"to"`
	// pUpToDateVecSrc:  Stamp filter that describes updates the server has already applied.
	UpToDateVectorSource *UpToDateVectorV2Ext `idl:"name:pUpToDateVecSrc;pointer:unique" json:"up_to_date_vector_source"`
	// PrefixTableSrc:  Table for translating ATTRTYP values in the response to OIDs.
	PrefixTableSource *SchemaPrefixTable `idl:"name:PrefixTableSrc" json:"prefix_table_source"`
	// ulExtendedRet:  0 or an extended operation error code (section 4.1.10.2.21).
	ExtendedReturn uint32 `idl:"name:ulExtendedRet" json:"extended_return"`
	// cNumObjects:  Count of items in the pObjects linked list.
	ObjectsCount uint32 `idl:"name:cNumObjects" json:"objects_count"`
	// cNumBytes:  Size in bytes of items in or referenced by elements in the pObjects linked
	// list.
	BytesCount uint32 `idl:"name:cNumBytes" json:"bytes_count"`
	// pObjects:  Linked list of object updates that the client applies to its NC replica.
	Objects *ReplicationEntityInfoList `idl:"name:pObjects;pointer:unique" json:"objects"`
	// fMoreData:  False if and only if this is the last response in a replication cycle.
	MoreData bool `idl:"name:fMoreData" json:"more_data"`
	// cNumNcSizeObjects:  Estimated number of objects in the server's NC replica.
	NCSizeObjectsCount uint32 `idl:"name:cNumNcSizeObjects" json:"nc_size_objects_count"`
	// cNumNcSizeValues:  Estimated number of link values in the server's NC replica.
	NCSizeValuesCount uint32 `idl:"name:cNumNcSizeValues" json:"nc_size_values_count"`
	// cNumValues:  Count of items in the rgValues array.
	ValuesCount uint32 `idl:"name:cNumValues" json:"values_count"`
	// rgValues:  Link value updates for the client to apply to its NC replica.
	Values []*ReplicationValueInfoV1 `idl:"name:rgValues;size_is:(cNumValues)" json:"values"`
	// dwDRSError:  0 if successful, otherwise a Windows error code.
	DRSError uint32 `idl:"name:dwDRSError" json:"drs_error"`
}

MessageGetNCChangesReplyV6 structure represents DRS_MSG_GETCHGREPLY_V6 RPC structure.

The DRS_MSG_GETCHGREPLY_V6 structure defines the response message received from the IDL_DRSGetNCChanges method. This message version is a superset of DRS_MSG_GETCHGREPLY_V1.

func (*MessageGetNCChangesReplyV6) MarshalNDR

func (o *MessageGetNCChangesReplyV6) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageGetNCChangesReplyV6) UnmarshalNDR

func (o *MessageGetNCChangesReplyV6) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReplyV7

type MessageGetNCChangesReplyV7 struct {
	// dwCompressedVersion:  Version of the response in CompressedAny; MUST be set to 6
	// or 9.
	CompressedVersion uint32 `idl:"name:dwCompressedVersion" json:"compressed_version"`
	// CompressionAlg:  Algorithm used to compress the response.
	CompressionAlgorithm CompAlgorithmType `idl:"name:CompressionAlg" json:"compression_algorithm"`
	// CompressedAny:  Compressed DRS_MSG_GETCHGREPLY_V6 or DRS_MSG_GETCHGREPLY_V9 response.
	CompressedAny *CompressedBlob `idl:"name:CompressedAny" json:"compressed_any"`
}

MessageGetNCChangesReplyV7 structure represents DRS_MSG_GETCHGREPLY_V7 RPC structure.

The DRS_MSG_GETCHGREPLY_V7 structure defines a compressed DRS_MSG_GETCHGREPLY_V6 or DRS_MSG_GETCHGREPLY_V9 message received from the IDL_DRSGetNCChanges method.

func (*MessageGetNCChangesReplyV7) MarshalNDR

func (o *MessageGetNCChangesReplyV7) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageGetNCChangesReplyV7) UnmarshalNDR

func (o *MessageGetNCChangesReplyV7) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReplyV9

type MessageGetNCChangesReplyV9 struct {
	// uuidDsaObjSrc:  DSA GUID of the server DC.
	DSAObjectSource *dtyp.UUID `idl:"name:uuidDsaObjSrc" json:"dsa_object_source"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  The NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:unique" json:"nc"`
	// usnvecFrom:  Data used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// usnvecTo:  Data used to correlate calls to IDL_DRSGetNCChanges.
	To *Vector `idl:"name:usnvecTo" json:"to"`
	// pUpToDateVecSrc:  Stamp filter that describes updates the server has already applied.
	UpToDateVectorSource *UpToDateVectorV2Ext `idl:"name:pUpToDateVecSrc;pointer:unique" json:"up_to_date_vector_source"`
	// PrefixTableSrc:  Table for translating ATTRTYP values in the response to OIDs.
	PrefixTableSource *SchemaPrefixTable `idl:"name:PrefixTableSrc" json:"prefix_table_source"`
	// ulExtendedRet:  0 or an extended operation error code (section 4.1.10.2.21).
	ExtendedReturn uint32 `idl:"name:ulExtendedRet" json:"extended_return"`
	// cNumObjects:  Count of items in the pObjects linked list.
	ObjectsCount uint32 `idl:"name:cNumObjects" json:"objects_count"`
	// cNumBytes:  Size in bytes of items in or referenced by elements in the pObjects linked
	// list.
	BytesCount uint32 `idl:"name:cNumBytes" json:"bytes_count"`
	// pObjects:  Linked list of object updates that the client applies to its NC replica.
	Objects *ReplicationEntityInfoList `idl:"name:pObjects;pointer:unique" json:"objects"`
	// fMoreData:  False if and only if this is the last response in a replication cycle.
	MoreData bool `idl:"name:fMoreData" json:"more_data"`
	// cNumNcSizeObjects:  Estimated number of objects in the server's NC replica.
	NCSizeObjectsCount uint32 `idl:"name:cNumNcSizeObjects" json:"nc_size_objects_count"`
	// cNumNcSizeValues:  Estimated number of link values in the server's NC replica.
	NCSizeValuesCount uint32 `idl:"name:cNumNcSizeValues" json:"nc_size_values_count"`
	// cNumValues:  Count of items in the rgValues array.
	ValuesCount uint32 `idl:"name:cNumValues" json:"values_count"`
	// rgValues:  Link value updates for the client to apply to its NC replica.
	Values []*ReplicationValueInfoV3 `idl:"name:rgValues;size_is:(cNumValues)" json:"values"`
	// dwDRSError:  0 if successful, otherwise a Windows error code.
	DRSError uint32 `idl:"name:dwDRSError" json:"drs_error"`
}

MessageGetNCChangesReplyV9 structure represents DRS_MSG_GETCHGREPLY_V9 RPC structure.

The DRS_MSG_GETCHGREPLY_V9 structure defines the response message received from the IDL_DRSGetNCChanges method. This message version contains all the same elements as a DRS_MSG_GETCHGREPLY_V6 structure except that the data type of rgValues is changed from REPLVALINF_V1* to REPLVALINF_V3*. The data in a REPLVALINF_V3 structure is a superset of the data in a REPLVALINF_V1 structure. Therefore, the data in the DRS_MSG_GETCHGREPLY_V9 structure is a superset of the data in the DRS_MSG_GETCHGREPLY_V6 structure.

func (*MessageGetNCChangesReplyV9) MarshalNDR

func (o *MessageGetNCChangesReplyV9) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageGetNCChangesReplyV9) UnmarshalNDR

func (o *MessageGetNCChangesReplyV9) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReply_V1

type MessageGetNCChangesReply_V1 struct {
	// V1:  Version 1 response (Windows 2000 operating system).
	V1 *MessageGetNCChangesReplyV1 `idl:"name:V1" json:"v1"`
}

MessageGetNCChangesReply_V1 structure represents DRS_MSG_GETCHGREPLY RPC union arm.

It has following labels: 1

func (*MessageGetNCChangesReply_V1) MarshalNDR

func (*MessageGetNCChangesReply_V1) UnmarshalNDR

func (o *MessageGetNCChangesReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReply_V2

type MessageGetNCChangesReply_V2 struct {
	// V2:  Version 2 response (compressed V1).
	V2 *MessageGetNCChangesReplyV2 `idl:"name:V2" json:"v2"`
}

MessageGetNCChangesReply_V2 structure represents DRS_MSG_GETCHGREPLY RPC union arm.

It has following labels: 2

func (*MessageGetNCChangesReply_V2) MarshalNDR

func (*MessageGetNCChangesReply_V2) UnmarshalNDR

func (o *MessageGetNCChangesReply_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReply_V6

type MessageGetNCChangesReply_V6 struct {
	// V6:  Version 6 response (Windows Server 2003 operating system).
	V6 *MessageGetNCChangesReplyV6 `idl:"name:V6" json:"v6"`
}

MessageGetNCChangesReply_V6 structure represents DRS_MSG_GETCHGREPLY RPC union arm.

It has following labels: 6

func (*MessageGetNCChangesReply_V6) MarshalNDR

func (*MessageGetNCChangesReply_V6) UnmarshalNDR

func (o *MessageGetNCChangesReply_V6) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReply_V7

type MessageGetNCChangesReply_V7 struct {
	// V7:  Version 7 response (compressed V6 or V9).
	V7 *MessageGetNCChangesReplyV7 `idl:"name:V7" json:"v7"`
}

MessageGetNCChangesReply_V7 structure represents DRS_MSG_GETCHGREPLY RPC union arm.

It has following labels: 7

func (*MessageGetNCChangesReply_V7) MarshalNDR

func (*MessageGetNCChangesReply_V7) UnmarshalNDR

func (o *MessageGetNCChangesReply_V7) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesReply_V9

type MessageGetNCChangesReply_V9 struct {
	// V9:  Version 9 response (V6 with additional link-value metadata).
	V9 *MessageGetNCChangesReplyV9 `idl:"name:V9" json:"v9"`
}

MessageGetNCChangesReply_V9 structure represents DRS_MSG_GETCHGREPLY RPC union arm.

It has following labels: 9

func (*MessageGetNCChangesReply_V9) MarshalNDR

func (*MessageGetNCChangesReply_V9) UnmarshalNDR

func (o *MessageGetNCChangesReply_V9) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequest

type MessageGetNCChangesRequest struct {
	// Types that are assignable to Value
	//
	// *MessageGetNCChangesRequest_V4
	// *MessageGetNCChangesRequest_V5
	// *MessageGetNCChangesRequest_V7
	// *MessageGetNCChangesRequest_V8
	// *MessageGetNCChangesRequest_V10
	// *MessageGetNCChangesRequest_V11
	Value is_MessageGetNCChangesRequest `json:"value"`
}

MessageGetNCChangesRequest structure represents DRS_MSG_GETCHGREQ RPC union.

The DRS_MSG_GETCHGREQ union defines request messages that are sent to the IDL_DRSGetNCChanges method. There are no V1, V2, V3, V6, or V9 messages.

func (*MessageGetNCChangesRequest) GetValue

func (o *MessageGetNCChangesRequest) GetValue() any

func (*MessageGetNCChangesRequest) MarshalUnionNDR

func (o *MessageGetNCChangesRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageGetNCChangesRequest) NDRSwitchValue

func (o *MessageGetNCChangesRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageGetNCChangesRequest) UnmarshalUnionNDR

func (o *MessageGetNCChangesRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageGetNCChangesRequestV10

type MessageGetNCChangesRequestV10 struct {
	// uuidDsaObjDest:  DSA GUID of the client DC.
	DSAObjectDestination *dtyp.UUID `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// usnvecFrom:  Data used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// pUpToDateVecDest:  Stamp filter describing updates the client has already applied.
	UpToDateVectorDestination *UpToDateVectorV1Ext `idl:"name:pUpToDateVecDest;pointer:unique" json:"up_to_date_vector_destination"`
	// ulFlags:  A DRS_OPTIONS bit field.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
	// cMaxObjects:  Approximate cap on the number of objects to include in the reply.
	MaxObjectsCount uint32 `idl:"name:cMaxObjects" json:"max_objects_count"`
	// cMaxBytes:  Approximate cap on the number of bytes to include in the reply.
	MaxBytesCount uint32 `idl:"name:cMaxBytes" json:"max_bytes_count"`
	// ulExtendedOp:  0 or an extended operation request code (section 4.1.10.2.22).
	ExtendedOperation uint32 `idl:"name:ulExtendedOp" json:"extended_operation"`
	// liFsmoInfo:  0 or a value specific to the requested extended operation.
	FSMOInfo *dtyp.UlargeInteger `idl:"name:liFsmoInfo" json:"fsmo_info"`
	// pPartialAttrSet:  A set of one or more attributes whose values are to be replicated
	// to the client's partial replica, or null if the client has a full replica.
	PartialAttributeSet *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSet;pointer:unique" json:"partial_attribute_set"`
	// pPartialAttrSetEx:  A set of one or more attributes whose values are to be added
	// to the client's existing partial replica, or null.
	PartialAttributeSetEx *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSetEx;pointer:unique" json:"partial_attribute_set_ex"`
	// PrefixTableDest:  Prefix table with which to convert the ATTRTYP values in pPartialAttrSet
	// and pPartialAttrSetEx to OIDs.
	PrefixTableDestination *SchemaPrefixTable `idl:"name:PrefixTableDest" json:"prefix_table_destination"`
	// ulMoreFlags:  A DRS_MORE_GETCHGREQ_OPTIONS bit field.
	MoreFlags uint32 `idl:"name:ulMoreFlags" json:"more_flags"`
}

MessageGetNCChangesRequestV10 structure represents DRS_MSG_GETCHGREQ_V10 RPC structure.

The DRS_MSG_GETCHGREQ_V10 structure defines the request message sent to the IDL_DRSGetNCChanges method. This message version is a superset of DRS_MSG_GETCHGREQ_V8.

func (*MessageGetNCChangesRequestV10) MarshalNDR

func (*MessageGetNCChangesRequestV10) UnmarshalNDR

func (o *MessageGetNCChangesRequestV10) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequestV11

type MessageGetNCChangesRequestV11 struct {
	DSAObjectDestination      *dtyp.UUID                   `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	InvocationIDSource        *dtyp.UUID                   `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	NC                        *DSName                      `idl:"name:pNC;pointer:ref" json:"nc"`
	From                      *Vector                      `idl:"name:usnvecFrom" json:"from"`
	UpToDateVectorDestination *UpToDateVectorV1Ext         `idl:"name:pUpToDateVecDest;pointer:unique" json:"up_to_date_vector_destination"`
	Flags                     uint32                       `idl:"name:ulFlags" json:"flags"`
	MaxObjectsCount           uint32                       `idl:"name:cMaxObjects" json:"max_objects_count"`
	MaxBytesCount             uint32                       `idl:"name:cMaxBytes" json:"max_bytes_count"`
	ExtendedOperation         uint32                       `idl:"name:ulExtendedOp" json:"extended_operation"`
	FSMOInfo                  *dtyp.UlargeInteger          `idl:"name:liFsmoInfo" json:"fsmo_info"`
	PartialAttributeSet       *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSet;pointer:unique" json:"partial_attribute_set"`
	PartialAttributeSetEx     *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSetEx;pointer:unique" json:"partial_attribute_set_ex"`
	PrefixTableDestination    *SchemaPrefixTable           `idl:"name:PrefixTableDest" json:"prefix_table_destination"`
	MoreFlags                 uint32                       `idl:"name:ulMoreFlags" json:"more_flags"`
	CorrelationID             *dtyp.GUID                   `idl:"name:correlationID" json:"correlation_id"`
	ReservedBuffer            *VarSizeBufferWithVersion    `idl:"name:pReservedBuffer;pointer:unique" json:"reserved_buffer"`
}

MessageGetNCChangesRequestV11 structure represents DRS_MSG_GETCHGREQ_V11 RPC structure.

func (*MessageGetNCChangesRequestV11) MarshalNDR

func (*MessageGetNCChangesRequestV11) UnmarshalNDR

func (o *MessageGetNCChangesRequestV11) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequestV3

type MessageGetNCChangesRequestV3 struct {
	// uuidDsaObjDest:  DSA GUID of the client DC.
	DSAObjectDestination *dtyp.UUID `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// usnvecFrom:  Data that is used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// pUpToDateVecDestV1:  Stamp filter describing updates that the client has already
	// applied.
	UpToDateVectorDestinationV1 *UpToDateVectorV1Ext `idl:"name:pUpToDateVecDestV1;pointer:unique" json:"up_to_date_vector_destination_v1"`
	// pPartialAttrVecDestV1:  A set of one or more attributes whose values are to be replicated
	// to the client's partial replica.
	PartialAttributeVectorDestinationV1 *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrVecDestV1;pointer:unique" json:"partial_attribute_vector_destination_v1"`
	// PrefixTableDest:  Prefix table with which to convert the ATTRTYP values in pPartialAttrVecDestV1
	// to OIDs.
	PrefixTableDestination *SchemaPrefixTable `idl:"name:PrefixTableDest" json:"prefix_table_destination"`
	// ulFlags:  A DRS_OPTIONS bit field.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
	// cMaxObjects:  An approximate cap on the number of objects to include in the reply.
	MaxObjectsCount uint32 `idl:"name:cMaxObjects" json:"max_objects_count"`
	// cMaxBytes:  An approximate cap on the number of bytes to include in the reply.
	MaxBytesCount uint32 `idl:"name:cMaxBytes" json:"max_bytes_count"`
	// ulExtendedOp:  0 or an EXOP_REQ code (section 4.1.10.2.22).
	ExtendedOperation uint32 `idl:"name:ulExtendedOp" json:"extended_operation"`
}

MessageGetNCChangesRequestV3 structure represents DRS_MSG_GETCHGREQ_V3 RPC structure.

The DRS_MSG_GETCHGREQ_V3 structure defines a portion of the request message that is sent to the IDL_DRSGetNCChanges method as part of SMTP replication ([MS-SRPL]). This is not a complete request message; it is embedded in DRS_MSG_GETCHGREQ_V4 and DRS_MSG_GETCHGREQ_V7.<26>

func (*MessageGetNCChangesRequestV3) MarshalNDR

func (*MessageGetNCChangesRequestV3) UnmarshalNDR

func (o *MessageGetNCChangesRequestV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequestV4

type MessageGetNCChangesRequestV4 struct {
	// uuidTransportObj:  The objectGUID of the interSiteTransport object that identifies
	// the transport by which to send the reply.
	TransportObject *dtyp.UUID `idl:"name:uuidTransportObj" json:"transport_object"`
	// pmtxReturnAddress:  The transport-specific address to which to send the reply.
	ReturnAddress *MTXAddr `idl:"name:pmtxReturnAddress;pointer:ref" json:"return_address"`
	// V3:  Version 3 request.
	V3 *MessageGetNCChangesRequestV3 `idl:"name:V3" json:"v3"`
}

MessageGetNCChangesRequestV4 structure represents DRS_MSG_GETCHGREQ_V4 RPC structure.

The DRS_MSG_GETCHGREQ_V4 structure defines the request message sent to the IDL_DRSGetNCChanges method. This message version is a superset of DRS_MSG_GETCHGREQ_V3.<27>

func (*MessageGetNCChangesRequestV4) MarshalNDR

func (*MessageGetNCChangesRequestV4) UnmarshalNDR

func (o *MessageGetNCChangesRequestV4) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequestV5

type MessageGetNCChangesRequestV5 struct {
	// uuidDsaObjDest:  DSA GUID of the client DC.
	DSAObjectDestination *dtyp.UUID `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// usnvecFrom:  Data used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// pUpToDateVecDestV1:  Stamp filter that describes updates the client has already applied.
	UpToDateVectorDestinationV1 *UpToDateVectorV1Ext `idl:"name:pUpToDateVecDestV1;pointer:unique" json:"up_to_date_vector_destination_v1"`
	// ulFlags:  DRS_OPTIONS bit field.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
	// cMaxObjects:  Approximate cap on the number of objects to include in the reply.
	MaxObjectsCount uint32 `idl:"name:cMaxObjects" json:"max_objects_count"`
	// cMaxBytes:  Approximate cap on the number of bytes to include in the reply.
	MaxBytesCount uint32 `idl:"name:cMaxBytes" json:"max_bytes_count"`
	// ulExtendedOp:  0 or an extended operation request code (section 4.1.10.2.22).
	ExtendedOperation uint32 `idl:"name:ulExtendedOp" json:"extended_operation"`
	// liFsmoInfo:  0 or a value specific to the requested extended operation.
	FSMOInfo *dtyp.UlargeInteger `idl:"name:liFsmoInfo" json:"fsmo_info"`
}

MessageGetNCChangesRequestV5 structure represents DRS_MSG_GETCHGREQ_V5 RPC structure.

The DRS_MSG_GETCHGREQ_V5 structure defines the request message sent to the IDL_DRSGetNCChanges method.

func (*MessageGetNCChangesRequestV5) MarshalNDR

func (*MessageGetNCChangesRequestV5) UnmarshalNDR

func (o *MessageGetNCChangesRequestV5) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequestV7

type MessageGetNCChangesRequestV7 struct {
	// uuidTransportObj:  The objectGUID of the interSiteTransport object that identifies
	// the transport by which to send the reply.
	TransportObject *dtyp.UUID `idl:"name:uuidTransportObj" json:"transport_object"`
	// pmtxReturnAddress:  Transport-specific address to which to send the reply.
	ReturnAddress *MTXAddr `idl:"name:pmtxReturnAddress;pointer:ref" json:"return_address"`
	// V3:  Version 3 request.
	V3 *MessageGetNCChangesRequestV3 `idl:"name:V3" json:"v3"`
	// pPartialAttrSet:  A set of one or more attributes whose values are to be replicated
	// to the client's partial replica, or null if the client has a full replica.
	PartialAttributeSet *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSet;pointer:unique" json:"partial_attribute_set"`
	// pPartialAttrSetEx:  A set of one or more attributes whose values are to be added
	// to the client's existing partial replica, or null.
	PartialAttributeSetEx *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSetEx;pointer:unique" json:"partial_attribute_set_ex"`
	// PrefixTableDest:  Prefix table with which to convert the ATTRTYP values in pPartialAttrSet
	// and pPartialAttrSetEx to OIDs.
	PrefixTableDestination *SchemaPrefixTable `idl:"name:PrefixTableDest" json:"prefix_table_destination"`
}

MessageGetNCChangesRequestV7 structure represents DRS_MSG_GETCHGREQ_V7 RPC structure.

The DRS_MSG_GETCHGREQ_V7 structure defines the request message sent to the IDL_DRSGetNCChanges method. This message version is a superset of DRS_MSG_GETCHGREQ_V4.<28>

func (*MessageGetNCChangesRequestV7) MarshalNDR

func (*MessageGetNCChangesRequestV7) UnmarshalNDR

func (o *MessageGetNCChangesRequestV7) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequestV8

type MessageGetNCChangesRequestV8 struct {
	// uuidDsaObjDest:  DSA GUID of the client DC.
	DSAObjectDestination *dtyp.UUID `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	// uuidInvocIdSrc:  Invocation ID of the server DC.
	InvocationIDSource *dtyp.UUID `idl:"name:uuidInvocIdSrc" json:"invocation_id_source"`
	// pNC:  NC root of the replica to replicate or the FSMO role object for an extended
	// operation.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// usnvecFrom:  Data used to correlate calls to IDL_DRSGetNCChanges.
	From *Vector `idl:"name:usnvecFrom" json:"from"`
	// pUpToDateVecDest:  Stamp filter describing updates the client has already applied.
	UpToDateVectorDestination *UpToDateVectorV1Ext `idl:"name:pUpToDateVecDest;pointer:unique" json:"up_to_date_vector_destination"`
	// ulFlags:  A DRS_OPTIONS bit field.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
	// cMaxObjects:  Approximate cap on the number of objects to include in the reply.
	MaxObjectsCount uint32 `idl:"name:cMaxObjects" json:"max_objects_count"`
	// cMaxBytes:  Approximate cap on the number of bytes to include in the reply.
	MaxBytesCount uint32 `idl:"name:cMaxBytes" json:"max_bytes_count"`
	// ulExtendedOp:  0 or an extended operation request code (section 4.1.10.2.22).
	ExtendedOperation uint32 `idl:"name:ulExtendedOp" json:"extended_operation"`
	// liFsmoInfo:  0 or a value specific to the requested extended operation.
	FSMOInfo *dtyp.UlargeInteger `idl:"name:liFsmoInfo" json:"fsmo_info"`
	// pPartialAttrSet:  A set of one or more attributes whose values are to be replicated
	// to the client's partial replica, or null if the client has a full replica.
	PartialAttributeSet *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSet;pointer:unique" json:"partial_attribute_set"`
	// pPartialAttrSetEx:  A set of one or more attributes whose values are to be added
	// to the client's existing partial replica, or null.
	PartialAttributeSetEx *PartialAttributeVectorV1Ext `idl:"name:pPartialAttrSetEx;pointer:unique" json:"partial_attribute_set_ex"`
	// PrefixTableDest:  Prefix table with which to convert the ATTRTYP values in pPartialAttrSet
	// and pPartialAttrSetEx to OIDs.
	PrefixTableDestination *SchemaPrefixTable `idl:"name:PrefixTableDest" json:"prefix_table_destination"`
}

MessageGetNCChangesRequestV8 structure represents DRS_MSG_GETCHGREQ_V8 RPC structure.

The DRS_MSG_GETCHGREQ_V8 structure defines the request message sent to the IDL_DRSGetNCChanges method. This message version is a superset of DRS_MSG_GETCHGREQ_V5.

func (*MessageGetNCChangesRequestV8) MarshalNDR

func (*MessageGetNCChangesRequestV8) UnmarshalNDR

func (o *MessageGetNCChangesRequestV8) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequest_V10

type MessageGetNCChangesRequest_V10 struct {
	// V10:  Version 10 request (Windows Server 2008 R2 operating system RPC replication).
	V10 *MessageGetNCChangesRequestV10 `idl:"name:V10" json:"v10"`
}

MessageGetNCChangesRequest_V10 structure represents DRS_MSG_GETCHGREQ RPC union arm.

It has following labels: 10

func (*MessageGetNCChangesRequest_V10) MarshalNDR

func (*MessageGetNCChangesRequest_V10) UnmarshalNDR

type MessageGetNCChangesRequest_V11

type MessageGetNCChangesRequest_V11 struct {
	// V11:  Version 11 request (Windows Server v1803 operating system RPC replication).
	V11 *MessageGetNCChangesRequestV11 `idl:"name:V11" json:"v11"`
}

MessageGetNCChangesRequest_V11 structure represents DRS_MSG_GETCHGREQ RPC union arm.

It has following labels: 11

func (*MessageGetNCChangesRequest_V11) MarshalNDR

func (*MessageGetNCChangesRequest_V11) UnmarshalNDR

type MessageGetNCChangesRequest_V4

type MessageGetNCChangesRequest_V4 struct {
	// V4:  Version 4 request (Windows 2000 operating system SMTP replication [MS-SRPL]).
	V4 *MessageGetNCChangesRequestV4 `idl:"name:V4" json:"v4"`
}

MessageGetNCChangesRequest_V4 structure represents DRS_MSG_GETCHGREQ RPC union arm.

It has following labels: 4

func (*MessageGetNCChangesRequest_V4) MarshalNDR

func (*MessageGetNCChangesRequest_V4) UnmarshalNDR

func (o *MessageGetNCChangesRequest_V4) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequest_V5

type MessageGetNCChangesRequest_V5 struct {
	// V5:  Version 5 request (Windows 2000 RPC replication).
	V5 *MessageGetNCChangesRequestV5 `idl:"name:V5" json:"v5"`
}

MessageGetNCChangesRequest_V5 structure represents DRS_MSG_GETCHGREQ RPC union arm.

It has following labels: 5

func (*MessageGetNCChangesRequest_V5) MarshalNDR

func (*MessageGetNCChangesRequest_V5) UnmarshalNDR

func (o *MessageGetNCChangesRequest_V5) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequest_V7

type MessageGetNCChangesRequest_V7 struct {
	// V7:  Version 7 request (Windows Server 2003 operating system SMTP replication [MS-SRPL]).
	V7 *MessageGetNCChangesRequestV7 `idl:"name:V7" json:"v7"`
}

MessageGetNCChangesRequest_V7 structure represents DRS_MSG_GETCHGREQ RPC union arm.

It has following labels: 7

func (*MessageGetNCChangesRequest_V7) MarshalNDR

func (*MessageGetNCChangesRequest_V7) UnmarshalNDR

func (o *MessageGetNCChangesRequest_V7) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetNCChangesRequest_V8

type MessageGetNCChangesRequest_V8 struct {
	// V8:  Version 8 request (Windows Server 2003 RPC replication).
	V8 *MessageGetNCChangesRequestV8 `idl:"name:V8" json:"v8"`
}

MessageGetNCChangesRequest_V8 structure represents DRS_MSG_GETCHGREQ RPC union arm.

It has following labels: 8

func (*MessageGetNCChangesRequest_V8) MarshalNDR

func (*MessageGetNCChangesRequest_V8) UnmarshalNDR

func (o *MessageGetNCChangesRequest_V8) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageGetReplicationInfoReply

type MessageGetReplicationInfoReply struct {
	// Types that are assignable to Value
	//
	// *MessageGetReplicationInfoReply_Neighbors
	// *MessageGetReplicationInfoReply_Cursors
	// *MessageGetReplicationInfoReply_ObjectMetadata
	// *MessageGetReplicationInfoReply_ConnectFailures
	// *MessageGetReplicationInfoReply_LinkFailures
	// *MessageGetReplicationInfoReply_PendingOperations
	// *MessageGetReplicationInfoReply_AttributeValueMetadata
	// *MessageGetReplicationInfoReply_Cursors2
	// *MessageGetReplicationInfoReply_Cursors3
	// *MessageGetReplicationInfoReply_ObjectMetaData2
	// *MessageGetReplicationInfoReply_AttributeValueMetaData2
	// *MessageGetReplicationInfoReply_ServerOutgoingCalls
	// *MessageGetReplicationInfoReply_UpToDateVector
	// *MessageGetReplicationInfoReply_ClientContexts
	// *MessageGetReplicationInfoReply_RepsTo
	Value is_MessageGetReplicationInfoReply `json:"value"`
}

MessageGetReplicationInfoReply structure represents DRS_MSG_GETREPLINFO_REPLY RPC union.

The DRS_MSG_GETREPLINFO_REPLY union defines response messages received from the IDL_DRSGetReplInfo method.

func (*MessageGetReplicationInfoReply) GetValue

func (o *MessageGetReplicationInfoReply) GetValue() any

func (*MessageGetReplicationInfoReply) MarshalUnionNDR

func (o *MessageGetReplicationInfoReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageGetReplicationInfoReply) NDRSwitchValue

func (o *MessageGetReplicationInfoReply) NDRSwitchValue(sw uint32) uint32

func (*MessageGetReplicationInfoReply) UnmarshalUnionNDR

func (o *MessageGetReplicationInfoReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageGetReplicationInfoReply_AttributeValueMetaData2

type MessageGetReplicationInfoReply_AttributeValueMetaData2 struct {
	// pAttrValueMetaData2:  Link value stamps.
	AttributeValueMetaData2 *DSReplicationAttributeValueMetadata2 `idl:"name:pAttrValueMetaData2" json:"attribute_value_meta_data2"`
}

MessageGetReplicationInfoReply_AttributeValueMetaData2 structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 10

func (*MessageGetReplicationInfoReply_AttributeValueMetaData2) MarshalNDR

func (*MessageGetReplicationInfoReply_AttributeValueMetaData2) UnmarshalNDR

type MessageGetReplicationInfoReply_AttributeValueMetadata

type MessageGetReplicationInfoReply_AttributeValueMetadata struct {
	// pAttrValueMetaData:  Link value stamps.
	AttributeValueMetadata *DSReplicationAttributeValueMetadata `idl:"name:pAttrValueMetaData" json:"attribute_value_metadata"`
}

MessageGetReplicationInfoReply_AttributeValueMetadata structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 6

func (*MessageGetReplicationInfoReply_AttributeValueMetadata) MarshalNDR

func (*MessageGetReplicationInfoReply_AttributeValueMetadata) UnmarshalNDR

type MessageGetReplicationInfoReply_ClientContexts

type MessageGetReplicationInfoReply_ClientContexts struct {
	// pClientContexts:  Active RPC client connections.
	ClientContexts *DSReplicationClientContexts `idl:"name:pClientContexts" json:"client_contexts"`
}

MessageGetReplicationInfoReply_ClientContexts structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 4294967292

func (*MessageGetReplicationInfoReply_ClientContexts) MarshalNDR

func (*MessageGetReplicationInfoReply_ClientContexts) UnmarshalNDR

type MessageGetReplicationInfoReply_ConnectFailures

type MessageGetReplicationInfoReply_ConnectFailures struct {
	// pConnectFailures:  Connection failure data.
	ConnectFailures *DSReplicationKCCDSAFailures `idl:"name:pConnectFailures" json:"connect_failures"`
}

MessageGetReplicationInfoReply_ConnectFailures structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 3

func (*MessageGetReplicationInfoReply_ConnectFailures) MarshalNDR

func (*MessageGetReplicationInfoReply_ConnectFailures) UnmarshalNDR

type MessageGetReplicationInfoReply_Cursors

type MessageGetReplicationInfoReply_Cursors struct {
	// pCursors:  Cursors for an NC replica.
	Cursors *DSReplicationCursors `idl:"name:pCursors" json:"cursors"`
}

MessageGetReplicationInfoReply_Cursors structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 1

func (*MessageGetReplicationInfoReply_Cursors) MarshalNDR

func (*MessageGetReplicationInfoReply_Cursors) UnmarshalNDR

type MessageGetReplicationInfoReply_Cursors2

type MessageGetReplicationInfoReply_Cursors2 struct {
	// pCursors2:  Cursors for an NC replica.
	Cursors2 *DSReplicationCursors2 `idl:"name:pCursors2" json:"cursors2"`
}

MessageGetReplicationInfoReply_Cursors2 structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 7

func (*MessageGetReplicationInfoReply_Cursors2) MarshalNDR

func (*MessageGetReplicationInfoReply_Cursors2) UnmarshalNDR

type MessageGetReplicationInfoReply_Cursors3

type MessageGetReplicationInfoReply_Cursors3 struct {
	// pCursors3:  Cursors for an NC replica.
	Cursors3 *DSReplicationCursorsV3 `idl:"name:pCursors3" json:"cursors3"`
}

MessageGetReplicationInfoReply_Cursors3 structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 8

func (*MessageGetReplicationInfoReply_Cursors3) MarshalNDR

func (*MessageGetReplicationInfoReply_Cursors3) UnmarshalNDR

type MessageGetReplicationInfoReply_LinkFailures

type MessageGetReplicationInfoReply_LinkFailures struct {
	// pLinkFailures:  Link failure data.
	LinkFailures *DSReplicationKCCDSAFailures `idl:"name:pLinkFailures" json:"link_failures"`
}

MessageGetReplicationInfoReply_LinkFailures structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 4

func (*MessageGetReplicationInfoReply_LinkFailures) MarshalNDR

func (*MessageGetReplicationInfoReply_LinkFailures) UnmarshalNDR

type MessageGetReplicationInfoReply_Neighbors

type MessageGetReplicationInfoReply_Neighbors struct {
	// pNeighbors:  Neighbor information.
	Neighbors *DSReplicationNeighbors `idl:"name:pNeighbors" json:"neighbors"`
}

MessageGetReplicationInfoReply_Neighbors structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 0

func (*MessageGetReplicationInfoReply_Neighbors) MarshalNDR

func (*MessageGetReplicationInfoReply_Neighbors) UnmarshalNDR

type MessageGetReplicationInfoReply_ObjectMetaData2

type MessageGetReplicationInfoReply_ObjectMetaData2 struct {
	// pObjMetaData2:  Attribute stamps.
	ObjectMetaData2 *DSReplicationObjectMetadata2 `idl:"name:pObjMetaData2" json:"object_meta_data2"`
}

MessageGetReplicationInfoReply_ObjectMetaData2 structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 9

func (*MessageGetReplicationInfoReply_ObjectMetaData2) MarshalNDR

func (*MessageGetReplicationInfoReply_ObjectMetaData2) UnmarshalNDR

type MessageGetReplicationInfoReply_ObjectMetadata

type MessageGetReplicationInfoReply_ObjectMetadata struct {
	// pObjMetaData:  Attribute stamps.
	ObjectMetadata *DSReplicationObjectMetadata `idl:"name:pObjMetaData" json:"object_metadata"`
}

MessageGetReplicationInfoReply_ObjectMetadata structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 2

func (*MessageGetReplicationInfoReply_ObjectMetadata) MarshalNDR

func (*MessageGetReplicationInfoReply_ObjectMetadata) UnmarshalNDR

type MessageGetReplicationInfoReply_PendingOperations

type MessageGetReplicationInfoReply_PendingOperations struct {
	// pPendingOps:  Pending operations in the replication queue.
	PendingOperations *DSReplicationPendingOperations `idl:"name:pPendingOps" json:"pending_operations"`
}

MessageGetReplicationInfoReply_PendingOperations structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 5

func (*MessageGetReplicationInfoReply_PendingOperations) MarshalNDR

func (*MessageGetReplicationInfoReply_PendingOperations) UnmarshalNDR

type MessageGetReplicationInfoReply_RepsTo

type MessageGetReplicationInfoReply_RepsTo struct {
	// pRepsTo:  Neighbor information.
	RepsTo *DSReplicationNeighbors `idl:"name:pRepsTo" json:"reps_to"`
}

MessageGetReplicationInfoReply_RepsTo structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 4294967294

func (*MessageGetReplicationInfoReply_RepsTo) MarshalNDR

func (*MessageGetReplicationInfoReply_RepsTo) UnmarshalNDR

type MessageGetReplicationInfoReply_ServerOutgoingCalls

type MessageGetReplicationInfoReply_ServerOutgoingCalls struct {
	// pServerOutgoingCalls:  Outstanding requests from this DC to other DCs.
	ServerOutgoingCalls *DSReplicationServerOutgoingCalls `idl:"name:pServerOutgoingCalls" json:"server_outgoing_calls"`
}

MessageGetReplicationInfoReply_ServerOutgoingCalls structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 4294967290

func (*MessageGetReplicationInfoReply_ServerOutgoingCalls) MarshalNDR

func (*MessageGetReplicationInfoReply_ServerOutgoingCalls) UnmarshalNDR

type MessageGetReplicationInfoReply_UpToDateVector

type MessageGetReplicationInfoReply_UpToDateVector struct {
	// pUpToDateVec:  Cursors for an NC replica.
	UpToDateVector *UpToDateVectorV1Ext `idl:"name:pUpToDateVec" json:"up_to_date_vector"`
}

MessageGetReplicationInfoReply_UpToDateVector structure represents DRS_MSG_GETREPLINFO_REPLY RPC union arm.

It has following labels: 4294967291

func (*MessageGetReplicationInfoReply_UpToDateVector) MarshalNDR

func (*MessageGetReplicationInfoReply_UpToDateVector) UnmarshalNDR

type MessageGetReplicationInfoRequest

type MessageGetReplicationInfoRequest struct {
	// Types that are assignable to Value
	//
	// *MessageGetReplicationInfoRequest_V1
	// *MessageGetReplicationInfoRequest_V2
	Value is_MessageGetReplicationInfoRequest `json:"value"`
}

MessageGetReplicationInfoRequest structure represents DRS_MSG_GETREPLINFO_REQ RPC union.

The DRS_MSG_GETREPLINFO_REQ union defines the request message versions sent to the IDL_DRSGetReplInfo method.

func (*MessageGetReplicationInfoRequest) GetValue

func (o *MessageGetReplicationInfoRequest) GetValue() any

func (*MessageGetReplicationInfoRequest) MarshalUnionNDR

func (o *MessageGetReplicationInfoRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageGetReplicationInfoRequest) NDRSwitchValue

func (o *MessageGetReplicationInfoRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageGetReplicationInfoRequest) UnmarshalUnionNDR

func (o *MessageGetReplicationInfoRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageGetReplicationInfoRequestV1

type MessageGetReplicationInfoRequestV1 struct {
	// InfoType:  MUST be a DS_REPL_INFO code.
	InfoType uint32 `idl:"name:InfoType" json:"info_type"`
	// pszObjectDN:  DN of the object on which the operation is to be performed. The meaning
	// of this parameter depends on the value of the InfoType parameter.
	ObjectDN string `idl:"name:pszObjectDN;string" json:"object_dn"`
	// uuidSourceDsaObjGuid:  NULL GUID or the DSA GUID of a DC.
	SourceDSAObjectGUID *dtyp.UUID `idl:"name:uuidSourceDsaObjGuid" json:"source_dsa_object_guid"`
}

MessageGetReplicationInfoRequestV1 structure represents DRS_MSG_GETREPLINFO_REQ_V1 RPC structure.

The DRS_MSG_GETREPLINFO_REQ_V1 structure defines a version 1 request message sent to the IDL_DRSGetReplInfo method.

func (*MessageGetReplicationInfoRequestV1) MarshalNDR

func (*MessageGetReplicationInfoRequestV1) UnmarshalNDR

type MessageGetReplicationInfoRequestV2

type MessageGetReplicationInfoRequestV2 struct {
	// InfoType:  MUST be a DS_REPL_INFO code.
	InfoType uint32 `idl:"name:InfoType" json:"info_type"`
	// pszObjectDN:  DN of the object on which the operation is to be performed. The meaning
	// of this parameter depends on the value of the InfoType parameter.
	ObjectDN string `idl:"name:pszObjectDN;string" json:"object_dn"`
	// uuidSourceDsaObjGuid:  NULL GUID or the DSA GUID of a DC.
	SourceDSAObjectGUID *dtyp.UUID `idl:"name:uuidSourceDsaObjGuid" json:"source_dsa_object_guid"`
	// ulFlags:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order.
	//
	//	+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 |  7  | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |     |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | X | X | M T | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
	// pszAttributeName:  Null, or the lDAPDisplayName of a link attribute.
	AttributeName string `idl:"name:pszAttributeName;string" json:"attribute_name"`
	// pszValueDN:  Null, or the DN of the link value for which to retrieve a stamp.
	ValueDN string `idl:"name:pszValueDN;string" json:"value_dn"`
	// dwEnumerationContext:  Zero, or the value of dwEnumerationContext returned by the
	// server on a previous call to IDL_DRSGetReplInfo. For an informative description of
	// the sequencing issues associated with this field, see section 1.3.2.
	EnumerationContext uint32 `idl:"name:dwEnumerationContext" json:"enumeration_context"`
}

MessageGetReplicationInfoRequestV2 structure represents DRS_MSG_GETREPLINFO_REQ_V2 RPC structure.

The DRS_MSG_GETREPLINFO_REQ_V2 structure defines a version 2 request message sent to the IDL_DRSGetReplInfo method. The V2 request structure is a superset of the V1 request structure.

func (*MessageGetReplicationInfoRequestV2) MarshalNDR

func (*MessageGetReplicationInfoRequestV2) UnmarshalNDR

type MessageGetReplicationInfoRequest_V1

type MessageGetReplicationInfoRequest_V1 struct {
	// V1:  Version 1 request.
	V1 *MessageGetReplicationInfoRequestV1 `idl:"name:V1" json:"v1"`
}

MessageGetReplicationInfoRequest_V1 structure represents DRS_MSG_GETREPLINFO_REQ RPC union arm.

It has following labels: 1

func (*MessageGetReplicationInfoRequest_V1) MarshalNDR

func (*MessageGetReplicationInfoRequest_V1) UnmarshalNDR

type MessageGetReplicationInfoRequest_V2

type MessageGetReplicationInfoRequest_V2 struct {
	// V2:  Version 2 request. The V2 request structure is a superset of the V1 request
	// structure.
	V2 *MessageGetReplicationInfoRequestV2 `idl:"name:V2" json:"v2"`
}

MessageGetReplicationInfoRequest_V2 structure represents DRS_MSG_GETREPLINFO_REQ RPC union arm.

It has following labels: 2

func (*MessageGetReplicationInfoRequest_V2) MarshalNDR

func (*MessageGetReplicationInfoRequest_V2) UnmarshalNDR

type MessageInitDemotionReply

type MessageInitDemotionReply struct {
	// Types that are assignable to Value
	//
	// *MessageInitDemotionReply_V1
	Value is_MessageInitDemotionReply `json:"value"`
}

MessageInitDemotionReply structure represents DRS_MSG_INIT_DEMOTIONREPLY RPC union.

The DRS_MSG_INIT_DEMOTIONREPLY union defines the response messages received from the IDL_DRSInitDemotion method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageInitDemotionReply) GetValue

func (o *MessageInitDemotionReply) GetValue() any

func (*MessageInitDemotionReply) MarshalUnionNDR

func (o *MessageInitDemotionReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageInitDemotionReply) NDRSwitchValue

func (o *MessageInitDemotionReply) NDRSwitchValue(sw uint32) uint32

func (*MessageInitDemotionReply) UnmarshalUnionNDR

func (o *MessageInitDemotionReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageInitDemotionReplyV1

type MessageInitDemotionReplyV1 struct {
	// dwOpError:  A Win32 error code, as specified in [MS-ERREF] section 2.2.
	OperationError uint32 `idl:"name:dwOpError" json:"operation_error"`
}

MessageInitDemotionReplyV1 structure represents DRS_MSG_INIT_DEMOTIONREPLY_V1 RPC structure.

The DRS_MSG_INIT_DEMOTIONREPLY_V1 structure defines a response message received from the IDL_DRSInitDemotion method.

func (*MessageInitDemotionReplyV1) MarshalNDR

func (o *MessageInitDemotionReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageInitDemotionReplyV1) UnmarshalNDR

func (o *MessageInitDemotionReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageInitDemotionReply_V1

type MessageInitDemotionReply_V1 struct {
	// V1:  Version 1 reply.
	V1 *MessageInitDemotionReplyV1 `idl:"name:V1" json:"v1"`
}

MessageInitDemotionReply_V1 structure represents DRS_MSG_INIT_DEMOTIONREPLY RPC union arm.

It has following labels: 1

func (*MessageInitDemotionReply_V1) MarshalNDR

func (*MessageInitDemotionReply_V1) UnmarshalNDR

func (o *MessageInitDemotionReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageInitDemotionRequest

type MessageInitDemotionRequest struct {
	// Types that are assignable to Value
	//
	// *MessageInitDemotionRequest_V1
	Value is_MessageInitDemotionRequest `json:"value"`
}

MessageInitDemotionRequest structure represents DRS_MSG_INIT_DEMOTIONREQ RPC union.

The DRS_MSG_INIT_DEMOTIONREQ union defines request messages sent to the IDL_DRSInitDemotion method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageInitDemotionRequest) GetValue

func (o *MessageInitDemotionRequest) GetValue() any

func (*MessageInitDemotionRequest) MarshalUnionNDR

func (o *MessageInitDemotionRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageInitDemotionRequest) NDRSwitchValue

func (o *MessageInitDemotionRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageInitDemotionRequest) UnmarshalUnionNDR

func (o *MessageInitDemotionRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageInitDemotionRequestV1

type MessageInitDemotionRequestV1 struct {
	// contains filtered or unexported fields
}

MessageInitDemotionRequestV1 structure represents DRS_MSG_INIT_DEMOTIONREQ_V1 RPC structure.

The DRS_MSG_INIT_DEMOTIONREQ_V1 structure defines a request message sent to the IDL_DRSInitDemotion method.

func (*MessageInitDemotionRequestV1) MarshalNDR

func (*MessageInitDemotionRequestV1) UnmarshalNDR

func (o *MessageInitDemotionRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageInitDemotionRequest_V1

type MessageInitDemotionRequest_V1 struct {
	// V1:  Version 1 request. Currently, only one version is defined.
	V1 *MessageInitDemotionRequestV1 `idl:"name:V1" json:"v1"`
}

MessageInitDemotionRequest_V1 structure represents DRS_MSG_INIT_DEMOTIONREQ RPC union arm.

It has following labels: 1

func (*MessageInitDemotionRequest_V1) MarshalNDR

func (*MessageInitDemotionRequest_V1) UnmarshalNDR

func (o *MessageInitDemotionRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageKCCExecute

type MessageKCCExecute struct {
	// Types that are assignable to Value
	//
	// *MessageKCCExecute_V1
	Value is_MessageKCCExecute `json:"value"`
}

MessageKCCExecute structure represents DRS_MSG_KCC_EXECUTE RPC union.

The DRS_MSG_KCC_EXECUTE union defines the request messages sent to the IDL_DRSExecuteKCC method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageKCCExecute) GetValue

func (o *MessageKCCExecute) GetValue() any

func (*MessageKCCExecute) MarshalUnionNDR

func (o *MessageKCCExecute) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageKCCExecute) NDRSwitchValue

func (o *MessageKCCExecute) NDRSwitchValue(sw uint32) uint32

func (*MessageKCCExecute) UnmarshalUnionNDR

func (o *MessageKCCExecute) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageKCCExecuteV1

type MessageKCCExecuteV1 struct {
	// dwTaskID:  MUST be 0.
	TaskID uint32 `idl:"name:dwTaskID" json:"task_id"`
	// dwFlags:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order.
	//
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 |  6  |  7  | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |     |     |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | X | D P | A S | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// AS (DS_KCC_FLAG_ASYNC_OP, 0x00000001): Request the KCC to run, then return immediately.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
}

MessageKCCExecuteV1 structure represents DRS_MSG_KCC_EXECUTE_V1 RPC structure.

The DRS_MSG_KCC_EXECUTE_V1 structure defines the request message sent to the IDL_DRSExecuteKCC method.

func (*MessageKCCExecuteV1) MarshalNDR

func (o *MessageKCCExecuteV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageKCCExecuteV1) UnmarshalNDR

func (o *MessageKCCExecuteV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageKCCExecute_V1

type MessageKCCExecute_V1 struct {
	// V1:  Version 1 request.
	V1 *MessageKCCExecuteV1 `idl:"name:V1" json:"v1"`
}

MessageKCCExecute_V1 structure represents DRS_MSG_KCC_EXECUTE RPC union arm.

It has following labels: 1

func (*MessageKCCExecute_V1) MarshalNDR

func (o *MessageKCCExecute_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageKCCExecute_V1) UnmarshalNDR

func (o *MessageKCCExecute_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageModifyReplica

type MessageModifyReplica struct {
	// Types that are assignable to Value
	//
	// *MessageModifyReplica_V1
	Value is_MessageModifyReplica `json:"value"`
}

MessageModifyReplica structure represents DRS_MSG_REPMOD RPC union.

The DRS_MSG_REPMOD union defines the request messages for the IDL_DRSReplicaModify method. Only one version, identified by dwVersion = 1, is currently defined.

func (*MessageModifyReplica) GetValue

func (o *MessageModifyReplica) GetValue() any

func (*MessageModifyReplica) MarshalUnionNDR

func (o *MessageModifyReplica) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageModifyReplica) NDRSwitchValue

func (o *MessageModifyReplica) NDRSwitchValue(sw uint32) uint32

func (*MessageModifyReplica) UnmarshalUnionNDR

func (o *MessageModifyReplica) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageModifyReplicaV1

type MessageModifyReplicaV1 struct {
	// pNC:  A pointer to the DSName of the root of an NC replica on the server.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// uuidSourceDRA:  The DSA GUID.
	DRASourceID *dtyp.UUID `idl:"name:uuidSourceDRA" json:"dra_source_id"`
	// pszSourceDRA:  The transport-specific NetworkAddress of a DC.
	SourceDRA string `idl:"name:pszSourceDRA;string;pointer:unique" json:"source_dra"`
	// rtSchedule:  The periodic replication schedule.
	Schedule *ReplicationTimes `idl:"name:rtSchedule" json:"schedule"`
	// ulReplicaFlags:  The DRS_OPTIONS flags for the repsFrom value.
	ReplicaFlags uint32 `idl:"name:ulReplicaFlags" json:"replica_flags"`
	// ulModifyFields:  The fields to update(presented in little-endian byte order).
	//
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 |  5  |  6  |  7  | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |     |     |     |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | U S | U A | U F | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+-----+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// UF (DRS_UPDATE_FLAGS, 0x00000001): Updates the flags associated with the server.
	//
	// UA (DRS_UPDATE_ADDRESS, 0x00000002): Updates the transport-specific address associated
	// with the server.
	ModifyFields uint32 `idl:"name:ulModifyFields" json:"modify_fields"`
	// ulOptions:  The DRS_OPTIONS flags for execution of this method.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageModifyReplicaV1 structure represents DRS_MSG_REPMOD_V1 RPC structure.

The DRS_MSG_REPMOD_V1 structure defines a request message for the IDL_DRSReplicaModify method.

func (*MessageModifyReplicaV1) MarshalNDR

func (o *MessageModifyReplicaV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageModifyReplicaV1) UnmarshalNDR

func (o *MessageModifyReplicaV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageModifyReplica_V1

type MessageModifyReplica_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageModifyReplicaV1 `idl:"name:V1" json:"v1"`
}

MessageModifyReplica_V1 structure represents DRS_MSG_REPMOD RPC union arm.

It has following labels: 1

func (*MessageModifyReplica_V1) MarshalNDR

func (o *MessageModifyReplica_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageModifyReplica_V1) UnmarshalNDR

func (o *MessageModifyReplica_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveReply

type MessageMoveReply struct {
	// Types that are assignable to Value
	//
	// *MessageMoveReply_V1
	// *MessageMoveReply_V2
	Value is_MessageMoveReply `json:"value"`
}

MessageMoveReply structure represents DRS_MSG_MOVEREPLY RPC union.

The DRS_MSG_MOVEREPLY union defines the response messages received from the IDL_DRSInterDomainMove method.

func (*MessageMoveReply) GetValue

func (o *MessageMoveReply) GetValue() any

func (*MessageMoveReply) MarshalUnionNDR

func (o *MessageMoveReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageMoveReply) NDRSwitchValue

func (o *MessageMoveReply) NDRSwitchValue(sw uint32) uint32

func (*MessageMoveReply) UnmarshalUnionNDR

func (o *MessageMoveReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageMoveReplyV1

type MessageMoveReplyV1 struct {
	// ppResult:  The object as it appears following the move operation.
	Result *EntityInfo `idl:"name:ppResult" json:"result"`
	// PrefixTable:  The prefix table with which to translate the ATTRTYP values in ppResult
	// to OIDs.
	PrefixTable *SchemaPrefixTable `idl:"name:PrefixTable" json:"prefix_table"`
	// pError:  0 if successful, or non-zero if a fatal error occurred.
	Error uint32 `idl:"name:pError" json:"error"`
}

MessageMoveReplyV1 structure represents DRS_MSG_MOVEREPLY_V1 RPC structure.

The DRS_MSG_MOVEREPLY_V1 structure defines a response message received from the IDL_DRSInterDomainMove method. This response version is obsolete.<35>

func (*MessageMoveReplyV1) MarshalNDR

func (o *MessageMoveReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveReplyV1) UnmarshalNDR

func (o *MessageMoveReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveReplyV2

type MessageMoveReplyV2 struct {
	// win32Error:  0 if successful, or non-zero if a fatal error occurred.
	Win32Error uint32 `idl:"name:win32Error" json:"win32_error"`
	// pAddedName:  The name of the object in its new domain.
	AddedName *DSName `idl:"name:pAddedName;pointer:unique" json:"added_name"`
}

MessageMoveReplyV2 structure represents DRS_MSG_MOVEREPLY_V2 RPC structure.

The DRS_MSG_MOVEREPLY_V2 structure defines a response message received from the IDL_DRSInterDomainMove method.

func (*MessageMoveReplyV2) MarshalNDR

func (o *MessageMoveReplyV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveReplyV2) UnmarshalNDR

func (o *MessageMoveReplyV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveReply_V1

type MessageMoveReply_V1 struct {
	// V1:  The version 1 response (obsolete).
	V1 *MessageMoveReplyV1 `idl:"name:V1" json:"v1"`
}

MessageMoveReply_V1 structure represents DRS_MSG_MOVEREPLY RPC union arm.

It has following labels: 1

func (*MessageMoveReply_V1) MarshalNDR

func (o *MessageMoveReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveReply_V1) UnmarshalNDR

func (o *MessageMoveReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveReply_V2

type MessageMoveReply_V2 struct {
	// V2:  The version 2 response.
	V2 *MessageMoveReplyV2 `idl:"name:V2" json:"v2"`
}

MessageMoveReply_V2 structure represents DRS_MSG_MOVEREPLY RPC union arm.

It has following labels: 2

func (*MessageMoveReply_V2) MarshalNDR

func (o *MessageMoveReply_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveReply_V2) UnmarshalNDR

func (o *MessageMoveReply_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveRequest

type MessageMoveRequest struct {
	// Types that are assignable to Value
	//
	// *MessageMoveRequest_V1
	// *MessageMoveRequest_V2
	Value is_MessageMoveRequest `json:"value"`
}

MessageMoveRequest structure represents DRS_MSG_MOVEREQ RPC union.

The DRS_MSG_MOVEREQ union defines the request messages sent to the IDL_DRSInterDomainMove method.

func (*MessageMoveRequest) GetValue

func (o *MessageMoveRequest) GetValue() any

func (*MessageMoveRequest) MarshalUnionNDR

func (o *MessageMoveRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageMoveRequest) NDRSwitchValue

func (o *MessageMoveRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageMoveRequest) UnmarshalUnionNDR

func (o *MessageMoveRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageMoveRequestV1

type MessageMoveRequestV1 struct {
	// pSourceDSA:  The NetworkAddress of the client DC.
	SourceDSA string `idl:"name:pSourceDSA" json:"source_dsa"`
	// pObject:  The object to be moved.
	Object *EntityInfo `idl:"name:pObject" json:"object"`
	// pParentUUID:  The objectGUID of the new parent object.
	ParentUUID *dtyp.UUID `idl:"name:pParentUUID" json:"parent_uuid"`
	// PrefixTable:  The prefix table with which to translate the ATTRTYP values in pObject
	// to OIDs.
	PrefixTable *SchemaPrefixTable `idl:"name:PrefixTable" json:"prefix_table"`
	// ulFlags:  Unused. MUST be 0 and ignored.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
}

MessageMoveRequestV1 structure represents DRS_MSG_MOVEREQ_V1 RPC structure.

The DRS_MSG_MOVEREQ_V1 structure defines a request message sent to the IDL_DRSInterDomainMove method. This request version is obsolete.<34>

func (*MessageMoveRequestV1) MarshalNDR

func (o *MessageMoveRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveRequestV1) UnmarshalNDR

func (o *MessageMoveRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveRequestV2

type MessageMoveRequestV2 struct {
	// pSrcDSA:  The client DC nTDSDSA object.
	SourceDSA *DSName `idl:"name:pSrcDSA" json:"source_dsa"`
	// pSrcObject:  The object to be moved.
	SourceObject *EntityInfo `idl:"name:pSrcObject" json:"source_object"`
	// pDstName:  The name the object will have in the destination domain.
	DestinationName *DSName `idl:"name:pDstName" json:"destination_name"`
	// pExpectedTargetNC:  The NC to which pSrcObject is being moved.
	ExpectedTargetNC *DSName `idl:"name:pExpectedTargetNC" json:"expected_target_nc"`
	// pClientCreds:  The credentials of the user initiating the call.
	ClientCreds *SecurityBufferDesc `idl:"name:pClientCreds" json:"client_creds"`
	// PrefixTable:  The prefix table with which to translate the ATTRTYP values in pSrcObject
	// to OIDs.
	PrefixTable *SchemaPrefixTable `idl:"name:PrefixTable" json:"prefix_table"`
	// ulFlags:  Unused. MUST be 0 and ignored.
	Flags uint32 `idl:"name:ulFlags" json:"flags"`
}

MessageMoveRequestV2 structure represents DRS_MSG_MOVEREQ_V2 RPC structure.

The DRS_MSG_MOVEREQ_V2 structure defines a request message sent to the IDL_DRSInterDomainMove method.

func (*MessageMoveRequestV2) MarshalNDR

func (o *MessageMoveRequestV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveRequestV2) UnmarshalNDR

func (o *MessageMoveRequestV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveRequest_V1

type MessageMoveRequest_V1 struct {
	// V1:  The version 1 request (obsolete).
	V1 *MessageMoveRequestV1 `idl:"name:V1" json:"v1"`
}

MessageMoveRequest_V1 structure represents DRS_MSG_MOVEREQ RPC union arm.

It has following labels: 1

func (*MessageMoveRequest_V1) MarshalNDR

func (o *MessageMoveRequest_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveRequest_V1) UnmarshalNDR

func (o *MessageMoveRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageMoveRequest_V2

type MessageMoveRequest_V2 struct {
	// V2:  The version 2 request.
	V2 *MessageMoveRequestV2 `idl:"name:V2" json:"v2"`
}

MessageMoveRequest_V2 structure represents DRS_MSG_MOVEREQ RPC union arm.

It has following labels: 2

func (*MessageMoveRequest_V2) MarshalNDR

func (o *MessageMoveRequest_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageMoveRequest_V2) UnmarshalNDR

func (o *MessageMoveRequest_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageNT4ChangeLogReply

type MessageNT4ChangeLogReply struct {
	// Types that are assignable to Value
	//
	// *MessageNT4ChangeLogReply_V1
	Value is_MessageNT4ChangeLogReply `json:"value"`
}

MessageNT4ChangeLogReply structure represents DRS_MSG_NT4_CHGLOG_REPLY RPC union.

The DRS_MSG_NT4_CHGLOG_REPLY union defines the response messages received from the IDL_DRSGetNT4ChangeLog method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageNT4ChangeLogReply) GetValue

func (o *MessageNT4ChangeLogReply) GetValue() any

func (*MessageNT4ChangeLogReply) MarshalUnionNDR

func (o *MessageNT4ChangeLogReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageNT4ChangeLogReply) NDRSwitchValue

func (o *MessageNT4ChangeLogReply) NDRSwitchValue(sw uint32) uint32

func (*MessageNT4ChangeLogReply) UnmarshalUnionNDR

func (o *MessageNT4ChangeLogReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageNT4ChangeLogReplyV1

type MessageNT4ChangeLogReplyV1 struct {
	// cbRestart:  Zero if pRestart = null. Otherwise, the size, in bytes, of pRestart^.
	RestartLength uint32 `idl:"name:cbRestart" json:"restart_length"`
	// cbLog:  Zero if pRestart = null. Otherwise, the size, in bytes, of pLog^.
	LogLength uint32 `idl:"name:cbLog" json:"log_length"`
	// ReplicationState:  The replication state for Windows NT 4.0 operating system DCs.
	ReplicationState *NT4ReplicationState `idl:"name:ReplicationState" json:"replication_state"`
	// ActualNtStatus:  A STATUS code. See the pseudo-code for interpretation.
	ActualNTStatus uint32 `idl:"name:ActualNtStatus" json:"actual_nt_status"`
	// pRestart:  Null if no entries were returned. Otherwise, a pointer to an opaque value
	// identifying the last entry returned in pLog.
	Restart []byte `idl:"name:pRestart;size_is:(cbRestart)" json:"restart"`
	// pLog:  The buffer containing the next entries from the change log.
	Log []byte `idl:"name:pLog;size_is:(cbLog)" json:"log"`
}

MessageNT4ChangeLogReplyV1 structure represents DRS_MSG_NT4_CHGLOG_REPLY_V1 RPC structure.

The DRS_MSG_NT4_CHGLOG_REPLY_V1 structure defines the response message received from the IDL_DRSGetNT4ChangeLog method.

func (*MessageNT4ChangeLogReplyV1) MarshalNDR

func (o *MessageNT4ChangeLogReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageNT4ChangeLogReplyV1) UnmarshalNDR

func (o *MessageNT4ChangeLogReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageNT4ChangeLogReply_V1

type MessageNT4ChangeLogReply_V1 struct {
	// V1:  The version 1 reply.
	V1 *MessageNT4ChangeLogReplyV1 `idl:"name:V1" json:"v1"`
}

MessageNT4ChangeLogReply_V1 structure represents DRS_MSG_NT4_CHGLOG_REPLY RPC union arm.

It has following labels: 1

func (*MessageNT4ChangeLogReply_V1) MarshalNDR

func (*MessageNT4ChangeLogReply_V1) UnmarshalNDR

func (o *MessageNT4ChangeLogReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageNT4ChangeLogRequest

type MessageNT4ChangeLogRequest struct {
	// Types that are assignable to Value
	//
	// *MessageNT4ChangeLogRequest_V1
	Value is_MessageNT4ChangeLogRequest `json:"value"`
}

MessageNT4ChangeLogRequest structure represents DRS_MSG_NT4_CHGLOG_REQ RPC union.

The DRS_MSG_NT4_CHGLOG_REQ_V1 structure defines the request message sent to the IDL_DRSGetNT4ChangeLog method.

func (*MessageNT4ChangeLogRequest) GetValue

func (o *MessageNT4ChangeLogRequest) GetValue() any

func (*MessageNT4ChangeLogRequest) MarshalUnionNDR

func (o *MessageNT4ChangeLogRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageNT4ChangeLogRequest) NDRSwitchValue

func (o *MessageNT4ChangeLogRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageNT4ChangeLogRequest) UnmarshalUnionNDR

func (o *MessageNT4ChangeLogRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageNT4ChangeLogRequestV1

type MessageNT4ChangeLogRequestV1 struct {
	// dwFlags:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order:
	//
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 |  6  |  7  | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |     |     |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | X | S N | C L | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// CL (DRS_NT4_CHGLOG_GET_CHANGE_LOG, 0x00000001): If set, the server returns the PDC
	// change log.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// PreferredMaximumLength:  The maximum size, in bytes, of the change log data that
	// is to be retrieved in a single operation.
	PreferredMaximumLength uint32 `idl:"name:PreferredMaximumLength" json:"preferred_maximum_length"`
	// cbRestart: Zero if pRestart = null. Otherwise, the size, in bytes, of pRestart^.
	RestartLength uint32 `idl:"name:cbRestart" json:"restart_length"`
	// pRestart: Null to request the change log from the beginning. Otherwise, a pointer
	// to an opaque value, returned in some previous call to IDL_DRSGetNT4ChangeLog, identifying
	// the last change log entry returned in that previous call.
	Restart []byte `idl:"name:pRestart;size_is:(cbRestart)" json:"restart"`
}

MessageNT4ChangeLogRequestV1 structure represents DRS_MSG_NT4_CHGLOG_REQ_V1 RPC structure.

The DRS_MSG_NT4_CHGLOG_REQ_V1 structure defines the request message sent to the IDL_DRSGetNT4ChangeLog method.

func (*MessageNT4ChangeLogRequestV1) MarshalNDR

func (*MessageNT4ChangeLogRequestV1) UnmarshalNDR

func (o *MessageNT4ChangeLogRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageNT4ChangeLogRequest_V1

type MessageNT4ChangeLogRequest_V1 struct {
	V1 *MessageNT4ChangeLogRequestV1 `idl:"name:V1" json:"v1"`
}

MessageNT4ChangeLogRequest_V1 structure represents DRS_MSG_NT4_CHGLOG_REQ RPC union arm.

It has following labels: 1

func (*MessageNT4ChangeLogRequest_V1) MarshalNDR

func (*MessageNT4ChangeLogRequest_V1) UnmarshalNDR

func (o *MessageNT4ChangeLogRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageQuerySitesReply

type MessageQuerySitesReply struct {
	// Types that are assignable to Value
	//
	// *MessageQuerySitesReply_V1
	Value is_MessageQuerySitesReply `json:"value"`
}

MessageQuerySitesReply structure represents DRS_MSG_QUERYSITESREPLY RPC union.

The DRS_MSG_QUERYSITESREPLY union defines the response messages received from the IDL_DRSQuerySitesByCost method.

func (*MessageQuerySitesReply) GetValue

func (o *MessageQuerySitesReply) GetValue() any

func (*MessageQuerySitesReply) MarshalUnionNDR

func (o *MessageQuerySitesReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageQuerySitesReply) NDRSwitchValue

func (o *MessageQuerySitesReply) NDRSwitchValue(sw uint32) uint32

func (*MessageQuerySitesReply) UnmarshalUnionNDR

func (o *MessageQuerySitesReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageQuerySitesReplyElementV1

type MessageQuerySitesReplyElementV1 struct {
	// dwErrorCode:  0 if this "from-to" computation was successful, or ERROR_DS_OBJ_NOT_FOUND
	// if the "to" site does not exist.
	ErrorCode uint32 `idl:"name:dwErrorCode" json:"error_code"`
	// dwCost:  The communication cost between the "from" site and this "to" site, or 0xFFFFFFFF
	// if the sites are not connected.
	Cost uint32 `idl:"name:dwCost" json:"cost"`
}

MessageQuerySitesReplyElementV1 structure represents DRS_MSG_QUERYSITESREPLYELEMENT_V1 RPC structure.

The DRS_MSG_QUERYSITESREPLYELEMENT_V1 structure defines the computed cost of communication between two sites.

func (*MessageQuerySitesReplyElementV1) MarshalNDR

func (*MessageQuerySitesReplyElementV1) UnmarshalNDR

type MessageQuerySitesReplyV1

type MessageQuerySitesReplyV1 struct {
	// cToSites:  The number of items in the rgCostInfo array.
	ToSitesCount uint32 `idl:"name:cToSites" json:"to_sites_count"`
	// rgCostInfo:  The sequence of computed site costs, in the same order as the rgszToSites
	// field in the request message.
	CostInfo []*MessageQuerySitesReplyElementV1 `idl:"name:rgCostInfo;size_is:(cToSites)" json:"cost_info"`
	// dwFlags:  Unused. MUST be 0 and ignored.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
}

MessageQuerySitesReplyV1 structure represents DRS_MSG_QUERYSITESREPLY_V1 RPC structure.

The DRS_MSG_QUERYSITESREPLY_V1 structure defines a response message received from the IDL_DRSQuerySitesByCost method.

func (*MessageQuerySitesReplyV1) MarshalNDR

func (o *MessageQuerySitesReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageQuerySitesReplyV1) UnmarshalNDR

func (o *MessageQuerySitesReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageQuerySitesReply_V1

type MessageQuerySitesReply_V1 struct {
	// V1:  The version 1 response.
	V1 *MessageQuerySitesReplyV1 `idl:"name:V1" json:"v1"`
}

MessageQuerySitesReply_V1 structure represents DRS_MSG_QUERYSITESREPLY RPC union arm.

It has following labels: 1

func (*MessageQuerySitesReply_V1) MarshalNDR

func (o *MessageQuerySitesReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageQuerySitesReply_V1) UnmarshalNDR

func (o *MessageQuerySitesReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageQuerySitesRequest

type MessageQuerySitesRequest struct {
	// Types that are assignable to Value
	//
	// *MessageQuerySitesRequest_V1
	Value is_MessageQuerySitesRequest `json:"value"`
}

MessageQuerySitesRequest structure represents DRS_MSG_QUERYSITESREQ RPC union.

The DRS_MSG_QUERYSITESREQ union defines the request message versions sent to the IDL_DRSQuerySitesByCost method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageQuerySitesRequest) GetValue

func (o *MessageQuerySitesRequest) GetValue() any

func (*MessageQuerySitesRequest) MarshalUnionNDR

func (o *MessageQuerySitesRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageQuerySitesRequest) NDRSwitchValue

func (o *MessageQuerySitesRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageQuerySitesRequest) UnmarshalUnionNDR

func (o *MessageQuerySitesRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageQuerySitesRequestV1

type MessageQuerySitesRequestV1 struct {
	// pwszFromSite:  The RDN of the site object of the "from" site.
	FromSite string `idl:"name:pwszFromSite;string" json:"from_site"`
	// cToSites:  The number of items in the rgszToSites array (the count of "to" sites).
	ToSitesCount uint32 `idl:"name:cToSites" json:"to_sites_count"`
	// rgszToSites:  The RDNs of the site objects of the "to" sites.
	ToSites []string `idl:"name:rgszToSites;size_is:(cToSites);string" json:"to_sites"`
	// dwFlags:  Unused. MUST be 0 and ignored.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
}

MessageQuerySitesRequestV1 structure represents DRS_MSG_QUERYSITESREQ_V1 RPC structure.

The DRS_MSG_QUERYSITESREQ_V1 structure defines a request message sent to the IDL_DRSQuerySitesByCost method.

func (*MessageQuerySitesRequestV1) MarshalNDR

func (o *MessageQuerySitesRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageQuerySitesRequestV1) UnmarshalNDR

func (o *MessageQuerySitesRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageQuerySitesRequest_V1

type MessageQuerySitesRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageQuerySitesRequestV1 `idl:"name:V1" json:"v1"`
}

MessageQuerySitesRequest_V1 structure represents DRS_MSG_QUERYSITESREQ RPC union arm.

It has following labels: 1

func (*MessageQuerySitesRequest_V1) MarshalNDR

func (*MessageQuerySitesRequest_V1) UnmarshalNDR

func (o *MessageQuerySitesRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReadNGCKeyReply

type MessageReadNGCKeyReply struct {
	// Types that are assignable to Value
	//
	// *MessageReadNGCKeyReply_V1
	Value is_MessageReadNGCKeyReply `json:"value"`
}

MessageReadNGCKeyReply structure represents DRS_MSG_READNGCKEYREPLY RPC union.

func (*MessageReadNGCKeyReply) GetValue

func (o *MessageReadNGCKeyReply) GetValue() any

func (*MessageReadNGCKeyReply) MarshalUnionNDR

func (o *MessageReadNGCKeyReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReadNGCKeyReply) NDRSwitchValue

func (o *MessageReadNGCKeyReply) NDRSwitchValue(sw uint32) uint32

func (*MessageReadNGCKeyReply) UnmarshalUnionNDR

func (o *MessageReadNGCKeyReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReadNGCKeyReplyV1

type MessageReadNGCKeyReplyV1 struct {
	ReturnValue uint32 `idl:"name:retVal" json:"return_value"`
	NGCKeyCount uint32 `idl:"name:cNgcKey" json:"ngc_key_count"`
	NGCKey      []byte `idl:"name:pNgcKey;size_is:(cNgcKey)" json:"ngc_key"`
}

MessageReadNGCKeyReplyV1 structure represents DRS_MSG_READNGCKEYREPLY_V1 RPC structure.

func (*MessageReadNGCKeyReplyV1) MarshalNDR

func (o *MessageReadNGCKeyReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReadNGCKeyReplyV1) UnmarshalNDR

func (o *MessageReadNGCKeyReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReadNGCKeyReply_V1

type MessageReadNGCKeyReply_V1 struct {
	V1 *MessageReadNGCKeyReplyV1 `idl:"name:V1" json:"v1"`
}

MessageReadNGCKeyReply_V1 structure represents DRS_MSG_READNGCKEYREPLY RPC union arm.

It has following labels: 1

func (*MessageReadNGCKeyReply_V1) MarshalNDR

func (o *MessageReadNGCKeyReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReadNGCKeyReply_V1) UnmarshalNDR

func (o *MessageReadNGCKeyReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReadNGCKeyRequest

type MessageReadNGCKeyRequest struct {
	// Types that are assignable to Value
	//
	// *MessageReadNGCKeyRequest_V1
	Value is_MessageReadNGCKeyRequest `json:"value"`
}

MessageReadNGCKeyRequest structure represents DRS_MSG_READNGCKEYREQ RPC union.

func (*MessageReadNGCKeyRequest) GetValue

func (o *MessageReadNGCKeyRequest) GetValue() any

func (*MessageReadNGCKeyRequest) MarshalUnionNDR

func (o *MessageReadNGCKeyRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReadNGCKeyRequest) NDRSwitchValue

func (o *MessageReadNGCKeyRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageReadNGCKeyRequest) UnmarshalUnionNDR

func (o *MessageReadNGCKeyRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReadNGCKeyRequestV1

type MessageReadNGCKeyRequestV1 struct {
	Account string `idl:"name:pwszAccount;string" json:"account"`
}

MessageReadNGCKeyRequestV1 structure represents DRS_MSG_READNGCKEYREQ_V1 RPC structure.

func (*MessageReadNGCKeyRequestV1) MarshalNDR

func (o *MessageReadNGCKeyRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReadNGCKeyRequestV1) UnmarshalNDR

func (o *MessageReadNGCKeyRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReadNGCKeyRequest_V1

type MessageReadNGCKeyRequest_V1 struct {
	V1 *MessageReadNGCKeyRequestV1 `idl:"name:V1" json:"v1"`
}

MessageReadNGCKeyRequest_V1 structure represents DRS_MSG_READNGCKEYREQ RPC union arm.

It has following labels: 1

func (*MessageReadNGCKeyRequest_V1) MarshalNDR

func (*MessageReadNGCKeyRequest_V1) UnmarshalNDR

func (o *MessageReadNGCKeyRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageRemoveDSDomainReply

type MessageRemoveDSDomainReply struct {
	// Types that are assignable to Value
	//
	// *MessageRemoveDSDomainReply_V1
	Value is_MessageRemoveDSDomainReply `json:"value"`
}

MessageRemoveDSDomainReply structure represents DRS_MSG_RMDMNREPLY RPC union.

The DRS_MSG_RMDMNREPLY union defines the response messages received from the IDL_DRSRemoveDsDomain method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageRemoveDSDomainReply) GetValue

func (o *MessageRemoveDSDomainReply) GetValue() any

func (*MessageRemoveDSDomainReply) MarshalUnionNDR

func (o *MessageRemoveDSDomainReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageRemoveDSDomainReply) NDRSwitchValue

func (o *MessageRemoveDSDomainReply) NDRSwitchValue(sw uint32) uint32

func (*MessageRemoveDSDomainReply) UnmarshalUnionNDR

func (o *MessageRemoveDSDomainReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageRemoveDSDomainReplyV1

type MessageRemoveDSDomainReplyV1 struct {
	// contains filtered or unexported fields
}

MessageRemoveDSDomainReplyV1 structure represents DRS_MSG_RMDMNREPLY_V1 RPC structure.

The DRS_MSG_RMDMNREPLY_V1 structure defines a response message received from the IDL_DRSRemoveDsDomain method.

func (*MessageRemoveDSDomainReplyV1) MarshalNDR

func (*MessageRemoveDSDomainReplyV1) UnmarshalNDR

func (o *MessageRemoveDSDomainReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageRemoveDSDomainReply_V1

type MessageRemoveDSDomainReply_V1 struct {
	// V1:  The version 1 response.
	V1 *MessageRemoveDSDomainReplyV1 `idl:"name:V1" json:"v1"`
}

MessageRemoveDSDomainReply_V1 structure represents DRS_MSG_RMDMNREPLY RPC union arm.

It has following labels: 1

func (*MessageRemoveDSDomainReply_V1) MarshalNDR

func (*MessageRemoveDSDomainReply_V1) UnmarshalNDR

func (o *MessageRemoveDSDomainReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageRemoveDSDomainRequest

type MessageRemoveDSDomainRequest struct {
	// Types that are assignable to Value
	//
	// *MessageRemoveDSDomainRequest_V1
	Value is_MessageRemoveDSDomainRequest `json:"value"`
}

MessageRemoveDSDomainRequest structure represents DRS_MSG_RMDMNREQ RPC union.

The DRS_MSG_RMDMNREQ union defines the request messages sent to the IDL_DRSRemoveDsDomain method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageRemoveDSDomainRequest) GetValue

func (o *MessageRemoveDSDomainRequest) GetValue() any

func (*MessageRemoveDSDomainRequest) MarshalUnionNDR

func (o *MessageRemoveDSDomainRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageRemoveDSDomainRequest) NDRSwitchValue

func (o *MessageRemoveDSDomainRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageRemoveDSDomainRequest) UnmarshalUnionNDR

func (o *MessageRemoveDSDomainRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageRemoveDSDomainRequestV1

type MessageRemoveDSDomainRequestV1 struct {
	// DomainDN:  The DN of the NC root of the domain NC to remove.
	DomainDN string `idl:"name:DomainDN;string" json:"domain_dn"`
}

MessageRemoveDSDomainRequestV1 structure represents DRS_MSG_RMDMNREQ_V1 RPC structure.

The DRS_MSG_RMDMNREQ_V1 structure defines a request message sent to the IDL_DRSRemoveDsDomain method.

func (*MessageRemoveDSDomainRequestV1) MarshalNDR

func (*MessageRemoveDSDomainRequestV1) UnmarshalNDR

type MessageRemoveDSDomainRequest_V1

type MessageRemoveDSDomainRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageRemoveDSDomainRequestV1 `idl:"name:V1" json:"v1"`
}

MessageRemoveDSDomainRequest_V1 structure represents DRS_MSG_RMDMNREQ RPC union arm.

It has following labels: 1

func (*MessageRemoveDSDomainRequest_V1) MarshalNDR

func (*MessageRemoveDSDomainRequest_V1) UnmarshalNDR

type MessageRemoveServerReply

type MessageRemoveServerReply struct {
	// Types that are assignable to Value
	//
	// *MessageRemoveServerReply_V1
	Value is_MessageRemoveServerReply `json:"value"`
}

MessageRemoveServerReply structure represents DRS_MSG_RMSVRREPLY RPC union.

The DRS_MSG_RMSVRREPLY union defines the response messages received from the IDL_DRSRemoveDsServer method.

func (*MessageRemoveServerReply) GetValue

func (o *MessageRemoveServerReply) GetValue() any

func (*MessageRemoveServerReply) MarshalUnionNDR

func (o *MessageRemoveServerReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageRemoveServerReply) NDRSwitchValue

func (o *MessageRemoveServerReply) NDRSwitchValue(sw uint32) uint32

func (*MessageRemoveServerReply) UnmarshalUnionNDR

func (o *MessageRemoveServerReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageRemoveServerReplyV1

type MessageRemoveServerReplyV1 struct {
	// fLastDcInDomain:  True if the DC is the last DC in its domain, and pmsgIn^.V1.DomainDN
	// was set to the DN of the NC root of the domain to which the DC belongs. Otherwise,
	// false.
	LastDCInDomain bool `idl:"name:fLastDcInDomain" json:"last_dc_in_domain"`
}

MessageRemoveServerReplyV1 structure represents DRS_MSG_RMSVRREPLY_V1 RPC structure.

The DRS_MSG_RMSVRREPLY_V1 structure defines a response message received from the IDL_DRSRemoveDsServer method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageRemoveServerReplyV1) MarshalNDR

func (o *MessageRemoveServerReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageRemoveServerReplyV1) UnmarshalNDR

func (o *MessageRemoveServerReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageRemoveServerReply_V1

type MessageRemoveServerReply_V1 struct {
	// V1:  The version 1 response.
	V1 *MessageRemoveServerReplyV1 `idl:"name:V1" json:"v1"`
}

MessageRemoveServerReply_V1 structure represents DRS_MSG_RMSVRREPLY RPC union arm.

It has following labels: 1

func (*MessageRemoveServerReply_V1) MarshalNDR

func (*MessageRemoveServerReply_V1) UnmarshalNDR

func (o *MessageRemoveServerReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageRemoveServerRequest

type MessageRemoveServerRequest struct {
	// Types that are assignable to Value
	//
	// *MessageRemoveServerRequest_V1
	Value is_MessageRemoveServerRequest `json:"value"`
}

MessageRemoveServerRequest structure represents DRS_MSG_RMSVRREQ RPC union.

The DRS_MSG_RMSVRREQ union defines the request messages sent to the IDL_DRSRemoveDsServer method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageRemoveServerRequest) GetValue

func (o *MessageRemoveServerRequest) GetValue() any

func (*MessageRemoveServerRequest) MarshalUnionNDR

func (o *MessageRemoveServerRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageRemoveServerRequest) NDRSwitchValue

func (o *MessageRemoveServerRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageRemoveServerRequest) UnmarshalUnionNDR

func (o *MessageRemoveServerRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageRemoveServerRequestV1

type MessageRemoveServerRequestV1 struct {
	// ServerDN:  The DN of the server object of the DC to remove.
	ServerDN string `idl:"name:ServerDN;string" json:"server_dn"`
	// DomainDN:  The DN of the NC root of the domain that the DC to be removed belongs
	// to. Can be set to null if the client does not want the server to compute the value
	// of pmsgOut^.V1.fLastDCInDomain.
	DomainDN string `idl:"name:DomainDN;string" json:"domain_dn"`
	// fCommit:  True if the DC's metadata should actually be removed from the directory.
	// False if the metadata should not be removed. (This is used by a client that wants
	// to determine the value of pmsgOut^.V1.fLastDcInDomain without altering the directory.)
	Commit bool `idl:"name:fCommit" json:"commit"`
}

MessageRemoveServerRequestV1 structure represents DRS_MSG_RMSVRREQ_V1 RPC structure.

The DRS_MSG_RMSVRREQ_V1 structure defines a request message sent to the IDL_DRSRemoveDsServer method.

func (*MessageRemoveServerRequestV1) MarshalNDR

func (*MessageRemoveServerRequestV1) UnmarshalNDR

func (o *MessageRemoveServerRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageRemoveServerRequest_V1

type MessageRemoveServerRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageRemoveServerRequestV1 `idl:"name:V1" json:"v1"`
}

MessageRemoveServerRequest_V1 structure represents DRS_MSG_RMSVRREQ RPC union arm.

It has following labels: 1

func (*MessageRemoveServerRequest_V1) MarshalNDR

func (*MessageRemoveServerRequest_V1) UnmarshalNDR

func (o *MessageRemoveServerRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReplicaDemotionReply

type MessageReplicaDemotionReply struct {
	// Types that are assignable to Value
	//
	// *MessageReplicaDemotionReply_V1
	Value is_MessageReplicaDemotionReply `json:"value"`
}

MessageReplicaDemotionReply structure represents DRS_MSG_REPLICA_DEMOTIONREPLY RPC union.

The DRS_MSG_REPLICA_DEMOTIONREPLY union defines the response messages received from the IDL_DRSReplicaDemotion method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

V1: The version 1 reply.

func (*MessageReplicaDemotionReply) GetValue

func (o *MessageReplicaDemotionReply) GetValue() any

func (*MessageReplicaDemotionReply) MarshalUnionNDR

func (o *MessageReplicaDemotionReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReplicaDemotionReply) NDRSwitchValue

func (o *MessageReplicaDemotionReply) NDRSwitchValue(sw uint32) uint32

func (*MessageReplicaDemotionReply) UnmarshalUnionNDR

func (o *MessageReplicaDemotionReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReplicaDemotionReplyV1

type MessageReplicaDemotionReplyV1 struct {
	// dwOpError:  The Win32 error code, as specified in [MS-ERREF] section 2.2.
	OperationError uint32 `idl:"name:dwOpError" json:"operation_error"`
}

MessageReplicaDemotionReplyV1 structure represents DRS_MSG_REPLICA_DEMOTIONREPLY_V1 RPC structure.

The DRS_MSG_REPLICA_DEMOTIONREPLY_V1 structure defines a response message received from the IDL_DRSReplicaDemotion method.

func (*MessageReplicaDemotionReplyV1) MarshalNDR

func (*MessageReplicaDemotionReplyV1) UnmarshalNDR

func (o *MessageReplicaDemotionReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReplicaDemotionReply_V1

type MessageReplicaDemotionReply_V1 struct {
	V1 *MessageReplicaDemotionReplyV1 `idl:"name:V1" json:"v1"`
}

MessageReplicaDemotionReply_V1 structure represents DRS_MSG_REPLICA_DEMOTIONREPLY RPC union arm.

It has following labels: 1

func (*MessageReplicaDemotionReply_V1) MarshalNDR

func (*MessageReplicaDemotionReply_V1) UnmarshalNDR

type MessageReplicaDemotionRequest

type MessageReplicaDemotionRequest struct {
	// Types that are assignable to Value
	//
	// *MessageReplicaDemotionRequest_V1
	Value is_MessageReplicaDemotionRequest `json:"value"`
}

MessageReplicaDemotionRequest structure represents DRS_MSG_REPLICA_DEMOTIONREQ RPC union.

The DRS_MSG_REPLICA_DEMOTIONREQ union defines the request messages sent to the IDL_DRSReplicaDemotion method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageReplicaDemotionRequest) GetValue

func (o *MessageReplicaDemotionRequest) GetValue() any

func (*MessageReplicaDemotionRequest) MarshalUnionNDR

func (o *MessageReplicaDemotionRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReplicaDemotionRequest) NDRSwitchValue

func (o *MessageReplicaDemotionRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageReplicaDemotionRequest) UnmarshalUnionNDR

func (o *MessageReplicaDemotionRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReplicaDemotionRequestV1

type MessageReplicaDemotionRequestV1 struct {
	// dwFlags:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | X | X | T | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// uuidHelperDest:  Unused. Must be NULL GUID and ignored.
	HelperDestination *dtyp.UUID `idl:"name:uuidHelperDest" json:"helper_destination"`
	// pNC:  The DSNAME of the NC to replicate off.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
}

MessageReplicaDemotionRequestV1 structure represents DRS_MSG_REPLICA_DEMOTIONREQ_V1 RPC structure.

The DRS_MSG_REPLICA_DEMOTIONREQ_V1 structure defines a request message sent to the IDL_DRSReplicaDemotion method.

func (*MessageReplicaDemotionRequestV1) MarshalNDR

func (*MessageReplicaDemotionRequestV1) UnmarshalNDR

type MessageReplicaDemotionRequest_V1

type MessageReplicaDemotionRequest_V1 struct {
	// V1:  The version 1 request. Only one version is defined.
	V1 *MessageReplicaDemotionRequestV1 `idl:"name:V1" json:"v1"`
}

MessageReplicaDemotionRequest_V1 structure represents DRS_MSG_REPLICA_DEMOTIONREQ RPC union arm.

It has following labels: 1

func (*MessageReplicaDemotionRequest_V1) MarshalNDR

func (*MessageReplicaDemotionRequest_V1) UnmarshalNDR

type MessageReplicaSync

type MessageReplicaSync struct {
	// Types that are assignable to Value
	//
	// *MessageReplicaSync_V1
	// *MessageReplicaSync_V2
	Value is_MessageReplicaSync `json:"value"`
}

MessageReplicaSync structure represents DRS_MSG_REPSYNC RPC union.

The DRS_MSG_REPSYNC union defines the request messages sent to the IDL_DRSReplicaSync method. Only one version, identified by dwVersion = 1, is currently defined.

func (*MessageReplicaSync) GetValue

func (o *MessageReplicaSync) GetValue() any

func (*MessageReplicaSync) MarshalUnionNDR

func (o *MessageReplicaSync) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReplicaSync) NDRSwitchValue

func (o *MessageReplicaSync) NDRSwitchValue(sw uint32) uint32

func (*MessageReplicaSync) UnmarshalUnionNDR

func (o *MessageReplicaSync) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReplicaSyncV1

type MessageReplicaSyncV1 struct {
	// pNC:  A pointer to DSName of the root of an NC replica on the server.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// uuidDsaSrc:  The DSA GUID.
	DSASourceID *dtyp.UUID `idl:"name:uuidDsaSrc" json:"dsa_source_id"`
	// pszDsaSrc:  The transport-specific NetworkAddress of a DC.
	DSASource string `idl:"name:pszDsaSrc;string;pointer:unique" json:"dsa_source"`
	// ulOptions:  The DRS_OPTIONS flags.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageReplicaSyncV1 structure represents DRS_MSG_REPSYNC_V1 RPC structure.

The DRS_MSG_REPSYNC_V1 structure defines a request message sent to the IDL_DRSReplicaSync method.

func (*MessageReplicaSyncV1) MarshalNDR

func (o *MessageReplicaSyncV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReplicaSyncV1) UnmarshalNDR

func (o *MessageReplicaSyncV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReplicaSyncV2

type MessageReplicaSyncV2 struct {
	NC             *DSName                   `idl:"name:pNC;pointer:ref" json:"nc"`
	DSASourceID    *dtyp.UUID                `idl:"name:uuidDsaSrc" json:"dsa_source_id"`
	DSASource      string                    `idl:"name:pszDsaSrc;string;pointer:unique" json:"dsa_source"`
	Options        uint32                    `idl:"name:ulOptions" json:"options"`
	CorrelationID  *dtyp.GUID                `idl:"name:correlationID" json:"correlation_id"`
	ReservedBuffer *VarSizeBufferWithVersion `idl:"name:pReservedBuffer;pointer:unique" json:"reserved_buffer"`
}

MessageReplicaSyncV2 structure represents DRS_MSG_REPSYNC_V2 RPC structure.

func (*MessageReplicaSyncV2) MarshalNDR

func (o *MessageReplicaSyncV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReplicaSyncV2) UnmarshalNDR

func (o *MessageReplicaSyncV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReplicaSync_V1

type MessageReplicaSync_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageReplicaSyncV1 `idl:"name:V1" json:"v1"`
}

MessageReplicaSync_V1 structure represents DRS_MSG_REPSYNC RPC union arm.

It has following labels: 1

func (*MessageReplicaSync_V1) MarshalNDR

func (o *MessageReplicaSync_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReplicaSync_V1) UnmarshalNDR

func (o *MessageReplicaSync_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReplicaSync_V2

type MessageReplicaSync_V2 struct {
	// V2:  The version 2 request.
	V2 *MessageReplicaSyncV2 `idl:"name:V2" json:"v2"`
}

MessageReplicaSync_V2 structure represents DRS_MSG_REPSYNC RPC union arm.

It has following labels: 2

func (*MessageReplicaSync_V2) MarshalNDR

func (o *MessageReplicaSync_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageReplicaSync_V2) UnmarshalNDR

func (o *MessageReplicaSync_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageReverseMembershipReply

type MessageReverseMembershipReply struct {
	// Types that are assignable to Value
	//
	// *MessageReverseMembershipReply_V1
	Value is_MessageReverseMembershipReply `json:"value"`
}

MessageReverseMembershipReply structure represents DRS_MSG_REVMEMB_REPLY RPC union.

The DRS_MSG_REVMEMB_REPLY union defines the response messages received from the IDL_DRSGetMemberships method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageReverseMembershipReply) GetValue

func (o *MessageReverseMembershipReply) GetValue() any

func (*MessageReverseMembershipReply) MarshalUnionNDR

func (o *MessageReverseMembershipReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReverseMembershipReply) NDRSwitchValue

func (o *MessageReverseMembershipReply) NDRSwitchValue(sw uint32) uint32

func (*MessageReverseMembershipReply) UnmarshalUnionNDR

func (o *MessageReverseMembershipReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReverseMembershipReplyV1

type MessageReverseMembershipReplyV1 struct {
	// errCode:  0 on success. On failure, this can be one of the following.
	//
	//	+------------------------------------------+----------------------------------------------------------------------------------+
	//	|                                          |                                                                                  |
	//	|                  VALUE                   |                                     MEANING                                      |
	//	|                                          |                                                                                  |
	//	+------------------------------------------+----------------------------------------------------------------------------------+
	//	+------------------------------------------+----------------------------------------------------------------------------------+
	//	| STATUS_INSUFFICIENT_RESOURCES 0xC000009A | Insufficient system resources exist to complete the request.                     |
	//	+------------------------------------------+----------------------------------------------------------------------------------+
	//	| STATUS_TOO_MANY_CONTEXT_IDS 0xC000015A   | The number of groups is greater than the number that can be returned to the      |
	//	|                                          | caller.                                                                          |
	//	+------------------------------------------+----------------------------------------------------------------------------------+
	ErrorCode uint32 `idl:"name:errCode" json:"error_code"`
	// cDsNames:  Count of items in the ppDsNames array.
	DSNamesCount uint32 `idl:"name:cDsNames" json:"ds_names_count"`
	// cSidHistory:  Count of items in the ppSidHistory array.
	SIDHistoryCount uint32 `idl:"name:cSidHistory" json:"sid_history_count"`
	// ppDsNames:  The filtered group membership. This list contains the combined membership
	// for all the names specified in ppDsNames field of the input DRS_MSG_REVMEMB_REQ_V1
	// structure.
	DSNames []*DSName `idl:"name:ppDsNames;size_is:(cDsNames, )" json:"ds_names"`
	// pAttributes:  Properties of the returned groups. Values are chosen from SE_GROUP
	// values.
	Attributes []uint32 `idl:"name:pAttributes;size_is:(cDsNames)" json:"attributes"`
	// ppSidHistory:  SID history of the returned groups.
	SIDHistory []*NT4SID `idl:"name:ppSidHistory;size_is:(cSidHistory, )" json:"sid_history"`
}

MessageReverseMembershipReplyV1 structure represents DRS_MSG_REVMEMB_REPLY_V1 RPC structure.

The DRS_MSG_REVMEMB_REPLY_V1 structure defines the response message received from the IDL_DRSGetMemberships method.

func (*MessageReverseMembershipReplyV1) MarshalNDR

func (*MessageReverseMembershipReplyV1) UnmarshalNDR

type MessageReverseMembershipReply_V1

type MessageReverseMembershipReply_V1 struct {
	// V1:  Version 1 reply.
	V1 *MessageReverseMembershipReplyV1 `idl:"name:V1" json:"v1"`
}

MessageReverseMembershipReply_V1 structure represents DRS_MSG_REVMEMB_REPLY RPC union arm.

It has following labels: 1

func (*MessageReverseMembershipReply_V1) MarshalNDR

func (*MessageReverseMembershipReply_V1) UnmarshalNDR

type MessageReverseMembershipRequest

type MessageReverseMembershipRequest struct {
	// Types that are assignable to Value
	//
	// *MessageReverseMembershipRequest_V1
	Value is_MessageReverseMembershipRequest `json:"value"`
}

MessageReverseMembershipRequest structure represents DRS_MSG_REVMEMB_REQ RPC union.

The DRS_MSG_REVMEMB_REQ union defines the request messages sent to the IDL_DRSGetMemberships method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageReverseMembershipRequest) GetValue

func (o *MessageReverseMembershipRequest) GetValue() any

func (*MessageReverseMembershipRequest) MarshalUnionNDR

func (o *MessageReverseMembershipRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageReverseMembershipRequest) NDRSwitchValue

func (o *MessageReverseMembershipRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageReverseMembershipRequest) UnmarshalUnionNDR

func (o *MessageReverseMembershipRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageReverseMembershipRequestV1

type MessageReverseMembershipRequestV1 struct {
	// cDsNames:  The count of items in the ppDsNames array.
	DSNamesCount uint32 `idl:"name:cDsNames" json:"ds_names_count"`
	// ppDsNames:  The DSName of the object whose reverse membership is being requested,
	// plus the DSNames of groups of the appropriate type(s) of which it is already known
	// to be a member.
	DSNames []*DSName `idl:"name:ppDsNames;size_is:(cDsNames, )" json:"ds_names"`
	// dwFlags:  Zero or more of the following bit flags, which are presented in little-endian
	// byte order.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | X | X | A | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// OperationType: The type of group membership evaluation to be performed.
	OperationType ReverseMembershipOperationType `idl:"name:OperationType" json:"operation_type"`
	// pLimitingDomain: Domain filter; resulting objects that are not from this domain are
	// neither returned nor followed transitively.
	LimitingDomain *DSName `idl:"name:pLimitingDomain" json:"limiting_domain"`
}

MessageReverseMembershipRequestV1 structure represents DRS_MSG_REVMEMB_REQ_V1 RPC structure.

The DRS_MSG_REVMEMB_REQ_V1 structure defines the request message sent to the IDL_DRSGetMemberships method.

func (*MessageReverseMembershipRequestV1) MarshalNDR

func (*MessageReverseMembershipRequestV1) UnmarshalNDR

type MessageReverseMembershipRequest_V1

type MessageReverseMembershipRequest_V1 struct {
	// V1:  Version 1 request. Currently only one version is defined.
	V1 *MessageReverseMembershipRequestV1 `idl:"name:V1" json:"v1"`
}

MessageReverseMembershipRequest_V1 structure represents DRS_MSG_REVMEMB_REQ RPC union arm.

It has following labels: 1

func (*MessageReverseMembershipRequest_V1) MarshalNDR

func (*MessageReverseMembershipRequest_V1) UnmarshalNDR

type MessageUpdateReferences

type MessageUpdateReferences struct {
	// Types that are assignable to Value
	//
	// *MessageUpdateReferences_V1
	// *MessageUpdateReferences_V2
	Value is_MessageUpdateReferences `json:"value"`
}

MessageUpdateReferences structure represents DRS_MSG_UPDREFS RPC union.

The DRS_MSG_UPDREFS union defines the request message versions sent to the IDL_DRSUpdateRefs method. Only one version, identified by dwVersion = 1, is currently defined.

func (*MessageUpdateReferences) GetValue

func (o *MessageUpdateReferences) GetValue() any

func (*MessageUpdateReferences) MarshalUnionNDR

func (o *MessageUpdateReferences) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageUpdateReferences) NDRSwitchValue

func (o *MessageUpdateReferences) NDRSwitchValue(sw uint32) uint32

func (*MessageUpdateReferences) UnmarshalUnionNDR

func (o *MessageUpdateReferences) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageUpdateReferencesV1

type MessageUpdateReferencesV1 struct {
	// pNC:  A pointer to the DSNAME of the root of an NC replica on the server.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// pszDsaDest:  The transport-specific NetworkAddress of a DC.
	DSADestination string `idl:"name:pszDsaDest;string;pointer:ref" json:"dsa_destination"`
	// uuidDsaObjDest:  The DSA GUID.
	DSAObjectDestination *dtyp.UUID `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	// ulOptions:  The DRS_OPTIONS that control the update.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageUpdateReferencesV1 structure represents DRS_MSG_UPDREFS_V1 RPC structure.

The DRS_MSG_UPDREFS_V1 structure defines a request message sent to the IDL_DRSUpdateRefs method.

func (*MessageUpdateReferencesV1) MarshalNDR

func (o *MessageUpdateReferencesV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageUpdateReferencesV1) UnmarshalNDR

func (o *MessageUpdateReferencesV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageUpdateReferencesV2

type MessageUpdateReferencesV2 struct {
	NC                   *DSName                   `idl:"name:pNC;pointer:ref" json:"nc"`
	DSADestination       string                    `idl:"name:pszDsaDest;string;pointer:ref" json:"dsa_destination"`
	DSAObjectDestination *dtyp.UUID                `idl:"name:uuidDsaObjDest" json:"dsa_object_destination"`
	Options              uint32                    `idl:"name:ulOptions" json:"options"`
	CorrelationID        *dtyp.GUID                `idl:"name:correlationID" json:"correlation_id"`
	ReservedBuffer       *VarSizeBufferWithVersion `idl:"name:pReservedBuffer;pointer:unique" json:"reserved_buffer"`
}

MessageUpdateReferencesV2 structure represents DRS_MSG_UPDREFS_V2 RPC structure.

func (*MessageUpdateReferencesV2) MarshalNDR

func (o *MessageUpdateReferencesV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageUpdateReferencesV2) UnmarshalNDR

func (o *MessageUpdateReferencesV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageUpdateReferences_V1

type MessageUpdateReferences_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageUpdateReferencesV1 `idl:"name:V1" json:"v1"`
}

MessageUpdateReferences_V1 structure represents DRS_MSG_UPDREFS RPC union arm.

It has following labels: 1

func (*MessageUpdateReferences_V1) MarshalNDR

func (o *MessageUpdateReferences_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageUpdateReferences_V1) UnmarshalNDR

func (o *MessageUpdateReferences_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageUpdateReferences_V2

type MessageUpdateReferences_V2 struct {
	// V2:  The version 2 request.
	V2 *MessageUpdateReferencesV2 `idl:"name:V2" json:"v2"`
}

MessageUpdateReferences_V2 structure represents DRS_MSG_UPDREFS RPC union arm.

It has following labels: 2

func (*MessageUpdateReferences_V2) MarshalNDR

func (o *MessageUpdateReferences_V2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageUpdateReferences_V2) UnmarshalNDR

func (o *MessageUpdateReferences_V2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageVerifyReply

type MessageVerifyReply struct {
	// Types that are assignable to Value
	//
	// *MessageVerifyReply_V1
	Value is_MessageVerifyReply `json:"value"`
}

MessageVerifyReply structure represents DRS_MSG_VERIFYREPLY RPC union.

The DRS_MSG_VERIFYREPLY union defines the response messages received from the IDL_DRSVerifyNames method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageVerifyReply) GetValue

func (o *MessageVerifyReply) GetValue() any

func (*MessageVerifyReply) MarshalUnionNDR

func (o *MessageVerifyReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageVerifyReply) NDRSwitchValue

func (o *MessageVerifyReply) NDRSwitchValue(sw uint32) uint32

func (*MessageVerifyReply) UnmarshalUnionNDR

func (o *MessageVerifyReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageVerifyReplyObject

type MessageVerifyReplyObject struct {
	// Types that are assignable to Value
	//
	// *MessageVerifyReplyObject_V1
	Value is_MessageVerifyReplyObject `json:"value"`
}

MessageVerifyReplyObject structure represents DRS_MSG_REPVERIFYOBJ RPC union.

The DRS_MSG_REPVERIFYOBJ union defines the request messages sent to the IDL_DRSReplicaVerifyObjects method. Only one version, identified by dwVersion = 1, is currently defined.

func (*MessageVerifyReplyObject) GetValue

func (o *MessageVerifyReplyObject) GetValue() any

func (*MessageVerifyReplyObject) MarshalUnionNDR

func (o *MessageVerifyReplyObject) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageVerifyReplyObject) NDRSwitchValue

func (o *MessageVerifyReplyObject) NDRSwitchValue(sw uint32) uint32

func (*MessageVerifyReplyObject) UnmarshalUnionNDR

func (o *MessageVerifyReplyObject) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageVerifyReplyObjectV1

type MessageVerifyReplyObjectV1 struct {
	// pNC:  The NC to verify.
	NC *DSName `idl:"name:pNC;pointer:ref" json:"nc"`
	// uuidDsaSrc:  The objectGUID of the nTDSDSA object for the reference DC.
	DSASourceID *dtyp.UUID `idl:"name:uuidDsaSrc" json:"dsa_source_id"`
	// ulOptions:  0 to expunge each object that is not verified, or 1 to log an event that
	// identifies each such object.
	Options uint32 `idl:"name:ulOptions" json:"options"`
}

MessageVerifyReplyObjectV1 structure represents DRS_MSG_REPVERIFYOBJ_V1 RPC structure.

The DRS_MSG_REPVERIFYOBJ_V1 structure defines a request message sent to the IDL_DRSReplicaVerifyObjects method.

func (*MessageVerifyReplyObjectV1) MarshalNDR

func (o *MessageVerifyReplyObjectV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageVerifyReplyObjectV1) UnmarshalNDR

func (o *MessageVerifyReplyObjectV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageVerifyReplyObject_V1

type MessageVerifyReplyObject_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageVerifyReplyObjectV1 `idl:"name:V1" json:"v1"`
}

MessageVerifyReplyObject_V1 structure represents DRS_MSG_REPVERIFYOBJ RPC union arm.

It has following labels: 1

func (*MessageVerifyReplyObject_V1) MarshalNDR

func (*MessageVerifyReplyObject_V1) UnmarshalNDR

func (o *MessageVerifyReplyObject_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageVerifyReplyV1

type MessageVerifyReplyV1 struct {
	// error:  Unused. MUST be 0 and ignored.
	Error uint32 `idl:"name:error" json:"error"`
	// cNames:  The number of items in the rpEntInf array.
	NamesCount uint32 `idl:"name:cNames" json:"names_count"`
	// rpEntInf:  An array of ENTINF structures that contain the attributes requested in
	// the RequiredAttrs field of the input DRS_MSG_VERIFYREQ_V1 structure if the corresponding
	// name is verified.
	EntityInfo []*EntityInfo `idl:"name:rpEntInf;size_is:(cNames)" json:"entity_info"`
	// PrefixTable:  The prefix table used to translate ATTRTYP values in the response to
	// OIDs.
	PrefixTable *SchemaPrefixTable `idl:"name:PrefixTable" json:"prefix_table"`
}

MessageVerifyReplyV1 structure represents DRS_MSG_VERIFYREPLY_V1 RPC structure.

The DRS_MSG_VERIFYREPLY_V1 structure defines a response message received from the IDL_DRSVerifyNames method.

func (*MessageVerifyReplyV1) MarshalNDR

func (o *MessageVerifyReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageVerifyReplyV1) UnmarshalNDR

func (o *MessageVerifyReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageVerifyReply_V1

type MessageVerifyReply_V1 struct {
	// V1:  The version 1 reply.
	V1 *MessageVerifyReplyV1 `idl:"name:V1" json:"v1"`
}

MessageVerifyReply_V1 structure represents DRS_MSG_VERIFYREPLY RPC union arm.

It has following labels: 1

func (*MessageVerifyReply_V1) MarshalNDR

func (o *MessageVerifyReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageVerifyReply_V1) UnmarshalNDR

func (o *MessageVerifyReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageVerifyRequest

type MessageVerifyRequest struct {
	// Types that are assignable to Value
	//
	// *MessageVerifyRequest_V1
	Value is_MessageVerifyRequest `json:"value"`
}

MessageVerifyRequest structure represents DRS_MSG_VERIFYREQ RPC union.

The DRS_MSG_VERIFYREQ union defines the request messages sent to the IDL_DRSVerifyNames method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageVerifyRequest) GetValue

func (o *MessageVerifyRequest) GetValue() any

func (*MessageVerifyRequest) MarshalUnionNDR

func (o *MessageVerifyRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageVerifyRequest) NDRSwitchValue

func (o *MessageVerifyRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageVerifyRequest) UnmarshalUnionNDR

func (o *MessageVerifyRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageVerifyRequestV1

type MessageVerifyRequestV1 struct {
	// dwFlags:  The type of name to be verified; MUST have one of the following values:
	//
	//	+-----------------------------------------+----------------------------------------+
	//	|                                         |                                        |
	//	|                  VALUE                  |                MEANING                 |
	//	|                                         |                                        |
	//	+-----------------------------------------+----------------------------------------+
	//	+-----------------------------------------+----------------------------------------+
	//	| DRS_VERIFY_DSNAMES 0x00000000           | Verify DSName values.                  |
	//	+-----------------------------------------+----------------------------------------+
	//	| DRS_VERIFY_SIDS 0x00000001              | Verify objectSid values.               |
	//	+-----------------------------------------+----------------------------------------+
	//	| DRS_VERIFY_SAM_ACCOUNT_NAMES 0x00000002 | Verify sAMAccountName values.          |
	//	+-----------------------------------------+----------------------------------------+
	//	| DRS_VERIFY_FPOS 0x00000003              | Verify foreign principal object names. |
	//	+-----------------------------------------+----------------------------------------+
	Flags uint32 `idl:"name:dwFlags" json:"flags"`
	// cNames:  The number of items in the rpNames array.
	NamesCount uint32 `idl:"name:cNames" json:"names_count"`
	// rpNames:  An array of pointers to DSNames that need to be verified.
	Names []*DSName `idl:"name:rpNames;size_is:(cNames)" json:"names"`
	// RequiredAttrs:  The list of attributes to be retrieved for each name that is verified.
	RequiredAttrs *AttributeBlock `idl:"name:RequiredAttrs" json:"required_attrs"`
	// PrefixTable:  The prefix table used to translate ATTRTYP values in RequiredAttrs
	// to OID values.
	PrefixTable *SchemaPrefixTable `idl:"name:PrefixTable" json:"prefix_table"`
}

MessageVerifyRequestV1 structure represents DRS_MSG_VERIFYREQ_V1 RPC structure.

The DRS_MSG_VERIFYREQ_V1 structure defines a request message sent to the IDL_DRSVerifyNames method.

func (*MessageVerifyRequestV1) MarshalNDR

func (o *MessageVerifyRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageVerifyRequestV1) UnmarshalNDR

func (o *MessageVerifyRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageVerifyRequest_V1

type MessageVerifyRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageVerifyRequestV1 `idl:"name:V1" json:"v1"`
}

MessageVerifyRequest_V1 structure represents DRS_MSG_VERIFYREQ RPC union arm.

It has following labels: 1

func (*MessageVerifyRequest_V1) MarshalNDR

func (o *MessageVerifyRequest_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageVerifyRequest_V1) UnmarshalNDR

func (o *MessageVerifyRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteNGCKeyReply

type MessageWriteNGCKeyReply struct {
	// Types that are assignable to Value
	//
	// *MessageWriteNGCKeyReply_V1
	Value is_MessageWriteNGCKeyReply `json:"value"`
}

MessageWriteNGCKeyReply structure represents DRS_MSG_WRITENGCKEYREPLY RPC union.

func (*MessageWriteNGCKeyReply) GetValue

func (o *MessageWriteNGCKeyReply) GetValue() any

func (*MessageWriteNGCKeyReply) MarshalUnionNDR

func (o *MessageWriteNGCKeyReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageWriteNGCKeyReply) NDRSwitchValue

func (o *MessageWriteNGCKeyReply) NDRSwitchValue(sw uint32) uint32

func (*MessageWriteNGCKeyReply) UnmarshalUnionNDR

func (o *MessageWriteNGCKeyReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageWriteNGCKeyReplyV1

type MessageWriteNGCKeyReplyV1 struct {
	ReturnValue uint32 `idl:"name:retVal" json:"return_value"`
}

MessageWriteNGCKeyReplyV1 structure represents DRS_MSG_WRITENGCKEYREPLY_V1 RPC structure.

func (*MessageWriteNGCKeyReplyV1) MarshalNDR

func (o *MessageWriteNGCKeyReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageWriteNGCKeyReplyV1) UnmarshalNDR

func (o *MessageWriteNGCKeyReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteNGCKeyReply_V1

type MessageWriteNGCKeyReply_V1 struct {
	V1 *MessageWriteNGCKeyReplyV1 `idl:"name:V1" json:"v1"`
}

MessageWriteNGCKeyReply_V1 structure represents DRS_MSG_WRITENGCKEYREPLY RPC union arm.

It has following labels: 1

func (*MessageWriteNGCKeyReply_V1) MarshalNDR

func (o *MessageWriteNGCKeyReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageWriteNGCKeyReply_V1) UnmarshalNDR

func (o *MessageWriteNGCKeyReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteNGCKeyRequest

type MessageWriteNGCKeyRequest struct {
	// Types that are assignable to Value
	//
	// *MessageWriteNGCKeyRequest_V1
	Value is_MessageWriteNGCKeyRequest `json:"value"`
}

MessageWriteNGCKeyRequest structure represents DRS_MSG_WRITENGCKEYREQ RPC union.

func (*MessageWriteNGCKeyRequest) GetValue

func (o *MessageWriteNGCKeyRequest) GetValue() any

func (*MessageWriteNGCKeyRequest) MarshalUnionNDR

func (o *MessageWriteNGCKeyRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageWriteNGCKeyRequest) NDRSwitchValue

func (o *MessageWriteNGCKeyRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageWriteNGCKeyRequest) UnmarshalUnionNDR

func (o *MessageWriteNGCKeyRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageWriteNGCKeyRequestV1

type MessageWriteNGCKeyRequestV1 struct {
	Account     string `idl:"name:pwszAccount;string" json:"account"`
	NGCKeyCount uint32 `idl:"name:cNgcKey" json:"ngc_key_count"`
	NGCKey      []byte `idl:"name:pNgcKey;size_is:(cNgcKey)" json:"ngc_key"`
}

MessageWriteNGCKeyRequestV1 structure represents DRS_MSG_WRITENGCKEYREQ_V1 RPC structure.

func (*MessageWriteNGCKeyRequestV1) MarshalNDR

func (*MessageWriteNGCKeyRequestV1) UnmarshalNDR

func (o *MessageWriteNGCKeyRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteNGCKeyRequest_V1

type MessageWriteNGCKeyRequest_V1 struct {
	V1 *MessageWriteNGCKeyRequestV1 `idl:"name:V1" json:"v1"`
}

MessageWriteNGCKeyRequest_V1 structure represents DRS_MSG_WRITENGCKEYREQ RPC union arm.

It has following labels: 1

func (*MessageWriteNGCKeyRequest_V1) MarshalNDR

func (*MessageWriteNGCKeyRequest_V1) UnmarshalNDR

func (o *MessageWriteNGCKeyRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteSPNReply

type MessageWriteSPNReply struct {
	// Types that are assignable to Value
	//
	// *MessageWriteSPNReply_V1
	Value is_MessageWriteSPNReply `json:"value"`
}

MessageWriteSPNReply structure represents DRS_MSG_SPNREPLY RPC union.

The DRS_MSG_SPNREPLY union defines the response messages received from the IDL_DRSWriteSPN method. Only one version, identified by pdwOutVersion^ = 1, is currently defined.

func (*MessageWriteSPNReply) GetValue

func (o *MessageWriteSPNReply) GetValue() any

func (*MessageWriteSPNReply) MarshalUnionNDR

func (o *MessageWriteSPNReply) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageWriteSPNReply) NDRSwitchValue

func (o *MessageWriteSPNReply) NDRSwitchValue(sw uint32) uint32

func (*MessageWriteSPNReply) UnmarshalUnionNDR

func (o *MessageWriteSPNReply) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageWriteSPNReplyV1

type MessageWriteSPNReplyV1 struct {
	// retVal:  0, or a Windows error code.
	ReturnValue uint32 `idl:"name:retVal" json:"return_value"`
}

MessageWriteSPNReplyV1 structure represents DRS_MSG_SPNREPLY_V1 RPC structure.

The DRS_MSG_SPNREPLY_V1 structure defines a response message received from the IDL_DRSWriteSPN method.

func (*MessageWriteSPNReplyV1) MarshalNDR

func (o *MessageWriteSPNReplyV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageWriteSPNReplyV1) UnmarshalNDR

func (o *MessageWriteSPNReplyV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteSPNReply_V1

type MessageWriteSPNReply_V1 struct {
	// V1:  The version 1 response.
	V1 *MessageWriteSPNReplyV1 `idl:"name:V1" json:"v1"`
}

MessageWriteSPNReply_V1 structure represents DRS_MSG_SPNREPLY RPC union arm.

It has following labels: 1

func (*MessageWriteSPNReply_V1) MarshalNDR

func (o *MessageWriteSPNReply_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageWriteSPNReply_V1) UnmarshalNDR

func (o *MessageWriteSPNReply_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteSPNRequest

type MessageWriteSPNRequest struct {
	// Types that are assignable to Value
	//
	// *MessageWriteSPNRequest_V1
	Value is_MessageWriteSPNRequest `json:"value"`
}

MessageWriteSPNRequest structure represents DRS_MSG_SPNREQ RPC union.

The DRS_MSG_SPNREQ union defines the request messages sent to the IDL_DRSWriteSPN method. Only one version, identified by dwInVersion = 1, is currently defined.

func (*MessageWriteSPNRequest) GetValue

func (o *MessageWriteSPNRequest) GetValue() any

func (*MessageWriteSPNRequest) MarshalUnionNDR

func (o *MessageWriteSPNRequest) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error

func (*MessageWriteSPNRequest) NDRSwitchValue

func (o *MessageWriteSPNRequest) NDRSwitchValue(sw uint32) uint32

func (*MessageWriteSPNRequest) UnmarshalUnionNDR

func (o *MessageWriteSPNRequest) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error

type MessageWriteSPNRequestV1

type MessageWriteSPNRequestV1 struct {
	// operation:  The SPN operation to perform. MUST be one of the DS_SPN_OPERATION values.
	Operation uint32 `idl:"name:operation" json:"operation"`
	// flags:  Unused. MUST be 0 and ignored.
	Flags uint32 `idl:"name:flags" json:"flags"`
	// pwszAccount:  The DN of the object to modify.
	Account string `idl:"name:pwszAccount;string" json:"account"`
	// cSPN:  The number of items in the rpwszSPN array.
	SPNCount uint32 `idl:"name:cSPN" json:"spn_count"`
	// rpwszSPN:  The SPN values.
	SPN []string `idl:"name:rpwszSPN;size_is:(cSPN);string" json:"spn"`
}

MessageWriteSPNRequestV1 structure represents DRS_MSG_SPNREQ_V1 RPC structure.

The DRS_MSG_SPNREQ_V1 structure defines a request message sent to the IDL_DRSWriteSPN method.

func (*MessageWriteSPNRequestV1) MarshalNDR

func (o *MessageWriteSPNRequestV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageWriteSPNRequestV1) UnmarshalNDR

func (o *MessageWriteSPNRequestV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type MessageWriteSPNRequest_V1

type MessageWriteSPNRequest_V1 struct {
	// V1:  The version 1 request.
	V1 *MessageWriteSPNRequestV1 `idl:"name:V1" json:"v1"`
}

MessageWriteSPNRequest_V1 structure represents DRS_MSG_SPNREQ RPC union arm.

It has following labels: 1

func (*MessageWriteSPNRequest_V1) MarshalNDR

func (o *MessageWriteSPNRequest_V1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*MessageWriteSPNRequest_V1) UnmarshalNDR

func (o *MessageWriteSPNRequest_V1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ModifyReplicaRequest

type ModifyReplicaRequest struct {
	// hDrs: The RPC context handle returned by IDL_DRSBind.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwVersion: The version of the request message.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// pmsgMod: A pointer to the request message.
	Modify *MessageModifyReplica `idl:"name:pmsgMod;switch_is:dwVersion;pointer:ref" json:"modify"`
}

ModifyReplicaRequest structure represents the IDL_DRSReplicaModify operation request

func (*ModifyReplicaRequest) MarshalNDR

func (o *ModifyReplicaRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ModifyReplicaRequest) UnmarshalNDR

func (o *ModifyReplicaRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ModifyReplicaResponse

type ModifyReplicaResponse struct {
	// Return: The IDL_DRSReplicaModify return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

ModifyReplicaResponse structure represents the IDL_DRSReplicaModify operation response

func (*ModifyReplicaResponse) MarshalNDR

func (o *ModifyReplicaResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ModifyReplicaResponse) UnmarshalNDR

func (o *ModifyReplicaResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type NT4ReplicationState

type NT4ReplicationState struct {
	// SamSerialNumber:  The Windows NT 4.0 replication update sequence number for the SAM
	// database.
	SAMSerialNumber *dtyp.LargeInteger `idl:"name:SamSerialNumber" json:"sam_serial_number"`
	// SamCreationTime:  The time at which the Windows NT 4.0 replication update sequence
	// number for the SAM database was set to 1.
	SAMCreationTime *dtyp.LargeInteger `idl:"name:SamCreationTime" json:"sam_creation_time"`
	// BuiltinSerialNumber:  The Windows NT 4.0 replication update sequence number for the
	// built-in database.
	BuiltinSerialNumber *dtyp.LargeInteger `idl:"name:BuiltinSerialNumber" json:"builtin_serial_number"`
	// BuiltinCreationTime:  The time at which the Windows NT 4.0 replication update sequence
	// number for the built-in database was set to 1.
	BuiltinCreationTime *dtyp.LargeInteger `idl:"name:BuiltinCreationTime" json:"builtin_creation_time"`
	// LsaSerialNumber:  The Windows NT 4.0 replication update sequence number for the local
	// security authority (LSA) database.
	LSASerialNumber *dtyp.LargeInteger `idl:"name:LsaSerialNumber" json:"lsa_serial_number"`
	// LsaCreationTime:  The time at which the Windows NT 4.0 replication update sequence
	// number for the LSA database was set to 1.
	LSACreationTime *dtyp.LargeInteger `idl:"name:LsaCreationTime" json:"lsa_creation_time"`
}

NT4ReplicationState structure represents NT4_REPLICATION_STATE RPC structure.

The NT4_REPLICATION_STATE structure defines the replication state for Windows NT 4.0 operating system DCs, whose interpretation is specified in [MS-ADTS] section 3.1.1.7.1.

func (*NT4ReplicationState) MarshalNDR

func (o *NT4ReplicationState) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*NT4ReplicationState) UnmarshalNDR

func (o *NT4ReplicationState) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type NT4SID

type NT4SID struct {
	// Data:  Bytes that make up a SID structure, as specified in [MS-DTYP] section 2.4.2,
	// in little-endian byte order.
	Data []byte `idl:"name:Data" json:"data"`
}

NT4SID structure represents NT4SID RPC structure.

The NT4SID structure defines a concrete type for a SID.

func (*NT4SID) IsZero added in v1.0.2

func (o *NT4SID) IsZero() bool

IsZero returns true if the NT4SID is nil or all zeros.

func (*NT4SID) MarshalJSON added in v1.0.2

func (o *NT4SID) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaler interface.

func (*NT4SID) MarshalNDR

func (o *NT4SID) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*NT4SID) SID added in v1.0.2

func (o *NT4SID) SID() (*dtyp.SID, error)

SID returns the SID from the NT4SID.

func (*NT4SID) UnmarshalNDR

func (o *NT4SID) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type NameError

type NameError struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
	// pMatched:  The best match for the supplied object identity.
	Matched *DSName `idl:"name:pMatched" json:"matched"`
}

NameError structure represents NAMERR_DRS_WIRE_V1 RPC structure.

The NAMERR_DRS_WIRE_V1 structure defines a name resolution error.

func (*NameError) MarshalNDR

func (o *NameError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*NameError) UnmarshalNDR

func (o *NameError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type NameResolutionOperation

type NameResolutionOperation struct {
	// nameRes:  MUST be the uppercase ASCII character "S".
	NameResolution uint8 `idl:"name:nameRes" json:"name_resolution"`

	// nextRDN:  Unused. MUST be 0 and ignored.
	NextRDN uint16 `idl:"name:nextRDN" json:"next_rdn"`
	// contains filtered or unexported fields
}

NameResolutionOperation structure represents NAMERESOP_DRS_WIRE_V1 RPC structure.

The NAMERESOP_DRS_WIRE_V1 structure defines the state of name resolution.

func (*NameResolutionOperation) MarshalNDR

func (o *NameResolutionOperation) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*NameResolutionOperation) UnmarshalNDR

func (o *NameResolutionOperation) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type OID

type OID struct {
	// length:  The size, in bytes, of the elements array.
	Length uint32 `idl:"name:length" json:"length"`
	// elements:  An array of bytes that constitute an OID or a prefix of an OID.
	Elements []byte `idl:"name:elements;size_is:(length)" json:"elements"`
}

OID structure represents OID_t RPC structure.

The OID_t structure defines a concrete type for an OID or a prefix of an OID; it is a component of type PrefixTableEntry.

func (*OID) MarshalNDR

func (o *OID) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*OID) UnmarshalNDR

func (o *OID) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type PartialAttributeVectorV1Ext

type PartialAttributeVectorV1Ext struct {
	// dwVersion:  The version of this structure; MUST be 1.
	Version uint32 `idl:"name:dwVersion" json:"version"`

	// cAttrs:  The number of attributes in the rgPartialAttr array.
	AttrsCount uint32 `idl:"name:cAttrs" json:"attrs_count"`
	// rgPartialAttr:  The attributes in the set.
	PartialAttribute []uint32 `idl:"name:rgPartialAttr;size_is:(cAttrs)" json:"partial_attribute"`
	// contains filtered or unexported fields
}

PartialAttributeVectorV1Ext structure represents PARTIAL_ATTR_VECTOR_V1_EXT RPC structure.

The PARTIAL_ATTR_VECTOR_V1_EXT structure defines a concrete type for a set of attributes to be replicated to a given partial replica.

func (*PartialAttributeVectorV1Ext) MarshalNDR

func (*PartialAttributeVectorV1Ext) NDRSizeInfo

func (o *PartialAttributeVectorV1Ext) NDRSizeInfo() []uint64

func (*PartialAttributeVectorV1Ext) UnmarshalNDR

func (o *PartialAttributeVectorV1Ext) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type PrefixTable added in v1.0.2

type PrefixTable map[uint32][]byte

func (PrefixTable) AttributeToOID added in v1.0.2

func (o PrefixTable) AttributeToOID(attrType uint32) (asn1.ObjectIdentifier, error)

type PrefixTableEntry

type PrefixTableEntry struct {
	// ndx:  The index assigned to the prefix.
	Index uint32 `idl:"name:ndx" json:"index"`
	// prefix:  An OID or a prefix of an OID.
	Prefix *OID `idl:"name:prefix" json:"prefix"`
}

PrefixTableEntry structure represents PrefixTableEntry RPC structure.

The PrefixTableEntry structure defines a concrete type for mapping a range of ATTRTYP values to and from OIDs. It is a component of the type SCHEMA_PREFIX_TABLE.

func (*PrefixTableEntry) MarshalNDR

func (o *PrefixTableEntry) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PrefixTableEntry) UnmarshalNDR

func (o *PrefixTableEntry) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ProblemList

type ProblemList struct {
	// pNextProblem:  Null, or a pointer to the next item in the list.
	NextProblem *ProblemList `idl:"name:pNextProblem" json:"next_problem"`
	// intprob:  Attribute error description.
	AttributeProblem *AttributeProblem `idl:"name:intprob" json:"attribute_problem"`
}

ProblemList structure represents PROBLEMLIST_DRS_WIRE_V1 RPC structure.

The PROBLEMLIST_DRS_WIRE_V1 structure defines an attribute error link entry.

func (*ProblemList) MarshalNDR

func (o *ProblemList) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ProblemList) UnmarshalNDR

func (o *ProblemList) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type PropertyMetadataExt

type PropertyMetadataExt struct {
	// dwVersion:  The version of the attribute values, starting at 1 and increasing by
	// one with each originating update.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// timeChanged:  The time at which the originating update was performed.
	TimeChanged int64 `idl:"name:timeChanged" json:"time_changed"`
	// uuidDsaOriginating:  The invocationId of the DC that performed the originating update.
	DSAOriginating *dtyp.UUID `idl:"name:uuidDsaOriginating" json:"dsa_originating"`
	// usnOriginating:  The USN of the DC assigned to the originating update.
	Originating int64 `idl:"name:usnOriginating" json:"originating"`
}

PropertyMetadataExt structure represents PROPERTY_META_DATA_EXT RPC structure.

The PROPERTY_META_DATA_EXT structure defines a concrete type for the stamp of the last originating update to an attribute.

func (*PropertyMetadataExt) MarshalNDR

func (o *PropertyMetadataExt) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PropertyMetadataExt) UnmarshalNDR

func (o *PropertyMetadataExt) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type PropertyMetadataExtVector

type PropertyMetadataExtVector struct {
	// cNumProps:  The number of items in the rgMetaData array.
	PropertiesCount uint32 `idl:"name:cNumProps" json:"properties_count"`
	// rgMetaData:  An array of attribute stamps.
	Metadata []*PropertyMetadataExt `idl:"name:rgMetaData;size_is:(cNumProps)" json:"metadata"`
}

PropertyMetadataExtVector structure represents PROPERTY_META_DATA_EXT_VECTOR RPC structure.

The PROPERTY_META_DATA_EXT_VECTOR structure defines a concrete type for a sequence of attribute stamps.

func (*PropertyMetadataExtVector) MarshalNDR

func (o *PropertyMetadataExtVector) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*PropertyMetadataExtVector) NDRSizeInfo

func (o *PropertyMetadataExtVector) NDRSizeInfo() []uint64

func (*PropertyMetadataExtVector) UnmarshalNDR

func (o *PropertyMetadataExtVector) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type QuerySitesByCostRequest

type QuerySitesByCostRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageQuerySitesRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

QuerySitesByCostRequest structure represents the IDL_DRSQuerySitesByCost operation request

func (*QuerySitesByCostRequest) MarshalNDR

func (o *QuerySitesByCostRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*QuerySitesByCostRequest) UnmarshalNDR

func (o *QuerySitesByCostRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type QuerySitesByCostResponse

type QuerySitesByCostResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageQuerySitesReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSQuerySitesByCost return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

QuerySitesByCostResponse structure represents the IDL_DRSQuerySitesByCost operation response

func (*QuerySitesByCostResponse) MarshalNDR

func (o *QuerySitesByCostResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*QuerySitesByCostResponse) UnmarshalNDR

func (o *QuerySitesByCostResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ReadNGCKeyRequest

type ReadNGCKeyRequest struct {
	Handle    *Handle                   `idl:"name:hDrs;pointer:ref" json:"handle"`
	InVersion uint32                    `idl:"name:dwInVersion" json:"in_version"`
	In        *MessageReadNGCKeyRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

ReadNGCKeyRequest structure represents the IDL_DRSReadNgcKey operation request

func (*ReadNGCKeyRequest) MarshalNDR

func (o *ReadNGCKeyRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReadNGCKeyRequest) UnmarshalNDR

func (o *ReadNGCKeyRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ReadNGCKeyResponse

type ReadNGCKeyResponse struct {
	OutVersion uint32                  `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	Out        *MessageReadNGCKeyReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSReadNgcKey return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

ReadNGCKeyResponse structure represents the IDL_DRSReadNgcKey operation response

func (*ReadNGCKeyResponse) MarshalNDR

func (o *ReadNGCKeyResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReadNGCKeyResponse) UnmarshalNDR

func (o *ReadNGCKeyResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ReferralError

type ReferralError struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// Refer:  The DCs to contact to chase the referral.
	Refer *ContinuationReferral `idl:"name:Refer" json:"refer"`
}

ReferralError structure represents REFERR_DRS_WIRE_V1 RPC structure.

The REFERR_DRS_WIRE_V1 structure defines a referral to other DCs.

func (*ReferralError) MarshalNDR

func (o *ReferralError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReferralError) UnmarshalNDR

func (o *ReferralError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type RemoveDSDomainRequest

type RemoveDSDomainRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message. This must be set to 1, because this
	// is the only version supported.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageRemoveDSDomainRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

RemoveDSDomainRequest structure represents the IDL_DRSRemoveDsDomain operation request

func (*RemoveDSDomainRequest) MarshalNDR

func (o *RemoveDSDomainRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*RemoveDSDomainRequest) UnmarshalNDR

func (o *RemoveDSDomainRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type RemoveDSDomainResponse

type RemoveDSDomainResponse struct {
	// pdwOutVersion: A pointer to the version of the response message. The value must be
	// 1 because that is the only version supported.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageRemoveDSDomainReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSRemoveDsDomain return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

RemoveDSDomainResponse structure represents the IDL_DRSRemoveDsDomain operation response

func (*RemoveDSDomainResponse) MarshalNDR

func (o *RemoveDSDomainResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*RemoveDSDomainResponse) UnmarshalNDR

func (o *RemoveDSDomainResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type RemoveDSServerRequest

type RemoveDSServerRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message. Must be set to 1 because that is
	// the only version supported.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageRemoveServerRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

RemoveDSServerRequest structure represents the IDL_DRSRemoveDsServer operation request

func (*RemoveDSServerRequest) MarshalNDR

func (o *RemoveDSServerRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*RemoveDSServerRequest) UnmarshalNDR

func (o *RemoveDSServerRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type RemoveDSServerResponse

type RemoveDSServerResponse struct {
	// pdwOutVersion: A pointer to the version of the response message. The value must be
	// 1 because that is the only version supported.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageRemoveServerReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSRemoveDsServer return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

RemoveDSServerResponse structure represents the IDL_DRSRemoveDsServer operation response

func (*RemoveDSServerResponse) MarshalNDR

func (o *RemoveDSServerResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*RemoveDSServerResponse) UnmarshalNDR

func (o *RemoveDSServerResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ReplicationEntityInfoList

type ReplicationEntityInfoList struct {
	// pNextEntInf:  The next REPLENTINFLIST in the sequence, or null.
	NextEntityInfo *ReplicationEntityInfoList `idl:"name:pNextEntInf" json:"next_entity_info"`
	// Entinf:  The object and its updated attributes.
	EntityInfo *EntityInfo `idl:"name:Entinf" json:"entity_info"`
	// fIsNCPrefix:  TRUE only if the object is an NC root.
	IsNCPrefix bool `idl:"name:fIsNCPrefix" json:"is_nc_prefix"`
	// pParentGuid:  The value of the objectGUID attribute of the parent of the object,
	// or null if not known or not specified.
	ParentGUID *dtyp.UUID `idl:"name:pParentGuid" json:"parent_guid"`
	// pMetaDataExt:  The stamps for the attributes specified in Entinf.AttrBlock. Entinf.AttrBlock
	// and pMetaDataExt.rgMetaData are parallel arrays. For a given integer i in [0 .. Entinf.AttrBlock.attrCount],
	// the stamp for the attribute described by Entinf.AttrBlock.pAttr^[i] is pMetaDataExt^.rgMetaData[i].
	MetadataExt *PropertyMetadataExtVector `idl:"name:pMetaDataExt" json:"metadata_ext"`
}

ReplicationEntityInfoList structure represents REPLENTINFLIST RPC structure.

The REPLENTINFLIST structure defines a concrete type for updates to one or more attributes of a given object.

func (*ReplicationEntityInfoList) MarshalNDR

func (o *ReplicationEntityInfoList) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReplicationEntityInfoList) UnmarshalNDR

func (o *ReplicationEntityInfoList) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ReplicationTimes

type ReplicationTimes struct {
	// rgTimes:  A byte array of length 84 that is used to set periodic replication times.
	// Each bit in this byte array represents a 15-minute period for which replication can
	// be scheduled within a one-week period. The replication schedule begins on Sunday
	// 12:00:00 AM UTC. Each byte in the array represents a two-hour period of a week in
	// ascending order, starting Sunday 12:00:00 AM UTC. The most significant bit of a byte
	// represents the earliest 15-minute period in the two-hour period, and the rest of
	// the bits in the byte represent their respective 15-minute periods in this order.
	//
	// The following diagram shows an alternative representation of this structure.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| rgTimes...                                                                                                                    |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...                                                                                                                           |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| ...rgTimes                                                                                                                    |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	Times []byte `idl:"name:rgTimes" json:"times"`
}

ReplicationTimes structure represents REPLTIMES RPC structure.

The REPLTIMES structure defines a concrete type for times at which periodic replication occurs.

func (*ReplicationTimes) MarshalNDR

func (o *ReplicationTimes) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReplicationTimes) UnmarshalNDR

func (o *ReplicationTimes) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ReplicationValueInfoV1

type ReplicationValueInfoV1 struct {
	Object        *DSName             `idl:"name:pObject" json:"object"`
	AttributeType uint32              `idl:"name:attrTyp" json:"attribute_type"`
	Aval          *AttributeValue     `idl:"name:Aval" json:"aval"`
	IsPresent     bool                `idl:"name:fIsPresent" json:"is_present"`
	Metadata      *ValueMetadataExtV1 `idl:"name:MetaData" json:"metadata"`
}

ReplicationValueInfoV1 structure represents REPLVALINF_V1 RPC structure.

func (*ReplicationValueInfoV1) MarshalNDR

func (o *ReplicationValueInfoV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReplicationValueInfoV1) UnmarshalNDR

func (o *ReplicationValueInfoV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ReplicationValueInfoV3

type ReplicationValueInfoV3 struct {
	Object        *DSName             `idl:"name:pObject" json:"object"`
	AttributeType uint32              `idl:"name:attrTyp" json:"attribute_type"`
	Aval          *AttributeValue     `idl:"name:Aval" json:"aval"`
	IsPresent     bool                `idl:"name:fIsPresent" json:"is_present"`
	Metadata      *ValueMetadataExtV3 `idl:"name:MetaData" json:"metadata"`
}

ReplicationValueInfoV3 structure represents REPLVALINF_V3 RPC structure.

func (*ReplicationValueInfoV3) MarshalNDR

func (o *ReplicationValueInfoV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ReplicationValueInfoV3) UnmarshalNDR

func (o *ReplicationValueInfoV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ReverseMembershipOperationType

type ReverseMembershipOperationType uint16

ReverseMembershipOperationType type represents REVERSE_MEMBERSHIP_OPERATION_TYPE RPC enumeration.

The REVERSE_MEMBERSHIP_OPERATION_TYPE enumeration defines the type of reverse membership evaluation.

var (
	// RevMembGetGroupsForUser:  Nontransitive membership in groups that are confined to
	// a given domain, excluding built-in groups and domain-local groups. See [MS-ADSC]
	// section 2.14.
	ReverseMembershipOperationTypeGetGroupsForUser ReverseMembershipOperationType = 1
	// RevMembGetAliasMembership:  Nontransitive membership in domain-local groups that
	// are confined to a given domain.
	ReverseMembershipOperationTypeGetAliasMembership ReverseMembershipOperationType = 2
	// RevMembGetAccountGroups:  Transitive membership in all account groups in a given
	// domain, excluding built-in groups.
	ReverseMembershipOperationTypeGetAccountGroups ReverseMembershipOperationType = 3
	// RevMembGetResourceGroups:  Transitive membership in all domain-local groups in a
	// given domain, excluding built-in groups.
	ReverseMembershipOperationTypeGetResourceGroups ReverseMembershipOperationType = 4
	// RevMembGetUniversalGroups:  Transitive membership in all universal groups, excluding
	// built-in groups.
	ReverseMembershipOperationTypeGetUniversalGroups ReverseMembershipOperationType = 5
	// GroupMembersTransitive:  Transitive closure of members of a group based on the information
	// present in the server's NC replicas, including the primary group.
	ReverseMembershipOperationTypeGroupMembersTransitive ReverseMembershipOperationType = 6
	// RevMembGlobalGroupsNonTransitive:  Non-transitive membership in global groups, excluding
	// built-in groups.
	ReverseMembershipOperationTypeGlobalGroupsNonTransitive ReverseMembershipOperationType = 7
)

func (ReverseMembershipOperationType) String

type SchemaPrefixTable

type SchemaPrefixTable struct {
	// PrefixCount:  The number of items in the pPrefixEntry array.
	PrefixCount uint32 `idl:"name:PrefixCount" json:"prefix_count"`
	// pPrefixEntry:  An array of PrefixTableEntry items in the table.
	PrefixEntry []*PrefixTableEntry `idl:"name:pPrefixEntry;size_is:(PrefixCount)" json:"prefix_entry"`
}

SchemaPrefixTable structure represents SCHEMA_PREFIX_TABLE RPC structure.

The SCHEMA_PREFIX_TABLE structure defines the concrete type for a table to map ATTRTYP values to and from OIDs.

func (*SchemaPrefixTable) Build added in v1.0.2

func (o *SchemaPrefixTable) Build() PrefixTable

func (*SchemaPrefixTable) MarshalNDR

func (o *SchemaPrefixTable) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SchemaPrefixTable) UnmarshalNDR

func (o *SchemaPrefixTable) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type SecurityBuffer

type SecurityBuffer struct {
	// cbBuffer:  The size, in bytes, of the pvBuffer array.
	BufferLength uint32 `idl:"name:cbBuffer" json:"buffer_length"`
	// BufferType:  A bit field, presented in little-endian byte order, that contains the
	// following values:
	//
	//	+---+---+---+---+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 |   5   | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 |  4  | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |       |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |     |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+
	//	| X | X | X | X | X | T Y P | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | R O | X | X | X | X | X | X | X |
	//	+---+---+---+---+---+-------+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+---+---+---+
	//
	// X: Unused. MUST be zero and ignored.
	//
	// TYP: Can be one of the following values:
	//
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	|                                     |                                                                                  |
	//	|                VALUE                |                                     MEANING                                      |
	//	|                                     |                                                                                  |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_EMPTY 0x00000000          | A placeholder in the buffer array. The caller can supply several such entries in |
	//	|                                     | the array, and the security package can return data in them.                     |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_DATA 0x00000001           | Used for common data. The security package can read this data and write it, for  |
	//	|                                     | example, to encrypt some or all of it.                                           |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_TOKEN 0x00000002          | This buffer is used to indicate the security token portion of the message. This  |
	//	|                                     | is read-only for input parameters or read/write for output parameters.           |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_PKG_PARAMS 0x00000003     | These are transport-to-package–specific parameters. For example, the Netware     |
	//	|                                     | redirector can supply the server object identifier, while DCE RPC can supply an  |
	//	|                                     | association UUID, and so on.                                                     |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_MISSING 0x00000004        | The security package uses this value to indicate the number of missing bytes in  |
	//	|                                     | a particular message. The pvBuffer member is ignored in this type.               |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_EXTRA 0x00000005          | The security package uses this value to indicate the number of extra or          |
	//	|                                     | unprocessed bytes in a message.                                                  |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_STREAM_TRAILER 0x00000006 | Indicates a protocol-specific trailer for a particular record.                   |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	//	| SECBUFFER_STREAM_HEADER 0x00000007  | Indicates a protocol-specific header for a particular record.                    |
	//	+-------------------------------------+----------------------------------------------------------------------------------+
	BufferType uint32 `idl:"name:BufferType" json:"buffer_type"`
	// pvBuffer:  Authentication data.
	Buffer []byte `idl:"name:pvBuffer;size_is:(cbBuffer)" json:"buffer"`
}

SecurityBuffer structure represents DRS_SecBuffer RPC structure.

DRS_SecBuffer is a concrete type for a buffer that contains authentication data.

func (*SecurityBuffer) MarshalNDR

func (o *SecurityBuffer) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SecurityBuffer) UnmarshalNDR

func (o *SecurityBuffer) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type SecurityBufferDesc

type SecurityBufferDesc struct {
	// ulVersion:  MUST be 0.
	Version uint32 `idl:"name:ulVersion" json:"version"`
	// cBuffers:  The number of items in the Buffers array.
	BuffersCount uint32 `idl:"name:cBuffers" json:"buffers_count"`
	// Buffers:  Buffers that contain authentication data.
	Buffers []*SecurityBuffer `idl:"name:Buffers;size_is:(cBuffers)" json:"buffers"`
}

SecurityBufferDesc structure represents DRS_SecBufferDesc RPC structure.

DRS_SecBufferDesc is a Generic Security Service (GSS) Kerberos authentication token, as specified in [RFC1964].

func (*SecurityBufferDesc) MarshalNDR

func (o *SecurityBufferDesc) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SecurityBufferDesc) UnmarshalNDR

func (o *SecurityBufferDesc) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type SecurityError

type SecurityError struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
}

SecurityError structure represents SECERR_DRS_WIRE_V1 RPC structure.

The SECERR_DRS_WIRE_V1 structure defines a security error.

func (*SecurityError) MarshalNDR

func (o *SecurityError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SecurityError) UnmarshalNDR

func (o *SecurityError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ServiceError

type ServiceError struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
}

ServiceError structure represents SVCERR_DRS_WIRE_V1 RPC structure.

The SVCERR_DRS_WIRE_V1 structure defines a service error.

func (*ServiceError) MarshalNDR

func (o *ServiceError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ServiceError) UnmarshalNDR

func (o *ServiceError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type SyncReplicaRequest

type SyncReplicaRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwVersion: The version of the request message.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// pmsgSync: A pointer to the request message.
	Sync *MessageReplicaSync `idl:"name:pmsgSync;switch_is:dwVersion;pointer:ref" json:"sync"`
}

SyncReplicaRequest structure represents the IDL_DRSReplicaSync operation request

func (*SyncReplicaRequest) MarshalNDR

func (o *SyncReplicaRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SyncReplicaRequest) UnmarshalNDR

func (o *SyncReplicaRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type SyncReplicaResponse

type SyncReplicaResponse struct {
	// Return: The IDL_DRSReplicaSync return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

SyncReplicaResponse structure represents the IDL_DRSReplicaSync operation response

func (*SyncReplicaResponse) MarshalNDR

func (o *SyncReplicaResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SyncReplicaResponse) UnmarshalNDR

func (o *SyncReplicaResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type SystemError

type SystemError struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
}

SystemError structure represents SYSERR_DRS_WIRE_V1 RPC structure.

The SYSERR_DRS_WIRE_V1 structure defines a system error.

func (*SystemError) MarshalNDR

func (o *SystemError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*SystemError) UnmarshalNDR

func (o *SystemError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type UnbindRequest

type UnbindRequest struct {
	// phDrs: A pointer to the RPC context handle returned by the IDL_DRSBind method. The
	// value is set to null on return.
	DRS *Handle `idl:"name:phDrs;pointer:ref" json:"drs"`
}

UnbindRequest structure represents the IDL_DRSUnbind operation request

func (*UnbindRequest) MarshalNDR

func (o *UnbindRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UnbindRequest) UnmarshalNDR

func (o *UnbindRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type UnbindResponse

type UnbindResponse struct {
	// phDrs: A pointer to the RPC context handle returned by the IDL_DRSBind method. The
	// value is set to null on return.
	DRS *Handle `idl:"name:phDrs;pointer:ref" json:"drs"`
	// Return: The IDL_DRSUnbind return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

UnbindResponse structure represents the IDL_DRSUnbind operation response

func (*UnbindResponse) MarshalNDR

func (o *UnbindResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UnbindResponse) UnmarshalNDR

func (o *UnbindResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type UpToDateCursorV1

type UpToDateCursorV1 struct {
	// uuidDsa:  The invocationId of the DC performing the update.
	DSA *dtyp.UUID `idl:"name:uuidDsa" json:"dsa"`
	// usnHighPropUpdate:  The USN of the update on the updating DC.
	//
	// A cursor c with c.uuidDsa = x and c.usnHighPropUpdate = y indicates a replication
	// state that includes all changes originated by DC x at USN less than or equal to y.
	HighPropertyUpdate int64 `idl:"name:usnHighPropUpdate" json:"high_property_update"`
}

UpToDateCursorV1 structure represents UPTODATE_CURSOR_V1 RPC structure.

The UPTODATE_CURSOR_V1 structure is a concrete type for the replication state relative to a given DC.

func (*UpToDateCursorV1) MarshalNDR

func (o *UpToDateCursorV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpToDateCursorV1) UnmarshalNDR

func (o *UpToDateCursorV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type UpToDateCursorV2

type UpToDateCursorV2 struct {
	// uuidDsa:  The invocationId of the DC performing the update.
	DSA *dtyp.UUID `idl:"name:uuidDsa" json:"dsa"`
	// usnHighPropUpdate:  The USN of the update on the updating DC.
	HighPropertyUpdate int64 `idl:"name:usnHighPropUpdate" json:"high_property_update"`
	// timeLastSyncSuccess:  The time at which the last successful replication occurred
	// from the DC identified by uuidDsa; for replication latency reporting only.
	//
	// A cursor c with c.uuidDsa = x and c.usnHighPropUpdate = y indicates a replication
	// state that includes all changes originated by DC x at USN less than or equal to y.
	TimeLastSyncSuccess int64 `idl:"name:timeLastSyncSuccess" json:"time_last_sync_success"`
}

UpToDateCursorV2 structure represents UPTODATE_CURSOR_V2 RPC structure.

The UPTODATE_CURSOR_V2 structure defines a concrete type for the replication state relative to a given DC.

func (*UpToDateCursorV2) MarshalNDR

func (o *UpToDateCursorV2) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpToDateCursorV2) UnmarshalNDR

func (o *UpToDateCursorV2) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type UpToDateVectorV1Ext

type UpToDateVectorV1Ext struct {
	// dwVersion:  The version of this structure; MUST be 1.
	Version uint32 `idl:"name:dwVersion" json:"version"`

	// cNumCursors:  The number of items in the rgCursors array.
	CursorsCount uint32 `idl:"name:cNumCursors" json:"cursors_count"`

	// rgCursors:  An array of UPTODATE_CURSOR_V1. The items in this field MUST be sorted
	// in increasing order of the uuidDsa field.
	Cursors []*UpToDateCursorV1 `idl:"name:rgCursors;size_is:(cNumCursors)" json:"cursors"`
	// contains filtered or unexported fields
}

UpToDateVectorV1Ext structure represents UPTODATE_VECTOR_V1_EXT RPC structure.

The UPTODATE_VECTOR_V1_EXT structure defines a concrete type for the replication state relative to a set of DCs.

func (*UpToDateVectorV1Ext) MarshalNDR

func (o *UpToDateVectorV1Ext) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpToDateVectorV1Ext) NDRSizeInfo

func (o *UpToDateVectorV1Ext) NDRSizeInfo() []uint64

func (*UpToDateVectorV1Ext) UnmarshalNDR

func (o *UpToDateVectorV1Ext) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type UpToDateVectorV2Ext

type UpToDateVectorV2Ext struct {
	// dwVersion:  The version of this structure; MUST be 2.
	Version uint32 `idl:"name:dwVersion" json:"version"`

	// cNumCursors:  The number of items in the rgCursors array.
	CursorsCount uint32 `idl:"name:cNumCursors" json:"cursors_count"`

	// rgCursors:  An array of UPTODATE_CURSOR_V2. The items in this field MUST be sorted
	// in increasing order of the uuidDsa field.
	Cursors []*UpToDateCursorV2 `idl:"name:rgCursors;size_is:(cNumCursors)" json:"cursors"`
	// contains filtered or unexported fields
}

UpToDateVectorV2Ext structure represents UPTODATE_VECTOR_V2_EXT RPC structure.

The UPTODATE_VECTOR_V2_EXT structure defines a concrete type for the replication state relative to a set of DCs.

func (*UpToDateVectorV2Ext) MarshalNDR

func (o *UpToDateVectorV2Ext) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpToDateVectorV2Ext) NDRSizeInfo

func (o *UpToDateVectorV2Ext) NDRSizeInfo() []uint64

func (*UpToDateVectorV2Ext) UnmarshalNDR

func (o *UpToDateVectorV2Ext) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type UpdateError

type UpdateError struct {
	// dsid:  The implementation-specific diagnostic code.
	DSID uint32 `idl:"name:dsid" json:"dsid"`
	// extendedErr:  0, STATUS code, or Windows error code.
	ExtendedError uint32 `idl:"name:extendedErr" json:"extended_error"`
	// extendedData:  The implementation-specific diagnostic code.
	ExtendedData uint32 `idl:"name:extendedData" json:"extended_data"`
	// problem:  0 or PROBLEM error code (section 4.1.1.1.26).
	Problem uint16 `idl:"name:problem" json:"problem"`
}

UpdateError structure represents UPDERR_DRS_WIRE_V1 RPC structure.

The UPDERR_DRS_WIRE_V1 structure defines an update error.

func (*UpdateError) MarshalNDR

func (o *UpdateError) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpdateError) UnmarshalNDR

func (o *UpdateError) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type UpdateReferencesRequest

type UpdateReferencesRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwVersion: The version of the request message.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// pmsgUpdRefs: A pointer to the request message.
	UpdateReferences *MessageUpdateReferences `idl:"name:pmsgUpdRefs;switch_is:dwVersion;pointer:ref" json:"update_references"`
}

UpdateReferencesRequest structure represents the IDL_DRSUpdateRefs operation request

func (*UpdateReferencesRequest) MarshalNDR

func (o *UpdateReferencesRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpdateReferencesRequest) UnmarshalNDR

func (o *UpdateReferencesRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type UpdateReferencesResponse

type UpdateReferencesResponse struct {
	// Return: The IDL_DRSUpdateRefs return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

UpdateReferencesResponse structure represents the IDL_DRSUpdateRefs operation response

func (*UpdateReferencesResponse) MarshalNDR

func (o *UpdateReferencesResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*UpdateReferencesResponse) UnmarshalNDR

func (o *UpdateReferencesResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type ValueMetadataExtV1

type ValueMetadataExtV1 struct {
	// timeCreated:  The date and time at which the first originating update was made.
	TimeCreated int64 `idl:"name:timeCreated" json:"time_created"`
	// MetaData:  The remainder of the stamp; has the same PROPERTY_META_DATA_EXT type as
	// used for the stamp of an attribute.
	Metadata *PropertyMetadataExt `idl:"name:MetaData" json:"metadata"`
}

ValueMetadataExtV1 structure represents VALUE_META_DATA_EXT_V1 RPC structure.

The VALUE_META_DATA_EXT_V1 structure defines a concrete type for the stamp of a link value.

func (*ValueMetadataExtV1) MarshalNDR

func (o *ValueMetadataExtV1) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ValueMetadataExtV1) UnmarshalNDR

func (o *ValueMetadataExtV1) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type ValueMetadataExtV3

type ValueMetadataExtV3 struct {
	TimeCreated int64                `idl:"name:timeCreated" json:"time_created"`
	Metadata    *PropertyMetadataExt `idl:"name:MetaData" json:"metadata"`

	TimeExpired int64 `idl:"name:timeExpired" json:"time_expired"`
	// contains filtered or unexported fields
}

ValueMetadataExtV3 structure represents VALUE_META_DATA_EXT_V3 RPC structure.

func (*ValueMetadataExtV3) MarshalNDR

func (o *ValueMetadataExtV3) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*ValueMetadataExtV3) UnmarshalNDR

func (o *ValueMetadataExtV3) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type VarSizeBufferWithVersion

type VarSizeBufferWithVersion struct {
	Version      uint32 `idl:"name:ulVersion" json:"version"`
	BufferLength uint32 `idl:"name:cbByteBuffer" json:"buffer_length"`
	Padding      uint64 `idl:"name:ullPadding" json:"padding"`
	Buffer       []byte `idl:"name:rgbBuffer;size_is:(cbByteBuffer)" json:"buffer"`
}

VarSizeBufferWithVersion structure represents VAR_SIZE_BUFFER_WITH_VERSION RPC structure.

func (*VarSizeBufferWithVersion) MarshalNDR

func (o *VarSizeBufferWithVersion) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*VarSizeBufferWithVersion) NDRSizeInfo

func (o *VarSizeBufferWithVersion) NDRSizeInfo() []uint64

func (*VarSizeBufferWithVersion) UnmarshalNDR

func (o *VarSizeBufferWithVersion) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type Vector

type Vector struct {
	// usnHighObjUpdate:  A USN.
	HighObjectUpdate int64 `idl:"name:usnHighObjUpdate" json:"high_object_update"`

	// usnHighPropUpdate:  A USN.
	//
	// The USN_VECTOR type, as shown, is used in the DRS IDL. However, only the size of
	// USN_VECTOR (24 bytes) and the representation of its null value (24 zero bytes) are
	// standardized for interoperability.
	HighPropertyUpdate int64 `idl:"name:usnHighPropUpdate" json:"high_property_update"`
	// contains filtered or unexported fields
}

Vector structure represents USN_VECTOR RPC structure.

The USN_VECTOR structure defines a concrete type for the cookie (section 1.3.2) used to pass state between calls to IDL_DRSGetNCChanges.

func (*Vector) MarshalNDR

func (o *Vector) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*Vector) UnmarshalNDR

func (o *Vector) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type VerifyNamesRequest

type VerifyNamesRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageVerifyRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

VerifyNamesRequest structure represents the IDL_DRSVerifyNames operation request

func (*VerifyNamesRequest) MarshalNDR

func (o *VerifyNamesRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*VerifyNamesRequest) UnmarshalNDR

func (o *VerifyNamesRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type VerifyNamesResponse

type VerifyNamesResponse struct {
	// pdwOutVersion: A pointer to the version of the response message.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageVerifyReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSVerifyNames return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

VerifyNamesResponse structure represents the IDL_DRSVerifyNames operation response

func (*VerifyNamesResponse) MarshalNDR

func (o *VerifyNamesResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*VerifyNamesResponse) UnmarshalNDR

func (o *VerifyNamesResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type VerifyObjectsReplicaRequest

type VerifyObjectsReplicaRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwVersion: The version of the request message.
	Version uint32 `idl:"name:dwVersion" json:"version"`
	// pmsgVerify: A pointer to the request message.
	Verify *MessageVerifyReplyObject `idl:"name:pmsgVerify;switch_is:dwVersion;pointer:ref" json:"verify"`
}

VerifyObjectsReplicaRequest structure represents the IDL_DRSReplicaVerifyObjects operation request

func (*VerifyObjectsReplicaRequest) MarshalNDR

func (*VerifyObjectsReplicaRequest) UnmarshalNDR

func (o *VerifyObjectsReplicaRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type VerifyObjectsReplicaResponse

type VerifyObjectsReplicaResponse struct {
	// Return: The IDL_DRSReplicaVerifyObjects return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

VerifyObjectsReplicaResponse structure represents the IDL_DRSReplicaVerifyObjects operation response

func (*VerifyObjectsReplicaResponse) MarshalNDR

func (*VerifyObjectsReplicaResponse) UnmarshalNDR

func (o *VerifyObjectsReplicaResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type WriteNGCKeyRequest

type WriteNGCKeyRequest struct {
	Handle    *Handle                    `idl:"name:hDrs;pointer:ref" json:"handle"`
	InVersion uint32                     `idl:"name:dwInVersion" json:"in_version"`
	In        *MessageWriteNGCKeyRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

WriteNGCKeyRequest structure represents the IDL_DRSWriteNgcKey operation request

func (*WriteNGCKeyRequest) MarshalNDR

func (o *WriteNGCKeyRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*WriteNGCKeyRequest) UnmarshalNDR

func (o *WriteNGCKeyRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type WriteNGCKeyResponse

type WriteNGCKeyResponse struct {
	OutVersion uint32                   `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	Out        *MessageWriteNGCKeyReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSWriteNgcKey return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

WriteNGCKeyResponse structure represents the IDL_DRSWriteNgcKey operation response

func (*WriteNGCKeyResponse) MarshalNDR

func (o *WriteNGCKeyResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*WriteNGCKeyResponse) UnmarshalNDR

func (o *WriteNGCKeyResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type WriteSPNRequest

type WriteSPNRequest struct {
	// hDrs: The RPC context handle returned by the IDL_DRSBind method.
	Handle *Handle `idl:"name:hDrs;pointer:ref" json:"handle"`
	// dwInVersion: The version of the request message. Must be set to 1, because that is
	// the only version supported.
	InVersion uint32 `idl:"name:dwInVersion" json:"in_version"`
	// pmsgIn: A pointer to the request message.
	In *MessageWriteSPNRequest `idl:"name:pmsgIn;switch_is:dwInVersion;pointer:ref" json:"in"`
}

WriteSPNRequest structure represents the IDL_DRSWriteSPN operation request

func (*WriteSPNRequest) MarshalNDR

func (o *WriteSPNRequest) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*WriteSPNRequest) UnmarshalNDR

func (o *WriteSPNRequest) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

type WriteSPNResponse

type WriteSPNResponse struct {
	// pdwOutVersion: A pointer to the version of the response message. The value must be
	// 1 because that is the only version supported.
	OutVersion uint32 `idl:"name:pdwOutVersion;pointer:ref" json:"out_version"`
	// pmsgOut: A pointer to the response message.
	Out *MessageWriteSPNReply `idl:"name:pmsgOut;switch_is:*pdwOutVersion;pointer:ref" json:"out"`
	// Return: The IDL_DRSWriteSPN return value.
	Return uint32 `idl:"name:Return" json:"return"`
}

WriteSPNResponse structure represents the IDL_DRSWriteSPN operation response

func (*WriteSPNResponse) MarshalNDR

func (o *WriteSPNResponse) MarshalNDR(ctx context.Context, w ndr.Writer) error

func (*WriteSPNResponse) UnmarshalNDR

func (o *WriteSPNResponse) UnmarshalNDR(ctx context.Context, r ndr.Reader) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL