irasrv

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// IRASrv interface identifier f120a684-b926-447f-9df4-c966cb785648
	RemoteAssistanceServerIID = &dcom.IID{Data1: 0xf120a684, Data2: 0xb926, Data3: 0x447f, Data4: []byte{0x9d, 0xf4, 0xc9, 0x66, 0xcb, 0x78, 0x56, 0x48}}
	// Syntax UUID
	RemoteAssistanceServerSyntaxUUID = &uuid.UUID{TimeLow: 0xf120a684, TimeMid: 0xb926, TimeHiAndVersion: 0x447f, ClockSeqHiAndReserved: 0x9d, ClockSeqLow: 0xf4, Node: [6]uint8{0xc9, 0x66, 0xcb, 0x78, 0x56, 0x48}}
	// Syntax ID
	RemoteAssistanceServerSyntaxV0_0 = &dcerpc.SyntaxID{IfUUID: RemoteAssistanceServerSyntaxUUID, IfVersionMajor: 0, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "dcom/rai"
)

Functions

func NewRemoteAssistanceServerServerHandle

func NewRemoteAssistanceServerServerHandle(o RemoteAssistanceServerServer) dcerpc.ServerHandle

func RegisterRemoteAssistanceServerServer

func RegisterRemoteAssistanceServerServer(conn dcerpc.Conn, o RemoteAssistanceServerServer, opts ...dcerpc.Option)

func RemoteAssistanceServerServerHandle

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

Types

type GetNoviceUserInfoRequest

type GetNoviceUserInfoRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// szName: A pointer to a NULL-terminated Unicode string that contains the Remote Assistance
	// Connection String 2 for the specified terminal services session.
	Name string `idl:"name:szName" json:"name"`
}

GetNoviceUserInfoRequest structure represents the GetNoviceUserInfo operation request

func (*GetNoviceUserInfoRequest) MarshalNDR

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

func (*GetNoviceUserInfoRequest) UnmarshalNDR

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

type GetNoviceUserInfoResponse

type GetNoviceUserInfoResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// szName: A pointer to a NULL-terminated Unicode string that contains the Remote Assistance
	// Connection String 2 for the specified terminal services session.
	Name string `idl:"name:szName" json:"name"`
	// Return: The GetNoviceUserInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetNoviceUserInfoResponse structure represents the GetNoviceUserInfo operation response

func (*GetNoviceUserInfoResponse) MarshalNDR

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

func (*GetNoviceUserInfoResponse) UnmarshalNDR

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

type GetSessionInfoRequest

type GetSessionInfoRequest struct {
	// This: ORPCTHIS structure that is used to send ORPC extension data to the server.
	This *dcom.ORPCThis `idl:"name:This" json:"this"`
	// UserNames: A pointer to a SAFEARRAY, as specified in [MS-OAUT], of BSTRs containing
	// the terminal services session information. Each BSTR element in the array contains
	// the DomainName, UserName, and SessionID in the format DomainName\UserName:SessionID.
	// This is returned to the expert.
	UserNames *oaut.SafeArray `idl:"name:UserNames" json:"user_names"`
	// Count: A pointer to an INT that returns the number of terminal services sessions
	// on the novice.
	Count int32 `idl:"name:Count" json:"count"`
}

GetSessionInfoRequest structure represents the GetSessionInfo operation request

func (*GetSessionInfoRequest) MarshalNDR

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

func (*GetSessionInfoRequest) UnmarshalNDR

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

type GetSessionInfoResponse

