ivdspack2

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// IVdsPack2 interface identifier 13b50bff-290a-47dd-8558-b7c58db1a71a
	Pack2IID = &dcom.IID{Data1: 0x13b50bff, Data2: 0x290a, Data3: 0x47dd, Data4: []byte{0x85, 0x58, 0xb7, 0xc5, 0x8d, 0xb1, 0xa7, 0x1a}}
	// Syntax UUID
	Pack2SyntaxUUID = &uuid.UUID{TimeLow: 0x13b50bff, TimeMid: 0x290a, TimeHiAndVersion: 0x47dd, ClockSeqHiAndReserved: 0x85, ClockSeqLow: 0x58, Node: [6]uint8{0xb7, 0xc5, 0x8d, 0xb1, 0xa7, 0x1a}}
	// Syntax ID
	Pack2SyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: Pack2SyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/vds"
)

Functions

func NewPack2ServerHandle

func NewPack2ServerHandle(o Pack2Server) dcerpc.ServerHandle

func Pack2ServerHandle

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

func RegisterPack2Server

func RegisterPack2Server(conn dcerpc.Conn, o Pack2Server, opts ...dcerpc.Option)

Types

type CreateVolume2Request

type CreateVolume2Request struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// type: A value from the VDS_VOLUME_TYPE enumeration that indicates the type of volume
	// to create.
	Type vds.VolumeType `idl:"name:type" json:"type"`
	// pInputDiskArray: An array of VDS_INPUT_DISK structures that indicate the disks on
	// which to create the volume.<86>
	InputDiskArray []*vds.InputDisk `idl:"name:pInputDiskArray;size_is:(lNumberOfDisks)" json:"input_disk_array"`
	// lNumberOfDisks: The number of elements in pInputDiskArray.
	NumberOfDisks int32 `idl:"name:lNumberOfDisks" json:"number_of_disks"`
	// ulStripeSize: The stripe size, in bytes, of the new volume.<87>
	StripeSize uint32 `idl:"name:ulStripeSize" json:"stripe_size"`
	// ulAlign: The number of bytes for the volume alignment. If zero is specified, the
	// server determines the alignment value based on the size of the disk on which the
	// volume is created.<88>
	Align uint32 `idl:"name:ulAlign" json:"align"`
}

CreateVolume2Request structure represents the CreateVolume2 operation request

func (*CreateVolume2Request) MarshalNDR

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

func (*CreateVolume2Request) UnmarshalNDR

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

type CreateVolume2Response

type CreateVolume2Response struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppAsync: A pointer to an IVdsAsync interface that, if the operation is successfully
	// completed, receives the IVdsAsync interface to monitor and control this operation.
	// Callers MUST release the interface when they are done with it. If the IVdsAsync::Wait
	// (Opnum 4) method is called on the interface, the interfaces returned in the VDS_ASYNC_OUTPUT
	// structure MUST be released as well. For more information on handling asynchronous
	// tasks, see section 3.4.5.1.9.
	Async *vds.Async `idl:"name:ppAsync" json:"async"`
	// Return: The CreateVolume2 return value.
	Return int32 `idl:"name:Return" json:"return"`
}

CreateVolume2Response structure represents the CreateVolume2 operation response

func (*CreateVolume2Response) MarshalNDR

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

func (*CreateVolume2Response) UnmarshalNDR

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

type Pack2Client

type Pack2Client interface {

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

	// The CreateVolume2 method creates a volume in a disk pack with an optional alignment
	// parameter.
	//
	// Return Values: The method MUST return zero or a non-error HRESULT (as specified in
	// [MS-ERREF]) to indicate success, or return an implementation-specific nonzero error
	// code to indicate failure. For the HRESULT values predefined by the Virtual Disk Service
	// Remote Protocol, see section 2.2.3.
	//
	// IVdsPack2::CreateVolume2 has the same sequencing rules as IVdsPack::CreateVolume
	// (Opnum 7), as specified in section 3.4.5.2.19.5.
	CreateVolume2(context.Context, *CreateVolume2Request, ...dcerpc.CallOption) (*CreateVolume2Response, error)

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

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

IVdsPack2 interface.

func NewPack2Client

func NewPack2Client(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (Pack2Client, error)

type Pack2Server

type Pack2Server interface {

	// IUnknown base class.
	iunknown.UnknownServer

	// The CreateVolume2 method creates a volume in a disk pack with an optional alignment
	// parameter.
	//
	// Return Values: The method MUST return zero or a non-error HRESULT (as specified in
	// [MS-ERREF]) to indicate success, or return an implementation-specific nonzero error
	// code to indicate failure. For the HRESULT values predefined by the Virtual Disk Service
	// Remote Protocol, see section 2.2.3.
	//
	// IVdsPack2::CreateVolume2 has the same sequencing rules as IVdsPack::CreateVolume
	// (Opnum 7), as specified in section 3.4.5.2.19.5.
	CreateVolume2(context.Context, *CreateVolume2Request) (*CreateVolume2Response, error)
}

IVdsPack2 server interface.

Jump to

Keyboard shortcuts

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