ivolumeclient4

package
v0.1.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

Index

Constants

This section is empty.

Variables

View Source
var (
	// IVolumeClient4 interface identifier deb01010-3a37-4d26-99df-e2bb6ae3ac61
	VolumeClient4IID = &dcom.IID{Data1: 0xdeb01010, Data2: 0x3a37, Data3: 0x4d26, Data4: []byte{0x99, 0xdf, 0xe2, 0xbb, 0x6a, 0xe3, 0xac, 0x61}}
	// Syntax UUID
	VolumeClient4SyntaxUUID = &uuid.UUID{TimeLow: 0xdeb01010, TimeMid: 0x3a37, TimeHiAndVersion: 0x4d26, ClockSeqHiAndReserved: 0x99, ClockSeqLow: 0xdf, Node: [6]uint8{0xe2, 0xbb, 0x6a, 0xe3, 0xac, 0x61}}
	// Syntax ID
	VolumeClient4SyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: VolumeClient4SyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/dmrp"
)

Functions

func NewVolumeClient4ServerHandle

func NewVolumeClient4ServerHandle(o VolumeClient4Server) dcerpc.ServerHandle

func RegisterVolumeClient4Server

func RegisterVolumeClient4Server(conn dcerpc.Conn, o VolumeClient4Server, opts ...dcerpc.Option)

func VolumeClient4ServerHandle

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

Types

type GetVolumeDeviceNameRequest

type GetVolumeDeviceNameRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// _volumeId: Specifies the OID of the volume whose path name is being returned.
	VolumeID int64 `idl:"name:_volumeId" json:"volume_id"`
}

GetVolumeDeviceNameRequest structure represents the GetVolumeDeviceName operation request

func (*GetVolumeDeviceNameRequest) MarshalNDR

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

func (*GetVolumeDeviceNameRequest) UnmarshalNDR

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

type GetVolumeDeviceNameResponse

type GetVolumeDeviceNameResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// cchVolumeDevice: Number of characters returned in pwszVolumeDevice, including the
	// terminating null character.
	VolumeDeviceLength uint32 `idl:"name:cchVolumeDevice" json:"volume_device_length"`
	// pwszVolumeDevice: Pointer to a null-terminated array of characters that stores the
	// Windows NT device name of the volume specified by volumeId. The device name is in
	// the format \Device\DeviceName. Memory for the array is allocated by the server and
	// freed by the client.
	VolumeDevice string `idl:"name:pwszVolumeDevice;size_is:(, cchVolumeDevice)" json:"volume_device"`
	// Return: The GetVolumeDeviceName return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetVolumeDeviceNameResponse structure represents the GetVolumeDeviceName operation response

func (*GetVolumeDeviceNameResponse) MarshalNDR

func (*GetVolumeDeviceNameResponse) UnmarshalNDR

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

type RefreshExRequest

type RefreshExRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
}

RefreshExRequest structure represents the RefreshEx operation request

func (*RefreshExRequest) MarshalNDR

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

func (*RefreshExRequest) UnmarshalNDR

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

type RefreshExResponse

type RefreshExResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// Return: The RefreshEx return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RefreshExResponse structure represents the RefreshEx operation response

func (*RefreshExResponse) MarshalNDR

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

func (*RefreshExResponse) UnmarshalNDR

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

type VolumeClient4Client

type VolumeClient4Client interface {

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

	// The RefreshEx method refreshes the server's cache of storage objects, including regions,
	// removable media and CD-ROM drive media, file systems, and drive letters.
	//
	// This method has no parameters.
	//
	// Return Values: The method MUST return 0 or a nonerror HRESULT on success, or an implementation-specific
	// nonzero error code on failure (as specified in [MS-ERREF]; see also section 2.2.1
	// for HRESULT values predefined by the Disk Management Remote Protocol).
	//
	// The handling of this message is identical to the handling of IVolumeClient::Refresh
	// and IVolumeClient3::Refresh except that the server MUST perform an extra low-level
	// refresh of the list of storage objects by looking for missing dynamic disks or dynamic
	// disks that were missing and are now present. This verification updates the status
	// for missing disks, volumes that reside on missing disks, or disk regions that reside
	// on missing disks.<228>
	//
	// In addition to the preceding actions, the server MUST check whether the lengths of
	// the disks have changed and make appropriate changes to the disk objects in the list
	// of storage objects.
	RefreshEx(context.Context, *RefreshExRequest, ...dcerpc.CallOption) (*RefreshExResponse, error)

	// The GetVolumeDeviceName method retrieves the Windows NT operating system device name
	// of a dynamic volume on the server.
	//
	// Return Values: The method MUST return 0 or a nonerror HRESULT on success, or an implementation-specific
	// nonzero error code on failure (as specified in [MS-ERREF]; see also section 2.2.1
	// for HRESULT values predefined by the Disk Management Remote Protocol).
	GetVolumeDeviceName(context.Context, *GetVolumeDeviceNameRequest, ...dcerpc.CallOption) (*GetVolumeDeviceNameResponse, error)

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

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

IVolumeClient4 interface.

func NewVolumeClient4Client

func NewVolumeClient4Client(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (VolumeClient4Client, error)

type VolumeClient4Server

type VolumeClient4Server interface {

	// IUnknown base class.
	iunknown.UnknownServer

	// The RefreshEx method refreshes the server's cache of storage objects, including regions,
	// removable media and CD-ROM drive media, file systems, and drive letters.
	//
	// This method has no parameters.
	//
	// Return Values: The method MUST return 0 or a nonerror HRESULT on success, or an implementation-specific
	// nonzero error code on failure (as specified in [MS-ERREF]; see also section 2.2.1
	// for HRESULT values predefined by the Disk Management Remote Protocol).
	//
	// The handling of this message is identical to the handling of IVolumeClient::Refresh
	// and IVolumeClient3::Refresh except that the server MUST perform an extra low-level
	// refresh of the list of storage objects by looking for missing dynamic disks or dynamic
	// disks that were missing and are now present. This verification updates the status
	// for missing disks, volumes that reside on missing disks, or disk regions that reside
	// on missing disks.<228>
	//
	// In addition to the preceding actions, the server MUST check whether the lengths of
	// the disks have changed and make appropriate changes to the disk objects in the list
	// of storage objects.
	RefreshEx(context.Context, *RefreshExRequest) (*RefreshExResponse, error)

	// The GetVolumeDeviceName method retrieves the Windows NT operating system device name
	// of a dynamic volume on the server.
	//
	// Return Values: The method MUST return 0 or a nonerror HRESULT on success, or an implementation-specific
	// nonzero error code on failure (as specified in [MS-ERREF]; see also section 2.2.1
	// for HRESULT values predefined by the Disk Management Remote Protocol).
	GetVolumeDeviceName(context.Context, *GetVolumeDeviceNameRequest) (*GetVolumeDeviceNameResponse, error)
}

IVolumeClient4 server interface.

Jump to

Keyboard shortcuts

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