Documentation ¶
Index ¶
- Variables
- func NewVDiskServerHandle(o VDiskServer) dcerpc.ServerHandle
- func RegisterVDiskServer(conn dcerpc.Conn, o VDiskServer, opts ...dcerpc.Option)
- func VDiskServerHandle(ctx context.Context, o VDiskServer, opNum int, r ndr.Reader) (dcerpc.Operation, error)
- type GetDeviceNameRequest
- type GetDeviceNameResponse
- type GetHostVolumeRequest
- type GetHostVolumeResponse
- type GetPropertiesRequest
- type GetPropertiesResponse
- type OpenRequest
- type OpenResponse
- type VDiskClient
- type VDiskServer
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // IVdsVDisk interface identifier 1e062b84-e5e6-4b4b-8a25-67b81e8f13e8 VDiskIID = &dcom.IID{Data1: 0x1e062b84, Data2: 0xe5e6, Data3: 0x4b4b, Data4: []byte{0x8a, 0x25, 0x67, 0xb8, 0x1e, 0x8f, 0x13, 0xe8}} // Syntax UUID VDiskSyntaxUUID = &uuid.UUID{TimeLow: 0x1e062b84, TimeMid: 0xe5e6, TimeHiAndVersion: 0x4b4b, ClockSeqHiAndReserved: 0x8a, ClockSeqLow: 0x25, Node: [6]uint8{0x67, 0xb8, 0x1e, 0x8f, 0x13, 0xe8}} // Syntax ID VDiskSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: VDiskSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0} )
View Source
var (
// import guard
GoPackage = "dcom/vds"
)
Functions ¶
func NewVDiskServerHandle ¶
func NewVDiskServerHandle(o VDiskServer) dcerpc.ServerHandle
func RegisterVDiskServer ¶
func RegisterVDiskServer(conn dcerpc.Conn, o VDiskServer, opts ...dcerpc.Option)
Types ¶
type GetDeviceNameRequest ¶
type GetDeviceNameRequest struct { // This: ORPCTHIS structure that is used to send ORPC extension data to the server. This *dcom.ORPCThis `idl:"name:This" json:"this"` }
GetDeviceNameRequest structure represents the GetDeviceName operation request
func (*GetDeviceNameRequest) MarshalNDR ¶
func (*GetDeviceNameRequest) UnmarshalNDR ¶
type GetDeviceNameResponse ¶
type GetDeviceNameResponse struct { // That: ORPCTHAT structure that is used to return ORPC extension data to the client. That *dcom.ORPCThat `idl:"name:That" json:"that"` // ppDeviceName: A pointer to a variable that receives the device name of the disk. DeviceName string `idl:"name:ppDeviceName;string" json:"device_name"` // Return: The GetDeviceName return value. Return int32 `idl:"name:Return" json:"return"` }
GetDeviceNameResponse structure represents the GetDeviceName operation response
func (*GetDeviceNameResponse) MarshalNDR ¶
func (*GetDeviceNameResponse) UnmarshalNDR ¶
type GetHostVolumeRequest ¶
type GetHostVolumeRequest struct { // This: ORPCTHIS structure that is used to send ORPC extension data to the server. This *dcom.ORPCThis `idl:"name:This" json:"this"` }
GetHostVolumeRequest structure represents the GetHostVolume operation request
func (*GetHostVolumeRequest) MarshalNDR ¶
func (*GetHostVolumeRequest) UnmarshalNDR ¶
type GetHostVolumeResponse ¶
type GetHostVolumeResponse struct { // That: ORPCTHAT structure that is used to return ORPC extension data to the client. That *dcom.ORPCThat `idl:"name:That" json:"that"` Volume *vds.Volume `idl:"name:ppVolume" json:"volume"` // Return: The GetHostVolume return value. Return int32 `idl:"name:Return" json:"return"` }
GetHostVolumeResponse structure represents the GetHostVolume operation response
func (*GetHostVolumeResponse) MarshalNDR ¶
func (*GetHostVolumeResponse) UnmarshalNDR ¶
type GetPropertiesRequest ¶
type GetPropertiesRequest struct { // This: ORPCTHIS structure that is used to send ORPC extension data to the server. This *dcom.ORPCThis `idl:"name:This" json:"this"` }
GetPropertiesRequest structure represents the GetProperties operation request
func (*GetPropertiesRequest) MarshalNDR ¶
func (*GetPropertiesRequest) UnmarshalNDR ¶
type GetPropertiesResponse ¶
type GetPropertiesResponse struct { // That: ORPCTHAT structure that is used to return ORPC extension data to the client. That *dcom.ORPCThat `idl:"name:That" json:"that"` DiskProperties *vds.VDiskProperties `idl:"name:pDiskProperties" json:"disk_properties"` // Return: The GetProperties return value. Return int32 `idl:"name:Return" json:"return"` }
GetPropertiesResponse structure represents the GetProperties operation response
func (*GetPropertiesResponse) MarshalNDR ¶
func (*GetPropertiesResponse) UnmarshalNDR ¶
type OpenRequest ¶
type OpenRequest struct { // This: ORPCTHIS structure that is used to send ORPC extension data to the server. This *dcom.ORPCThis `idl:"name:This" json:"this"` // AccessMask: A VIRTUAL_DISK_ACCESS_MASK (section 2.2.2.19.1.4) structure that contains // the set of access rights to be applied to the opened virtual disk. AccessMask vds.VirtualDiskAccessMask `idl:"name:AccessMask" json:"access_mask"` // Flags: A bitmask of OPEN_VIRTUAL_DISK_FLAG (section 2.2.2.19.1.2) flags specifying // how the virtual disk is to be opened. Flags vds.OpenVirtualDiskFlag `idl:"name:Flags" json:"flags"` // ReadWriteDepth: This is applicable only to differencing type virtual disks. The number // of backing stores (files) to open read/write. This count includes the child. The // remaining stores in the differencing chain MUST be opened as read-only. For example, // given a differencing disk with two parents (diskA is the differencing disk whose // parent is diskB, and since diskB is a differencing disk, it has a parent which is // diskC), entering '2' for this parameter will open the differencing disk (diskA) and // the parent used to create this differencing disk (diskB) as read-write. In this case, // diskB is also a differencing disk and its parent (diskC) is opened as read-only. ReadWriteDepth uint32 `idl:"name:ReadWriteDepth" json:"read_write_depth"` }
OpenRequest structure represents the Open operation request
func (*OpenRequest) MarshalNDR ¶
func (*OpenRequest) UnmarshalNDR ¶
type OpenResponse ¶
type OpenResponse struct { // That: ORPCTHAT structure that is used to return ORPC extension data to the client. That *dcom.ORPCThat `idl:"name:That" json:"that"` OpenVDisk *vds.OpenVDisk `idl:"name:ppOpenVDisk" json:"open_v_disk"` // Return: The Open return value. Return int32 `idl:"name:Return" json:"return"` }
OpenResponse structure represents the Open operation response
func (*OpenResponse) MarshalNDR ¶
func (*OpenResponse) UnmarshalNDR ¶
type VDiskClient ¶
type VDiskClient interface { // IUnknown retrieval method. Unknown() iunknown.UnknownClient // The Open method opens a handle to the specified virtual disk file and returns an // IVdsOpenVDisk (section 3.1.15.2) interface pointer to an object representing the // open virtual disk (an OpenVirtualDisk object). Release the IVdsOpenVDisk interface // to close the handle to the virtual disk. // // Return Values: The method MUST return zero to indicate success, or return an implementation-specific // nonzero error code to indicate failure. Open(context.Context, *OpenRequest, ...dcerpc.CallOption) (*OpenResponse, error) // GetProperties operation. GetProperties(context.Context, *GetPropertiesRequest, ...dcerpc.CallOption) (*GetPropertiesResponse, error) // The GetHostVolume method returns an interface pointer to the volume object for the // volume on which the virtual disk backing store file resides.<139> // // 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. GetHostVolume(context.Context, *GetHostVolumeRequest, ...dcerpc.CallOption) (*GetHostVolumeResponse, error) // The GetDeviceName method returns the device name of the disk. // // Return Values: The method MUST return zero to indicate success, or return an implementation-specific // nonzero error code to indicate failure. GetDeviceName(context.Context, *GetDeviceNameRequest, ...dcerpc.CallOption) (*GetDeviceNameResponse, error) // AlterContext alters the client context. AlterContext(context.Context, ...dcerpc.Option) error // IPID sets the object interface identifier. IPID(context.Context, *dcom.IPID) VDiskClient }
IVdsVDisk interface.
func NewVDiskClient ¶
type VDiskServer ¶
type VDiskServer interface { // IUnknown base class. iunknown.UnknownServer // The Open method opens a handle to the specified virtual disk file and returns an // IVdsOpenVDisk (section 3.1.15.2) interface pointer to an object representing the // open virtual disk (an OpenVirtualDisk object). Release the IVdsOpenVDisk interface // to close the handle to the virtual disk. // // Return Values: The method MUST return zero to indicate success, or return an implementation-specific // nonzero error code to indicate failure. Open(context.Context, *OpenRequest) (*OpenResponse, error) // GetProperties operation. GetProperties(context.Context, *GetPropertiesRequest) (*GetPropertiesResponse, error) // The GetHostVolume method returns an interface pointer to the volume object for the // volume on which the virtual disk backing store file resides.<139> // // 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. GetHostVolume(context.Context, *GetHostVolumeRequest) (*GetHostVolumeResponse, error) // The GetDeviceName method returns the device name of the disk. // // Return Values: The method MUST return zero to indicate success, or return an implementation-specific // nonzero error code to indicate failure. GetDeviceName(context.Context, *GetDeviceNameRequest) (*GetDeviceNameResponse, error) }
IVdsVDisk server interface.
Click to show internal directories.
Click to hide internal directories.