type GetSessionInfoResponse struct {
	// That: ORPCTHAT structure that is used to return ORPC extension data to the client.
	That *dcom.ORPCThat `idl:"name:That" json:"that"`
	// UserNames: A pointer to a SAFEARRAY, as specified in [MS-OAUT], of BSTRs containing
	// the terminal services session information. Each BSTR element in the array contains
	// the DomainName, UserName, and SessionID in the format DomainName\UserName:SessionID.
	// This is returned to the expert.
	UserNames *oaut.SafeArray `idl:"name:UserNames" json:"user_names"`
	// Count: A pointer to an INT that returns the number of terminal services sessions
	// on the novice.
	Count int32 `idl:"name:Count" json:"count"`
	// Return: The GetSessionInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetSessionInfoResponse structure represents the GetSessionInfo operation response

func (*GetSessionInfoResponse) MarshalNDR

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

func (*GetSessionInfoResponse) UnmarshalNDR

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

type RemoteAssistanceServerClient

type RemoteAssistanceServerClient interface {

	// IDispatch retrieval method.
	Dispatch() idispatch.DispatchClient

	// The GetNoviceUserInfo method is received by the server in an RPC_REQUEST packet.
	// The method is received in the terminal services session as specified by the Client.
	// In response, the server returns the Remote Assistance Connection String 2 for the
	// specified terminal services session.
	//
	// Return Values: A signed 32-bit value indicating return status. This method MUST return
	// zero to indicate success, or an HRESULT error value (as specified in [MS-ERREF] section
	// 2.1.1) to indicate failure.
	//
	//	+------------------------------+------------------------------------------------------------------------------+
	//	|            RETURN            |                                                                              |
	//	|          VALUE/CODE          |                                 DESCRIPTION                                  |
	//	|                              |                                                                              |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x00000000 S_OK              | The call was successful.                                                     |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x80004003 E_POINTER         | The method failed due to an invalid pointer for szName.                      |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x8007000E E_OUTOFMEMORY     | Out of memory.                                                               |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x80070052 ERROR_CANNOT_MAKE | An instance of Remote Assistance is already running on the novice's machine. |
	//	+------------------------------+------------------------------------------------------------------------------+
	//
	// Exceptions Thrown:
	//
	// No exceptions are thrown beyond those thrown by the underlying RPC protocol [MS-RPCE].
	GetNoviceUserInfo(context.Context, *GetNoviceUserInfoRequest, ...dcerpc.CallOption) (*GetNoviceUserInfoResponse, error)

	// The GetSessionInfo method is received by the server in an RPC_REQUEST packet. In
	// response, the server returns the terminal services session information for the various
	// sessions on the computer. The terminal services session information is returned as
	// a SAFEARRAY of BSTRs. Each BSTR contains the DomainName, UserName and SessionID in
	// the format DomainName\UserName:SessionID.
	//
	// This method also returns the count of the total number of sessions.
	//
	// This method does not return Idle and Disconnected terminal services sessions. Any
	// null values returned in the SAFEARRAY can be ignored.
	//
	// Return Values: A signed 32-bit value indicating return status. This method MUST return
	// zero to indicate success, or an HRESULT error value (as specified in [MS-ERREF] section
	// 2.1.1) to indicate failure.
	//
	//	+--------------------------+----------------------------------------------------+
	//	|          RETURN          |                                                    |
	//	|        VALUE/CODE        |                    DESCRIPTION                     |
	//	|                          |                                                    |
	//	+--------------------------+----------------------------------------------------+
	//	+--------------------------+----------------------------------------------------+
	//	| 0x00000000 S_OK          | The call was successful.                           |
	//	+--------------------------+----------------------------------------------------+
	//	| 0x80004003 E_POINTER     | The method failed due to an invalid pointer.       |
	//	+--------------------------+----------------------------------------------------+
	//	| 0x8007000E E_OUTOFMEMORY | The method was unable to allocate required memory. |
	//	+--------------------------+----------------------------------------------------+
	//
	// Exceptions Thrown:
	//
	// No exceptions are thrown beyond those thrown by the underlying RPC protocol [MS-RPCE].
	GetSessionInfo(context.Context, *GetSessionInfoRequest, ...dcerpc.CallOption) (*GetSessionInfoResponse, error)

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

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

IRASrv interface.

func NewRemoteAssistanceServerClient

func NewRemoteAssistanceServerClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (RemoteAssistanceServerClient, error)

type RemoteAssistanceServerServer

type RemoteAssistanceServerServer interface {

	// IDispatch base class.
	idispatch.DispatchServer

	// The GetNoviceUserInfo method is received by the server in an RPC_REQUEST packet.
	// The method is received in the terminal services session as specified by the Client.
	// In response, the server returns the Remote Assistance Connection String 2 for the
	// specified terminal services session.
	//
	// Return Values: A signed 32-bit value indicating return status. This method MUST return
	// zero to indicate success, or an HRESULT error value (as specified in [MS-ERREF] section
	// 2.1.1) to indicate failure.
	//
	//	+------------------------------+------------------------------------------------------------------------------+
	//	|            RETURN            |                                                                              |
	//	|          VALUE/CODE          |                                 DESCRIPTION                                  |
	//	|                              |                                                                              |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x00000000 S_OK              | The call was successful.                                                     |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x80004003 E_POINTER         | The method failed due to an invalid pointer for szName.                      |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x8007000E E_OUTOFMEMORY     | Out of memory.                                                               |
	//	+------------------------------+------------------------------------------------------------------------------+
	//	| 0x80070052 ERROR_CANNOT_MAKE | An instance of Remote Assistance is already running on the novice's machine. |
	//	+------------------------------+------------------------------------------------------------------------------+
	//
	// Exceptions Thrown:
	//
	// No exceptions are thrown beyond those thrown by the underlying RPC protocol [MS-RPCE].
	GetNoviceUserInfo(context.Context, *GetNoviceUserInfoRequest) (*GetNoviceUserInfoResponse, error)

	// The GetSessionInfo method is received by the server in an RPC_REQUEST packet. In
	// response, the server returns the terminal services session information for the various
	// sessions on the computer. The terminal services session information is returned as
	// a SAFEARRAY of BSTRs. Each BSTR contains the DomainName, UserName and SessionID in
	// the format DomainName\UserName:SessionID.
	//
	// This method also returns the count of the total number of sessions.
	//
	// This method does not return Idle and Disconnected terminal services sessions. Any
	// null values returned in the SAFEARRAY can be ignored.
	//
	// Return Values: A signed 32-bit value indicating return status. This method MUST return
	// zero to indicate success, or an HRESULT error value (as specified in [MS-ERREF] section
	// 2.1.1) to indicate failure.
	//
	//	+--------------------------+----------------------------------------------------+
	//	|          RETURN          |                                                    |
	//	|        VALUE/CODE        |                    DESCRIPTION                     |
	//	|                          |                                                    |
	//	+--------------------------+----------------------------------------------------+
	//	+--------------------------+----------------------------------------------------+
	//	| 0x00000000 S_OK          | The call was successful.                           |
	//	+--------------------------+----------------------------------------------------+
	//	| 0x80004003 E_POINTER     | The method failed due to an invalid pointer.       |
	//	+--------------------------+----------------------------------------------------+
	//	| 0x8007000E E_OUTOFMEMORY | The method was unable to allocate required memory. |
	//	+--------------------------+----------------------------------------------------+
	//
	// Exceptions Thrown:
	//
	// No exceptions are thrown beyond those thrown by the underlying RPC protocol [MS-RPCE].
	GetSessionInfo(context.Context, *GetSessionInfoRequest) (*GetSessionInfoResponse, error)
}

IRASrv server interface.

Jump to

Keyboard shortcuts

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