iserverhealthreport

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: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// IServerHealthReport interface identifier e65e8028-83e8-491b-9af7-aaf6bd51a0ce
	ServerHealthReportIID = &dcom.IID{Data1: 0xe65e8028, Data2: 0x83e8, Data3: 0x491b, Data4: []byte{0x9a, 0xf7, 0xaa, 0xf6, 0xbd, 0x51, 0xa0, 0xce}}
	// Syntax UUID
	ServerHealthReportSyntaxUUID = &uuid.UUID{TimeLow: 0xe65e8028, TimeMid: 0x83e8, TimeHiAndVersion: 0x491b, ClockSeqHiAndReserved: 0x9a, ClockSeqLow: 0xf7, Node: [6]uint8{0xaa, 0xf6, 0xbd, 0x51, 0xa0, 0xce}}
	// Syntax ID
	ServerHealthReportSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: ServerHealthReportSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/dfsrh"
)

Functions

func NewServerHealthReportServerHandle

func NewServerHealthReportServerHandle(o ServerHealthReportServer) dcerpc.ServerHandle

func RegisterServerHealthReportServer

func RegisterServerHealthReportServer(conn dcerpc.Conn, o ServerHealthReportServer, opts ...dcerpc.Option)

func ServerHealthReportServerHandle

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

Types

type GetCompressedReportRequest

type GetCompressedReportRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// replicationGroupGuid: MUST be the identifier of the replication group for which the
	// server gets health information. This field corresponds to the objectGUID field of
	// the msDFSR-ReplicationGroup configuration object in Active Directory. The msDFSR-ReplicationGroup
	// is specified in [MS-FRS2] section 2.3.5.
	ReplicationGroupGUID *dtyp.GUID `idl:"name:replicationGroupGuid" json:"replication_group_guid"`
	// referenceMember: MUST be set to NULL.
	ReferenceMember *oaut.String `idl:"name:referenceMember" json:"reference_member"`
	// referenceVersionVectors: If the flags parameter has REPORTING_FLAGS_BACKLOG set,
	// the set of version vectors for replicated folders on the reference member MUST be
	// passed by using this parameter. Otherwise, this parameter MUST be set to NULL. The
	// VersionVectorData structure is specified in section 2.2.1.4.
	ReferenceVersionVectors *oaut.SafeArray `idl:"name:referenceVersionVectors" json:"reference_version_vectors"`
	// flags: MUST be zero or more combinations of values of DfsrReportingFlags enumeration.
	// The DfsrReportingFlags enumeration is specified in section 2.2.1.2.
	Flags int32 `idl:"name:flags" json:"flags"`
}

GetCompressedReportRequest structure represents the GetCompressedReport operation request

func (*GetCompressedReportRequest) MarshalNDR

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

func (*GetCompressedReportRequest) UnmarshalNDR

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

type GetCompressedReportResponse

type GetCompressedReportResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// memberVersionVectors: If the flags parameter has REPORTING_FLAGS_BACKLOG set, the
	// set of version vectors for the replicated folders on the server MUST be returned
	// in this output parameter. The VersionVectorData structure is specified in section
	// 2.2.1.4.
	MemberVersionVectors *oaut.SafeArray `idl:"name:memberVersionVectors" json:"member_version_vectors"`
	// reportCompressed: The compressed report body in the XML format MUST be returned in
	// this output parameter. The format of the XML MUST be the same as for the reportXML
	// member of the GetReport method. This MUST be an encoded field whose format is specified
	// by the DFS-R compression algorithm (as specified in [MS-FRS2] section 3.1.1.1).
	ReportCompressed *oaut.String `idl:"name:reportCompressed" json:"report_compressed"`
	// uncompressedReportSize: The size, in bytes, of the uncompressed data returned in
	// the reportCompressed parameter.
	UncompressedReportSize int32 `idl:"name:uncompressedReportSize" json:"uncompressed_report_size"`
	// Return: The GetCompressedReport return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetCompressedReportResponse structure represents the GetCompressedReport operation response

func (*GetCompressedReportResponse) MarshalNDR

func (*GetCompressedReportResponse) UnmarshalNDR

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

type GetRawReportExRequest

type GetRawReportExRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// replicationGroupGuid: Not implemented.
	ReplicationGroupGUID *dtyp.GUID `idl:"name:replicationGroupGuid" json:"replication_group_guid"`
	// reportOptions: Not implemented.
	ReportOptions *oaut.SafeArray `idl:"name:reportOptions" json:"report_options"`
}

GetRawReportExRequest structure represents the GetRawReportEx operation request

func (*GetRawReportExRequest) MarshalNDR

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

func (*GetRawReportExRequest) UnmarshalNDR

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

type GetRawReportExResponse

type GetRawReportExResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// report: Not implemented.
	Report *oaut.SafeArray `idl:"name:report" json:"report"`
	// Return: The GetRawReportEx return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetRawReportExResponse structure represents the GetRawReportEx operation response

func (*GetRawReportExResponse) MarshalNDR

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

func (*GetRawReportExResponse) UnmarshalNDR

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

type GetReferenceBacklogCountsRequest

type GetReferenceBacklogCountsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// flatMemberVersionVectors: MUST be the version vector of the replication group on
	// another member that is participating in the same replication group. If multiple members
	// are specified in the flatMemberVersionVectors array, the backlogCounts array contains
	// the backlog counts for each reference vector specified.
	FlatMemberVersionVectors *oaut.SafeArray `idl:"name:flatMemberVersionVectors" json:"flat_member_version_vectors"`
}

GetReferenceBacklogCountsRequest structure represents the GetReferenceBacklogCounts operation request

func (*GetReferenceBacklogCountsRequest) MarshalNDR

func (*GetReferenceBacklogCountsRequest) UnmarshalNDR

type GetReferenceBacklogCountsResponse

type GetReferenceBacklogCountsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// backlogCounts: The relative backlog for each reference vector in flatMemberVersionVectors
	// MUST be returned in this output parameter. The length of the backlogCounts array
	// MUST be the same as the length of flatMemberVersionVectors. The value on each position
	// in the returned array MUST correspond to the version vector on the same position
	// in the flatMemberVersionVectors array.
	BacklogCounts *oaut.SafeArray `idl:"name:backlogCounts" json:"backlog_counts"`
	// Return: The GetReferenceBacklogCounts return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetReferenceBacklogCountsResponse structure represents the GetReferenceBacklogCounts operation response

func (*GetReferenceBacklogCountsResponse) MarshalNDR

func (*GetReferenceBacklogCountsResponse) UnmarshalNDR

type GetReferenceVersionVectorsRequest

type GetReferenceVersionVectorsRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// replicationGroupGuid: MUST be the identifier of the replication group for which the
	// server gets version vectors.
	ReplicationGroupGUID *dtyp.GUID `idl:"name:replicationGroupGuid" json:"replication_group_guid"`
}

GetReferenceVersionVectorsRequest structure represents the GetReferenceVersionVectors operation request

func (*GetReferenceVersionVectorsRequest) MarshalNDR

func (*GetReferenceVersionVectorsRequest) UnmarshalNDR

type GetReferenceVersionVectorsResponse

type GetReferenceVersionVectorsResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// referenceVersionVectors: MUST be the array of version vectors for the replicated
	// folders on the server. MUST be returned in this output parameter. For more information,
	// see section 2.2.1.4.
	ReferenceVersionVectors *oaut.SafeArray `idl:"name:referenceVersionVectors" json:"reference_version_vectors"`
	// Return: The GetReferenceVersionVectors return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetReferenceVersionVectorsResponse structure represents the GetReferenceVersionVectors operation response

func (*GetReferenceVersionVectorsResponse) MarshalNDR

func (*GetReferenceVersionVectorsResponse) UnmarshalNDR

type GetReportRequest

type GetReportRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// replicationGroupGuid: MUST be the identifier of the replication group for which the
	// server gets health information. This field corresponds to the objectGUID field of
	// the msDFSR-ReplicationGroup configuration object in Active Directory. The msDFSR-ReplicationGroup
	// is specified in [MS-FRS2] section 2.3.5.
	ReplicationGroupGUID *dtyp.GUID `idl:"name:replicationGroupGuid" json:"replication_group_guid"`
	// referenceMember: MUST be set to NULL.
	ReferenceMember *oaut.String `idl:"name:referenceMember" json:"reference_member"`
	// referenceVersionVectors: If the flags parameter has REPORTING_FLAGS_BACKLOG set,
	// the set of version vectors for replicated folders on the reference member MUST be
	// passed by using this parameter. Otherwise, this parameter MUST be set to NULL. The
	// VersionVectorData structure is specified in section 2.2.1.4.
	ReferenceVersionVectors *oaut.SafeArray `idl:"name:referenceVersionVectors" json:"reference_version_vectors"`
	// flags: Any values of the DfsrReportingFlags enumeration MUST be combined together
	// by using a bitwise OR operation. For more information about DfsrReportingFlags, see
	// section 2.2.1.2.
	//
	//	+-------------------------+----------------------------------------------------------------------------------+
	//	|                         |                                                                                  |
	//	|          VALUE          |                                     MEANING                                      |
	//	|                         |                                                                                  |
	//	+-------------------------+----------------------------------------------------------------------------------+
	//	+-------------------------+----------------------------------------------------------------------------------+
	//	| REPORTING_FLAGS_NONE    | When this value is set, the server MUST NOT return any optional information.     |
	//	+-------------------------+----------------------------------------------------------------------------------+
	//	| REPORTING_FLAGS_BACKLOG | In addition to the default reporting information, when this value is set, the    |
	//	|                         | server MUST return the count of backlogged transactions.                         |
	//	+-------------------------+----------------------------------------------------------------------------------+
	//	| REPORTING_FLAGS_FILES   | In addition to the default reporting information, when this value is set, the    |
	//	|                         | server MUST return the information about the count and cumulative size of files  |
	//	|                         | in the replicated folders.                                                       |
	//	+-------------------------+----------------------------------------------------------------------------------+
	Flags int32 `idl:"name:flags" json:"flags"`
}

