dfsrh

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

The dfsrh package implements the DFSRH client protocol.

Introduction

The Distributed File System: Replication Helper (DFS-R Helper) Protocol is a set of DCOM interfaces for configuring and monitoring the Distributed File System.

Overview

The Distributed File System: Replication Helper (DFS-R Helper) Protocol provides a set of DCOM interfaces for configuring and monitoring Distributed File System–Replication (DFS-R) on a server, as specified in [MS-FRS2]. The server end of the protocol is a DCOM service that implements the DCOM interface. The client end of the protocol is an application that invokes methods on the interface to make DFS-R configuration changes and monitor the status of the DFS-R service on the server.

The first part of the Distributed File System: Replication Helper (DFS-R Helper) Protocol consists of interfaces for creating, modifying, and deleting configuration objects in Active Directory by using the machine account of the server.

For all replication members, the configuration related to a member is stored in the computer object for the local machine in Active Directory. It is common for system components that are unrelated to DFS-R to set permissions on the computer object that will prevent modification of the object by some users and still permit modification by using the credentials for the computer. Therefore, a server implementation uses the credentials of the local machine account when it sends commands to update Active Directory objects.

If a user has sufficient privileges to connect to the server that is running the DFS-R Helper Protocol and to invoke methods implemented by the DFS-R Helper Protocol interfaces, the server works as a proxy for making configuration changes on behalf of the client application that is running under the user's account.

The client sends the server information about the Active Directory operation that the client is trying to accomplish. The server then attempts to execute the command by using the machine account and returns information about the status of the operation.

The second part of the Distributed File System: Replication Helper (DFS-R Helper) Protocol is an interface for monitoring DFS-R on the computer and collecting various statistics about the DFS-R operation.

The information that is collected by using the Distributed File System: Replication Helper (DFS-R Helper) Protocol includes, among other types of information, the following statistics:

* Information about replication errors that are encountered by DFS-R on the server.

* The count and size of replicated files on the server.

* Disk use on the server.

* Information about replicated folders ( acefe7bd-5912-4f18-9554-b3da50a2ee44#gt_064adaf1-86c7-43e5-a157-b0949980181e ) on the server.

* Replication backlog—the number of files that are not yet fully replicated.

Index

Constants

This section is empty.

Variables

View Source
var (
	// import guard
	GoPackage = "dcom/dfsrh"
)

Functions

This section is empty.

Types

type ADAttributeData

type ADAttributeData struct {
	Operation      int32        `idl:"name:operation" json:"operation"`
	AttributeName  *oaut.String `idl:"name:attributeName" json:"attribute_name"`
	AttributeValue *oaut.String `idl:"name:attributeValue" json:"attribute_value"`
	IsString       int16        `idl:"name:isString" json:"is_string"`
	Length         int32        `idl:"name:length" json:"length"`
}

ADAttributeData structure represents _AdAttributeData RPC structure.

func (*ADAttributeData) MarshalNDR

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

func (*ADAttributeData) UnmarshalNDR

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

type HelperErrorsEnum

type HelperErrorsEnum uint32

HelperErrorsEnum type represents DfsrHelperErrorsEnum RPC enumeration.

The DfsrHelperErrorsEnum enumeration defines error codes that are specific to the IADProxy and IADProxy2 interfaces.

The UUID for this enumeration is {9009D654-250B-4e0d-9AB0-ACB63134F69F}.

var (
	// dfsrHelperErrorNotLocalAdmin:  Reserved for future use.
	HelperErrorsEnumNotLocalAdmin HelperErrorsEnum = 2147753985
	// dfsrHelperErrorCreateVerifyServerControl: Cannot create LDAP_SERVER_VERIFY_NAME_OID
	// control for the LDAP command.
	HelperErrorsEnumCreateVerifyServerControl HelperErrorsEnum = 2147753986
	// dfsrHelperLdapErrorBase:  This is the base value for LDAP errors.
	HelperErrorsEnumLDAPErrorBase HelperErrorsEnum = 2147758080
)

func (HelperErrorsEnum) String

func (o HelperErrorsEnum) String() string

type IADProxy

type IADProxy dcom.InterfacePointer

IADProxy structure represents IADProxy RPC structure.

func (*IADProxy) InterfacePointer

func (o *IADProxy) InterfacePointer() *dcom.InterfacePointer

func (*IADProxy) MarshalNDR

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

func (*IADProxy) NDRSizeInfo

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

func (*IADProxy) UnmarshalNDR

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

type IADProxy2

type IADProxy2 dcom.InterfacePointer

IADProxy2 structure represents IADProxy2 RPC structure.

func (*IADProxy2) InterfacePointer

func (o *IADProxy2) InterfacePointer() *dcom.InterfacePointer

func (*IADProxy2) MarshalNDR

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

func (*IADProxy2) NDRSizeInfo

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

func (*IADProxy2) UnmarshalNDR

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

type ReportingFlags

type ReportingFlags uint16

ReportingFlags type represents DfsrReportingFlags RPC enumeration.

The DfsrReportingFlags enumeration represents the options for generating health reports, which are used in IServerHealthReport and IServerHealthReport2 interfaces. The UUID for this enumeration is {CEB5D7B4-3964-4f71-AC17-4BF57A379D87}.

Any bitmask that consists of one, or a combination, of the following enumerated values is supported:

var (
	// REPORTING_FLAGS_NONE:  Default report options.
	ReportingFlagsNone ReportingFlags = 0
	// REPORTING_FLAGS_BACKLOG:  Return the count of backlog transactions.
	ReportingFlagsBacklog ReportingFlags = 1
	// REPORTING_FLAGS_FILES:  Return the count and cumulative size of files in the replicated
	// folders.
	ReportingFlagsFiles ReportingFlags = 2
)

func (ReportingFlags) String

func (o ReportingFlags) String() string

type ServerHealthReport

type ServerHealthReport dcom.InterfacePointer

ServerHealthReport structure represents IServerHealthReport RPC structure.

func (*ServerHealthReport) InterfacePointer

func (o *ServerHealthReport) InterfacePointer() *dcom.InterfacePointer

func (*ServerHealthReport) MarshalNDR

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

func (*ServerHealthReport) NDRSizeInfo

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

func (*ServerHealthReport) UnmarshalNDR

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

type ServerHealthReport2

type ServerHealthReport2 dcom.InterfacePointer

ServerHealthReport2 structure represents IServerHealthReport2 RPC structure.

func (*ServerHealthReport2) InterfacePointer

func (o *ServerHealthReport2) InterfacePointer() *dcom.InterfacePointer

func (*ServerHealthReport2) MarshalNDR

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

func (*ServerHealthReport2) NDRSizeInfo

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

func (*ServerHealthReport2) UnmarshalNDR

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

type VersionVectorData

type VersionVectorData struct {
	UncompressedSize int32         `idl:"name:uncompressedSize" json:"uncompressed_size"`
	BacklogCount     int32         `idl:"name:backlogCount" json:"backlog_count"`
	ContentSetGUID   *oaut.String  `idl:"name:contentSetGuid" json:"content_set_guid"`
	VersionVector    *oaut.Variant `idl:"name:versionVector" json:"version_vector"`
}

VersionVectorData structure represents _VersionVectorData RPC structure.

func (*VersionVectorData) MarshalNDR

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

func (*VersionVectorData) UnmarshalNDR

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

Directories

Path Synopsis
iadproxy
v0
iadproxy2
v0
iserverhealthreport
v0
iserverhealthreport2
v0

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL