ienumwbemclassobject

package
v1.0.4 Latest Latest
Warning

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

Go to latest
Published: Oct 16, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// IEnumWbemClassObject interface identifier 027947e1-d731-11ce-a357-000000000001
	EnumClassObjectIID = &dcom.IID{Data1: 0x027947e1, Data2: 0xd731, Data3: 0x11ce, Data4: []byte{0xa3, 0x57, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01}}
	// Syntax UUID
	EnumClassObjectSyntaxUUID = &uuid.UUID{TimeLow: 0x27947e1, TimeMid: 0xd731, TimeHiAndVersion: 0x11ce, ClockSeqHiAndReserved: 0xa3, ClockSeqLow: 0x57, Node: [6]uint8{0x0, 0x0, 0x0, 0x0, 0x0, 0x1}}
	// Syntax ID
	EnumClassObjectSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: EnumClassObjectSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/wmi"
)

Functions

func EnumClassObjectServerHandle

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

func NewEnumClassObjectServerHandle

func NewEnumClassObjectServerHandle(o EnumClassObjectServer) dcerpc.ServerHandle

func RegisterEnumClassObjectServer

func RegisterEnumClassObjectServer(conn dcerpc.Conn, o EnumClassObjectServer, opts ...dcerpc.Option)

Types

type CloneRequest

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

CloneRequest structure represents the Clone operation request

func (*CloneRequest) MarshalNDR

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

func (*CloneRequest) UnmarshalNDR

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

type CloneResponse

type CloneResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// ppEnum: Upon return, MUST contain a pointer to an IEnumWbemClassObject interface
	// CIM object that is a logical copy of the entire enumerator that made the Clone method
	// call, retaining the current position in an enumeration. This parameter MUST NOT be
	// NULL. When returned by the server, this parameter can be NULL if a failure occurred
	// or if there are no results.
	Enum *wmi.EnumClassObject `idl:"name:ppEnum" json:"enum"`
	// Return: The Clone return value.
	Return int32 `idl:"name:Return" json:"return"`
}

CloneResponse structure represents the Clone operation response

func (*CloneResponse) MarshalNDR

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

func (*CloneResponse) UnmarshalNDR

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

type EnumClassObjectClient

type EnumClassObjectClient interface {

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

	// When the IEnumWbemClassObject::Reset method is invoked, the server MUST reset the
	// enumeration sequence to the beginning of the collection of CIM objects.
	//
	// This method has no parameters.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method. If the IEnumWbemClassObject::Reset
	// method is invoked on an enumerator that does not support reset capability, the server
	// MUST return WBEM_E_INVALID_OPERATION.
	Reset(context.Context, *ResetRequest, ...dcerpc.CallOption) (*ResetResponse, error)

	// Next operation.
	Next(context.Context, *NextRequest, ...dcerpc.CallOption) (*NextResponse, error)

	// The IEnumWbemClassObject::NextAsync method is the asynchronous version of the IEnumWbemClassObject::Next
	// method. It provides controlled asynchronous retrieval of CIM objects to a sink. The
	// server MUST asynchronously get one or more CIM objects, starting at the current position
	// in an enumeration, and MUST move the current position by the number of CIM objects.
	// When IEnumWbemClassObject is created, the current position MUST be set on the first
	// CIM object of the collection. The order of the CIM objects that are stored in the
	// enumerator is arbitrary.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method.
	NextAsync(context.Context, *NextAsyncRequest, ...dcerpc.CallOption) (*NextAsyncResponse, error)

	// The IEnumWbemClassObject::Clone method makes a logical copy of the entire enumerator.
	// The cloned enumerator MUST have the same current position as the source enumerator.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method.
	Clone(context.Context, *CloneRequest, ...dcerpc.CallOption) (*CloneResponse, error)

	// When the IEnumWbemClassObject::Skip method is invoked, the server MUST move the current
	// position in an enumeration ahead by a specified number of CIM objects.
	//
	// The IEnumWbemClassObject::Skip method opnum equals 7.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method.
	Skip(context.Context, *SkipRequest, ...dcerpc.CallOption) (*SkipResponse, error)

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

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

IEnumWbemClassObject interface.

func NewEnumClassObjectClient

func NewEnumClassObjectClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (EnumClassObjectClient, error)

type EnumClassObjectServer

type EnumClassObjectServer interface {

	// IUnknown base class.
	iunknown.UnknownServer

	// When the IEnumWbemClassObject::Reset method is invoked, the server MUST reset the
	// enumeration sequence to the beginning of the collection of CIM objects.
	//
	// This method has no parameters.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method. If the IEnumWbemClassObject::Reset
	// method is invoked on an enumerator that does not support reset capability, the server
	// MUST return WBEM_E_INVALID_OPERATION.
	Reset(context.Context, *ResetRequest) (*ResetResponse, error)

	// Next operation.
	Next(context.Context, *NextRequest) (*NextResponse, error)

	// The IEnumWbemClassObject::NextAsync method is the asynchronous version of the IEnumWbemClassObject::Next
	// method. It provides controlled asynchronous retrieval of CIM objects to a sink. The
	// server MUST asynchronously get one or more CIM objects, starting at the current position
	// in an enumeration, and MUST move the current position by the number of CIM objects.
	// When IEnumWbemClassObject is created, the current position MUST be set on the first
	// CIM object of the collection. The order of the CIM objects that are stored in the
	// enumerator is arbitrary.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method.
	NextAsync(context.Context, *NextAsyncRequest) (*NextAsyncResponse, error)

	// The IEnumWbemClassObject::Clone method makes a logical copy of the entire enumerator.
	// The cloned enumerator MUST have the same current position as the source enumerator.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method.
	Clone(context.Context, *CloneRequest) (*CloneResponse, error)

	// When the IEnumWbemClassObject::Skip method is invoked, the server MUST move the current
	// position in an enumeration ahead by a specified number of CIM objects.
	//
	// The IEnumWbemClassObject::Skip method opnum equals 7.
	//
	// Return Values: This method MUST return an HRESULT value that MUST indicate the status
	// of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section
	// 2.2.11) to indicate the successful completion of the method.
	Skip(context.Context, *SkipRequest) (*SkipResponse, error)
}

IEnumWbemClassObject server interface.

type NextAsyncRequest

type NextAsyncRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// uCount: MUST be the number of CIM objects being requested.
	Count uint32 `idl:"name:uCount" json:"count"`
	// pSink: MUST be a pointer to the IWbemObjectSink interface, which MUST represent the
	// sink to receive the CIM object. As each batch of CIM objects is requested, they MUST
	// be delivered to the IWbemObjectSink::Indicate method to which pSink points (as specified
	// in section 3.1.4.2.1) and MUST be followed by a final call to the IWbemObjectSink::SetStatus
	// method to which pSink points, as specified in section 3.1.4.2.2. This parameter MUST
	// NOT be NULL. In error cases, indicated by the HRESULT return value, the supplied
	// IWbemObjectSink interface pointer MUST NOT be used by the server.
	Sink *wmi.ObjectSink `idl:"name:pSink" json:"sink"`
}

NextAsyncRequest structure represents the NextAsync operation request

func (*NextAsyncRequest) MarshalNDR

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

func (*NextAsyncRequest) UnmarshalNDR

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

type NextAsyncResponse

type NextAsyncResponse 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 NextAsync return value.
	Return int32 `idl:"name:Return" json:"return"`
}

NextAsyncResponse structure represents the NextAsync operation response

func (*NextAsyncResponse) MarshalNDR

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

func (*NextAsyncResponse) UnmarshalNDR

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

type NextRequest

type NextRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This    *dcom.ORPCThis `idl:"name:This" json:"this"`
	Timeout int32          `idl:"name:lTimeout" json:"timeout"`
	Count   uint32         `idl:"name:uCount" json:"count"`
}

NextRequest structure represents the Next operation request

func (*NextRequest) MarshalNDR

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

func (*NextRequest) UnmarshalNDR

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

type NextResponse

type NextResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That     *dcom.ORPCThat     `idl:"name:That" json:"that"`
	Objects  []*wmi.ClassObject `idl:"name:apObjects;size_is:(uCount);length_is:(puReturned)" json:"objects"`
	Returned uint32             `idl:"name:puReturned" json:"returned"`
	// Return: The Next return value.
	Return int32 `idl:"name:Return" json:"return"`
}

NextResponse structure represents the Next operation response

func (*NextResponse) MarshalNDR

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

func (*NextResponse) UnmarshalNDR

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

type ResetRequest

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

ResetRequest structure represents the Reset operation request

func (*ResetRequest) MarshalNDR

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

func (*ResetRequest) UnmarshalNDR

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

type ResetResponse

type ResetResponse 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 Reset return value.
	Return int32 `idl:"name:Return" json:"return"`
}

ResetResponse structure represents the Reset operation response

func (*ResetResponse) MarshalNDR

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

func (*ResetResponse) UnmarshalNDR

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

type SkipRequest

type SkipRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// lTimeout: MUST be the maximum amount of time, in milliseconds, that the call to Skip
	// allows to pass before it times out. If the constant WBEM_INFINITE (0xFFFFFFFF) is
	// used, the Skip method call waits until the operation succeeds.
	Timeout int32 `idl:"name:lTimeout" json:"timeout"`
	// nCount: MUST be the number of CIM objects to skip in the enumeration. If this parameter
	// is greater than the number of CIM objects that remain to enumerate, the call MUST
	// skip to the end of the enumeration, and WBEM_S_FALSE MUST be the returned value for
	// the method.
	Count uint32 `idl:"name:nCount" json:"count"`
}

SkipRequest structure represents the Skip operation request

func (*SkipRequest) MarshalNDR

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

func (*SkipRequest) UnmarshalNDR

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

type SkipResponse

type SkipResponse 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 Skip return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SkipResponse structure represents the Skip operation response

func (*SkipResponse) MarshalNDR

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

func (*SkipResponse) UnmarshalNDR

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

Jump to

Keyboard shortcuts

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