GetReportRequest structure represents the GetReport operation request

func (*GetReportRequest) MarshalNDR

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

func (*GetReportRequest) UnmarshalNDR

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

type GetReportResponse

type GetReportResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// memberVersionVectors: If the flags parameter has REPORTING_FLAGS_BACKLOG set, the
	// set of version vectors for the replicated folders on the server MUST be returned
	// in this output parameter. The VersionVectorData structure is specified in section
	// 2.2.1.4.
	MemberVersionVectors *oaut.SafeArray `idl:"name:memberVersionVectors" json:"member_version_vectors"`
	// reportXML: The report body in the XML format MUST be returned in this output parameter.
	// The report body MUST follow the XML format described in section 2.2.1.5.
	ReportXML *oaut.String `idl:"name:reportXML" json:"report_xml"`
	// Return: The GetReport return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetReportResponse structure represents the GetReport operation response

func (*GetReportResponse) MarshalNDR

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

func (*GetReportResponse) UnmarshalNDR

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

type ServerHealthReportClient

type ServerHealthReportClient interface {

	// IUnknown retrieval method.
	Unknown() iunknown.UnknownClient

	// The GetReport method retrieves health information for the specified replication group
	// that is hosted on the server in addition to the global health data of the DFS-R service
	// on the server.
	//
	// Return Values: The method MUST return 0 on success; or return an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	GetReport(context.Context, *GetReportRequest, ...dcerpc.CallOption) (*GetReportResponse, error)

	// The GetCompressedReport method gets the health information for the specified replication
	// group and the global health data of the DFS-R service on the server. The server MUST
	// encode the report as a field in the format that is specified by the DFS-R compression
	// algorithm in [MS-FRS2] section 3.1.1.1.
	//
	// Return Values: The method MUST return zero on success, or an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	GetCompressedReport(context.Context, *GetCompressedReportRequest, ...dcerpc.CallOption) (*GetCompressedReportResponse, error)

	// The GetRawReportEx method is not currently in use and has never been implemented
	// in any version of the DFS-R Helper Protocol. It is reserved for future use.
	//
	// Return Values: The server MUST return the E_NOTIMPL error code (numeric value 0x80004001)
	// and take no action.<60>
	//
	//	+----------------------+------------------+
	//	|        RETURN        |                  |
	//	|      VALUE/CODE      |   DESCRIPTION    |
	//	|                      |                  |
	//	+----------------------+------------------+
	//	+----------------------+------------------+
	//	| 0x80004001 E_NOTIMPL | Not implemented. |
	//	+----------------------+------------------+
	GetRawReportEx(context.Context, *GetRawReportExRequest, ...dcerpc.CallOption) (*GetRawReportExResponse, error)

	// The GetReferenceVersionVectors method gets the version vectors for all replicated
	// folders in the specified replication group.
	//
	// Return Values: The method MUST return zero on success or return an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	GetReferenceVersionVectors(context.Context, *GetReferenceVersionVectorsRequest, ...dcerpc.CallOption) (*GetReferenceVersionVectorsResponse, error)

	// The GetReferenceBacklogCounts method gets the outbound backlog for a replicated folder
	// on the member, relative to specific version vectors.
	//
	// Return Values: The method MUST return 0 on success or return an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	//
	// After the server receives this message, it MUST get the backlog count for each version
	// vector that is supplied in the message parameters. If the server fails to retrieve
	// a backlog count, it returns a special value in the backlogCounts array at an index
	// that corresponds to the index in the flatMemberVersionVectors for the entry that
	// was used as input. The overall method MAY still return success (S_OK). <62> These
	// special values are as follows:
	//
	// * BACKLOG_CONTENT_SET_NOT_PRESENT (0xffffffff): The content set is not present in
	// DFS-R.
	//
	// * BACKLOG_ERROR_GET_BACKLOG_FAILED (0xfffffffe): Describes one or more of the following
	// conditions:
	//
	// * Run-time errors or implementation-specific errors that prevent the calculation
	// of the backlog count.
	//
	// * The flat member version vector could not be decompressed by using DFS-R. The DFS-R
	// decompression algorithm is specified in [MS-FRS2] ( ../ms-frs2/9914bdd4-9579-43a7-9f2d-9efe2e162944
	// ) section 3.1.1.2 ( ../ms-frs2/8cb5bae9-edf3-4833-9f0a-9d7e24218d3d ).
	//
	// * The version vector is empty (has a length of zero).
	//
	// The backlog counts MUST be saved in the backlogCounts output parameter.
	GetReferenceBacklogCounts(context.Context, *GetReferenceBacklogCountsRequest, ...dcerpc.CallOption) (*GetReferenceBacklogCountsResponse, error)

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

	// IPID sets the object interface identifier.
	IPID(context.Context, *dcom.IPID) ServerHealthReportClient
}

IServerHealthReport interface.

func NewServerHealthReportClient

func NewServerHealthReportClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (ServerHealthReportClient, error)

type ServerHealthReportServer

type ServerHealthReportServer interface {

	// IUnknown base class.
	iunknown.UnknownServer

	// The GetReport method retrieves health information for the specified replication group
	// that is hosted on the server in addition to the global health data of the DFS-R service
	// on the server.
	//
	// Return Values: The method MUST return 0 on success; or return an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	GetReport(context.Context, *GetReportRequest) (*GetReportResponse, error)

	// The GetCompressedReport method gets the health information for the specified replication
	// group and the global health data of the DFS-R service on the server. The server MUST
	// encode the report as a field in the format that is specified by the DFS-R compression
	// algorithm in [MS-FRS2] section 3.1.1.1.
	//
	// Return Values: The method MUST return zero on success, or an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	GetCompressedReport(context.Context, *GetCompressedReportRequest) (*GetCompressedReportResponse, error)

	// The GetRawReportEx method is not currently in use and has never been implemented
	// in any version of the DFS-R Helper Protocol. It is reserved for future use.
	//
	// Return Values: The server MUST return the E_NOTIMPL error code (numeric value 0x80004001)
	// and take no action.<60>
	//
	//	+----------------------+------------------+
	//	|        RETURN        |                  |
	//	|      VALUE/CODE      |   DESCRIPTION    |
	//	|                      |                  |
	//	+----------------------+------------------+
	//	+----------------------+------------------+
	//	| 0x80004001 E_NOTIMPL | Not implemented. |
	//	+----------------------+------------------+
	GetRawReportEx(context.Context, *GetRawReportExRequest) (*GetRawReportExResponse, error)

	// The GetReferenceVersionVectors method gets the version vectors for all replicated
	// folders in the specified replication group.
	//
	// Return Values: The method MUST return zero on success or return an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	GetReferenceVersionVectors(context.Context, *GetReferenceVersionVectorsRequest) (*GetReferenceVersionVectorsResponse, error)

	// The GetReferenceBacklogCounts method gets the outbound backlog for a replicated folder
	// on the member, relative to specific version vectors.
	//
	// Return Values: The method MUST return 0 on success or return an implementation-specific
	// nonzero HRESULT error code, as specified in [MS-ERREF] section 2.1, between 0x80000000
	// and 0xFFFFFFFF on failure. For protocol purposes, all nonzero values MUST be treated
	// as equivalent failures.
	//
	// After the server receives this message, it MUST get the backlog count for each version
	// vector that is supplied in the message parameters. If the server fails to retrieve
	// a backlog count, it returns a special value in the backlogCounts array at an index
	// that corresponds to the index in the flatMemberVersionVectors for the entry that
	// was used as input. The overall method MAY still return success (S_OK). <62> These
	// special values are as follows:
	//
	// * BACKLOG_CONTENT_SET_NOT_PRESENT (0xffffffff): The content set is not present in
	// DFS-R.
	//
	// * BACKLOG_ERROR_GET_BACKLOG_FAILED (0xfffffffe): Describes one or more of the following
	// conditions:
	//
	// * Run-time errors or implementation-specific errors that prevent the calculation
	// of the backlog count.
	//
	// * The flat member version vector could not be decompressed by using DFS-R. The DFS-R
	// decompression algorithm is specified in [MS-FRS2] ( ../ms-frs2/9914bdd4-9579-43a7-9f2d-9efe2e162944
	// ) section 3.1.1.2 ( ../ms-frs2/8cb5bae9-edf3-4833-9f0a-9d7e24218d3d ).
	//
	// * The version vector is empty (has a length of zero).
	//
	// The backlog counts MUST be saved in the backlogCounts output parameter.
	GetReferenceBacklogCounts(context.Context, *GetReferenceBacklogCountsRequest) (*GetReferenceBacklogCountsResponse, error)
}

IServerHealthReport server interface.

Jump to

Keyboard shortcuts

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