itaskschedulerservice

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Syntax UUID
	TaskSchedulerServiceSyntaxUUID = &uuid.UUID{TimeLow: 0x86d35949, TimeMid: 0x83c9, TimeHiAndVersion: 0x4044, ClockSeqHiAndReserved: 0xb4, ClockSeqLow: 0x24, Node: [6]uint8{0xdb, 0x36, 0x32, 0x31, 0xfd, 0xc}}
	// Syntax ID
	TaskSchedulerServiceSyntaxV1_0 = &dcerpc.SyntaxID{IfUUID: TaskSchedulerServiceSyntaxUUID, IfVersionMajor: 1, IfVersionMinor: 0}
)
View Source
var (
	// import guard
	GoPackage = "sch"
)

Functions

func NewTaskSchedulerServiceServerHandle

func NewTaskSchedulerServiceServerHandle(o TaskSchedulerServiceServer) dcerpc.ServerHandle

func RegisterTaskSchedulerServiceServer

func RegisterTaskSchedulerServiceServer(conn dcerpc.Conn, o TaskSchedulerServiceServer, opts ...dcerpc.Option)

func TaskSchedulerServiceServerHandle

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

Types

type CreateFolderRequest

type CreateFolderRequest struct {
	// path: MUST contain the full path to be associated with a folder (section 2.3.11).
	Path string `idl:"name:path;string" json:"path"`
	// sddl: If non-NULL, MUST be a security descriptor in SDDL format as specified in [MS-DTYP].
	SDDL string `idl:"name:sddl;string;pointer:unique" json:"sddl"`
	// flags: Unused, MUST be 0.
	Flags uint32 `idl:"name:flags" json:"flags"`
}

CreateFolderRequest structure represents the SchRpcCreateFolder operation request

func (*CreateFolderRequest) MarshalNDR

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

func (*CreateFolderRequest) UnmarshalNDR

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

type CreateFolderResponse

type CreateFolderResponse struct {
	// Return: The SchRpcCreateFolder return value.
	Return int32 `idl:"name:Return" json:"return"`
}

CreateFolderResponse structure represents the SchRpcCreateFolder operation response

func (*CreateFolderResponse) MarshalNDR

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

func (*CreateFolderResponse) UnmarshalNDR

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

type DeleteRequest

type DeleteRequest struct {
	// path: MUST be the full path to the task or folder to delete using the format specified
	// in section 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// flags: Unused. The client MUST set to zero and the server MUST return an error if
	// nonzero.
	Flags uint32 `idl:"name:flags" json:"flags"`
}

DeleteRequest structure represents the SchRpcDelete operation request

func (*DeleteRequest) MarshalNDR

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

func (*DeleteRequest) UnmarshalNDR

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

type DeleteResponse

type DeleteResponse struct {
	// Return: The SchRpcDelete return value.
	Return int32 `idl:"name:Return" json:"return"`
}

DeleteResponse structure represents the SchRpcDelete operation response

func (*DeleteResponse) MarshalNDR

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

func (*DeleteResponse) UnmarshalNDR

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

type EnableTaskRequest

type EnableTaskRequest struct {
	// path: MUST contain the full path to the task, in the format specified in section
	// 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// enabled: If TRUE, the server MUST enable the task. Otherwise, the server MUST disable
	// the task.
	Enabled uint32 `idl:"name:enabled" json:"enabled"`
}

EnableTaskRequest structure represents the SchRpcEnableTask operation request

func (*EnableTaskRequest) MarshalNDR

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

func (*EnableTaskRequest) UnmarshalNDR

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

type EnableTaskResponse

type EnableTaskResponse struct {
	// Return: The SchRpcEnableTask return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnableTaskResponse structure represents the SchRpcEnableTask operation response

func (*EnableTaskResponse) MarshalNDR

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

func (*EnableTaskResponse) UnmarshalNDR

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

type EnumFoldersRequest

type EnumFoldersRequest struct {
	// path: MUST contain the full path associated with a folder using the format specified
	// in section 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// flags: All bits except TASK_ENUM_HIDDEN MUST be set to zero and the server MUST return
	// an error if undefined bits are set to 1. This field has one or more of the following
	// values:
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | H |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// Where the bits are defined as:
	//
	//	+--------------------+----------------------------------------------------------------------------------+
	//	|                    |                                                                                  |
	//	|       VALUE        |                                   DESCRIPTION                                    |
	//	|                    |                                                                                  |
	//	+--------------------+----------------------------------------------------------------------------------+
	//	+--------------------+----------------------------------------------------------------------------------+
	//	| H TASK_ENUM_HIDDEN | If set to 1, the server MUST include hidden tasks in the enumeration, otherwise  |
	//	|                    | the server MUST exclude hidden tasks from the enumeration.                       |
	//	+--------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
	// pStartIndex: MUST contain the index at which to start enumeration. If the server
	// returns S_FALSE, the server MUST update startIndex to contain the index at which
	// the enumeration MUST resume.
	StartIndex uint32 `idl:"name:pStartIndex" json:"start_index"`
	// cRequested: MUST contain the number of entries requested. The server MUST NOT return
	// more than cRequested entries.
	RequestedCount uint32 `idl:"name:cRequested" json:"requested_count"`
}

EnumFoldersRequest structure represents the SchRpcEnumFolders operation request

func (*EnumFoldersRequest) MarshalNDR

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

func (*EnumFoldersRequest) UnmarshalNDR

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

type EnumFoldersResponse

type EnumFoldersResponse struct {
	// pStartIndex: MUST contain the index at which to start enumeration. If the server
	// returns S_FALSE, the server MUST update startIndex to contain the index at which
	// the enumeration MUST resume.
	StartIndex uint32 `idl:"name:pStartIndex" json:"start_index"`
	// pcNames: MUST contain a count of enumerated subfolder names contained in pNames.
	NamesCount uint32 `idl:"name:pcNames" json:"names_count"`
	// pNames: Buffer MUST contain returned folder names.
	Names []string `idl:"name:pNames;size_is:(, pcNames);string" json:"names"`
	// Return: The SchRpcEnumFolders return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumFoldersResponse structure represents the SchRpcEnumFolders operation response

func (*EnumFoldersResponse) MarshalNDR

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

func (*EnumFoldersResponse) UnmarshalNDR

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

type EnumInstancesRequest

type EnumInstancesRequest struct {
	// path: MUST contain the full path to a task in the format specified in section 2.3.11.
	// If NULL is specified, all instances for all tasks MUST be returned.
	Path string `idl:"name:path;string;pointer:unique" json:"path"`
	// flags: The flags field MUST contain individual bit flags that MUST have one or more
	// of the following values:
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | H |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	//
	//	+--------------------+---------------------------------------------------------------+
	//	|                    |                                                               |
	//	|       VALUE        |                          DESCRIPTION                          |
	//	|                    |                                                               |
	//	+--------------------+---------------------------------------------------------------+
	//	+--------------------+---------------------------------------------------------------+
	//	| H TASK_ENUM_HIDDEN | If set to 1, hidden tasks MUST be included in the result set. |
	//	+--------------------+---------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
}

EnumInstancesRequest structure represents the SchRpcEnumInstances operation request

func (*EnumInstancesRequest) MarshalNDR

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

func (*EnumInstancesRequest) UnmarshalNDR

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

type EnumInstancesResponse

type EnumInstancesResponse struct {
	// pcGuids: MUST contain the number of instances.
	GUIDsCount uint32 `idl:"name:pcGuids" json:"guids_count"`
	// pGuids: MUST be an array of GUIDs.
	GUIDs []*dtyp.GUID `idl:"name:pGuids;size_is:(, pcGuids)" json:"guids"`
	// Return: The SchRpcEnumInstances return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumInstancesResponse structure represents the SchRpcEnumInstances operation response

func (*EnumInstancesResponse) MarshalNDR

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

func (*EnumInstancesResponse) UnmarshalNDR

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

type EnumTasksRequest

type EnumTasksRequest struct {
	// path: MUST contain the full path associated with a folder as specified in section
	// 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// flags: The flags parameter MUST contain individual bit flags that MUST have one or
	// more of the following values:
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | H |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	//
	//	+--------------------+----------------------------------------------------------------------------------+
	//	|                    |                                                                                  |
	//	|       VALUE        |                                   DESCRIPTION                                    |
	//	|                    |                                                                                  |
	//	+--------------------+----------------------------------------------------------------------------------+
	//	+--------------------+----------------------------------------------------------------------------------+
	//	| H TASK_ENUM_HIDDEN | If set to 1, the server MUST include hidden tasks in the enumeration, otherwise  |
	//	|                    | the server MUST exclude hidden tasks from the enumeration.                       |
	//	+--------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
	// startIndex: MUST contain the index at which to start enumeration. If the server returns
	// S_FALSE, the server MUST update startIndex to contain the index at which the enumeration
	// MUST resume.
	StartIndex uint32 `idl:"name:startIndex" json:"start_index"`
	// cRequested: MUST contain the number of entries requested. The server MUST NOT return
	// more than cRequested entries.
	RequestedCount uint32 `idl:"name:cRequested" json:"requested_count"`
}

EnumTasksRequest structure represents the SchRpcEnumTasks operation request

func (*EnumTasksRequest) MarshalNDR

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

func (*EnumTasksRequest) UnmarshalNDR

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

type EnumTasksResponse

type EnumTasksResponse struct {
	// startIndex: MUST contain the index at which to start enumeration. If the server returns
	// S_FALSE, the server MUST update startIndex to contain the index at which the enumeration
	// MUST resume.
	StartIndex uint32 `idl:"name:startIndex" json:"start_index"`
	// pcNames: The server MUST set pcNames to equal the number of enumerated tasks returned
	// in the pNames parameter.
	NamesCount uint32 `idl:"name:pcNames" json:"names_count"`
	// pNames: Buffer that MUST contain returned task names.
	Names []string `idl:"name:pNames;size_is:(, pcNames);string" json:"names"`
	// Return: The SchRpcEnumTasks return value.
	Return int32 `idl:"name:Return" json:"return"`
}

EnumTasksResponse structure represents the SchRpcEnumTasks operation response

func (*EnumTasksResponse) MarshalNDR

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

func (*EnumTasksResponse) UnmarshalNDR

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

type GetInstanceInfoRequest

type GetInstanceInfoRequest struct {
	// guid: MUST contain the GUID of the running task instance.
	GUID *dtyp.GUID `idl:"name:guid" json:"guid"`
}

GetInstanceInfoRequest structure represents the SchRpcGetInstanceInfo operation request

func (*GetInstanceInfoRequest) MarshalNDR

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

func (*GetInstanceInfoRequest) UnmarshalNDR

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

type GetInstanceInfoResponse

type GetInstanceInfoResponse struct {
	// pPath: MUST be the location where a string containing the task's path is to be returned
	// in the format specified in section 2.3.11. If NULL, specifies that the path is not
	// requested.
	Path string `idl:"name:pPath;string" json:"path"`
	// pState: Location where the state of the instance (section 2.3.13) is to be returned.
	// If NULL, specifies that the state is not requested.
	State uint32 `idl:"name:pState" json:"state"`
	// pCurrentAction: MUST be the location where the name (id) of the action the task is
	// currently executing is to be returned. If NULL, specifies that the current action
	// is not requested.
	CurrentAction string `idl:"name:pCurrentAction;string" json:"current_action"`
	// pInfo: Unused. If non-NULL, the server MUST set the string to NULL.
	Info string `idl:"name:pInfo;string" json:"info"`
	// pcGroupInstances: Unused.
	GroupInstancesCount uint32 `idl:"name:pcGroupInstances" json:"group_instances_count"`
	// pGroupInstances: Unused. If non-NULL, the server MUST set the GUID to NULL.
	GroupInstances []*dtyp.GUID `idl:"name:pGroupInstances;size_is:(, pcGroupInstances)" json:"group_instances"`
	// pEnginePID: MUST be the location where the Process ID of the process executing the
	// task is to be returned. If NULL, specifies that the Process ID is not requested.
	EnginePID uint32 `idl:"name:pEnginePID" json:"engine_pid"`
	// Return: The SchRpcGetInstanceInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetInstanceInfoResponse structure represents the SchRpcGetInstanceInfo operation response

func (*GetInstanceInfoResponse) MarshalNDR

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

func (*GetInstanceInfoResponse) UnmarshalNDR

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

type GetLastRunInfoRequest

type GetLastRunInfoRequest struct {
	// path: MUST contain the full path to a task using the format specified in section
	// 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
}

GetLastRunInfoRequest structure represents the SchRpcGetLastRunInfo operation request

func (*GetLastRunInfoRequest) MarshalNDR

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

func (*GetLastRunInfoRequest) UnmarshalNDR

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

type GetLastRunInfoResponse

type GetLastRunInfoResponse struct {
	// pLastRuntime: The server MUST return an error if this parameter is NULL. The server
	// MUST return the time when the task last started running, or zero if the task has
	// never started.
	LastRuntime *dtyp.SystemTime `idl:"name:pLastRuntime" json:"last_runtime"`
	// pLastReturnCode: The server MUST return an error if this parameter is NULL. The server
	// MUST return the exit code from the task's last execution, or zero if the task has
	// never finished execution.
	LastReturnCode uint32 `idl:"name:pLastReturnCode" json:"last_return_code"`
	// Return: The SchRpcGetLastRunInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetLastRunInfoResponse structure represents the SchRpcGetLastRunInfo operation response

func (*GetLastRunInfoResponse) MarshalNDR

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

func (*GetLastRunInfoResponse) UnmarshalNDR

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

type GetNumberOfMissedRunsRequest

type GetNumberOfMissedRunsRequest struct {
	// path: MUST contain the full path to a task, in the format specified in section 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
}

GetNumberOfMissedRunsRequest structure represents the SchRpcGetNumberOfMissedRuns operation request

func (*GetNumberOfMissedRunsRequest) MarshalNDR

func (*GetNumberOfMissedRunsRequest) UnmarshalNDR

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

type GetNumberOfMissedRunsResponse

type GetNumberOfMissedRunsResponse struct {
	// pNumberOfMissedRuns: MUST be the address of a DWORD that receives the number of times
	// a task was scheduled to run but did not.
	NumberOfMissedRuns uint32 `idl:"name:pNumberOfMissedRuns" json:"number_of_missed_runs"`
	// Return: The SchRpcGetNumberOfMissedRuns return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetNumberOfMissedRunsResponse structure represents the SchRpcGetNumberOfMissedRuns operation response

func (*GetNumberOfMissedRunsResponse) MarshalNDR

func (*GetNumberOfMissedRunsResponse) UnmarshalNDR

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

type GetSecurityRequest

type GetSecurityRequest struct {
	// path: MUST be the full path associated with a task or folder in the format specified
	// in section 2.3.11).
	Path string `idl:"name:path;string" json:"path"`
	// securityInformation: MUST contain security information in the format of a SECURITY_INFORMATION
	// structure. The SECURITY_INFORMATION structure is defined in [MS-DTYP] section 2.4.7.
	SecurityInformation uint32 `idl:"name:securityInformation" json:"security_information"`
}

GetSecurityRequest structure represents the SchRpcGetSecurity operation request

func (*GetSecurityRequest) MarshalNDR

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

func (*GetSecurityRequest) UnmarshalNDR

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

type GetSecurityResponse

type GetSecurityResponse struct {
	// sddl: MUST point to a buffer that will receive security information in string format.
	// The string format is specified in [MS-DTYP] section 2.5.1.
	SDDL string `idl:"name:sddl;string" json:"sddl"`
	// Return: The SchRpcGetSecurity return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetSecurityResponse structure represents the SchRpcGetSecurity operation response

func (*GetSecurityResponse) MarshalNDR

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

func (*GetSecurityResponse) UnmarshalNDR

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

type GetTaskInfoRequest

type GetTaskInfoRequest struct {
	// path: MUST contain the full path to a task using the format specified in section
	// 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// flags: The flags field MUST contain individual bit flags that MUST have one or more
	// of the following values
	//
	//	+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 |  3  | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |     |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 0 | 0 | F S | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
	//	+---+---+---+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	//
	//	+-------------------+-------------------------------------------------------+
	//	|                   |                                                       |
	//	|       VALUE       |                      DESCRIPTION                      |
	//	|                   |                                                       |
	//	+-------------------+-------------------------------------------------------+
	//	+-------------------+-------------------------------------------------------+
	//	| FS SCH_FLAG_STATE | If set to 1, the server MUST retrieve the TASK_STATE. |
	//	+-------------------+-------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
}

GetTaskInfoRequest structure represents the SchRpcGetTaskInfo operation request

func (*GetTaskInfoRequest) MarshalNDR

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

func (*GetTaskInfoRequest) UnmarshalNDR

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

type GetTaskInfoResponse

type GetTaskInfoResponse struct {
	// pEnabled: MUST be a pointer to a Boolean that indicates whether the task is currently
	// enabled.
	Enabled uint32 `idl:"name:pEnabled" json:"enabled"`
	// pState: If non-NULL and the SCH_FLAG_STATE bit in the flags parameter is set, the
	// server MUST return the current state of the task in the format specified in section
	// 2.3.13. Otherwise, the server MUST ignore this parameter.
	State uint32 `idl:"name:pState" json:"state"`
	// Return: The SchRpcGetTaskInfo return value.
	Return int32 `idl:"name:Return" json:"return"`
}

GetTaskInfoResponse structure represents the SchRpcGetTaskInfo operation response

func (*GetTaskInfoResponse) MarshalNDR

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

func (*GetTaskInfoResponse) UnmarshalNDR

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

type HighestVersionRequest

type HighestVersionRequest struct {
}

HighestVersionRequest structure represents the SchRpcHighestVersion operation request

func (*HighestVersionRequest) MarshalNDR

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

func (*HighestVersionRequest) UnmarshalNDR

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

type HighestVersionResponse

type HighestVersionResponse struct {
	// pVersion: The server MUST return the highest version of the Task Scheduler Remoting
	// Protocol that is supported by the server. This version MUST be in the format 0xMMMMmmmm,
	// where 'M' stands for the major version hex digits and 'm' stands for the minor version
	// hex digits. pVersion SHOULD be set to 0x00010002 or 0x00010003.
	//
	//	+------------+----------------------------------------+
	//	|            |                                        |
	//	|   VALUE    |                MEANING                 |
	//	|            |                                        |
	//	+------------+----------------------------------------+
	//	+------------+----------------------------------------+
	//	| 0x00010002 | Version 1.2 of the protocol is in use. |
	//	+------------+----------------------------------------+
	//	| 0x00010003 | Version 1.3 of the protocol is in use. |
	//	+------------+----------------------------------------+
	//	| 0x00010004 | Version 1.4 of the protocol is in use. |
	//	+------------+----------------------------------------+
	Version uint32 `idl:"name:pVersion" json:"version"`
	// Return: The SchRpcHighestVersion return value.
	Return int32 `idl:"name:Return" json:"return"`
}

HighestVersionResponse structure represents the SchRpcHighestVersion operation response

func (*HighestVersionResponse) MarshalNDR

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

func (*HighestVersionResponse) UnmarshalNDR

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

type RegisterTaskRequest

type RegisterTaskRequest struct {
	// path: MUST contain the full path associated (or to be associated) with a task as
	// specified in section 2.3.11. A NULL path indicates that the server SHOULD either
	// take the path from the task definition or generate a path itself.
	Path string `idl:"name:path;string;pointer:unique" json:"path"`
	// xml: MUST contain the task definition in XML format as specified in section 2.5.
	XML string `idl:"name:xml;string" json:"xml"`
	// flags: The flags field MUST contain individual bit flags that MUST have one or more
	// of the following values.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+-----+-----+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 |  6  |  7  |  8  |  9  |  3  |  1  |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |     |     |     |     |  0  |     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+-----+-----+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+-----+-----+
	//	| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | I R | D A | D I | U P | C R | V O |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+-----+-----+
	//
	//
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	|                                      |                                                                                  |
	//	|                VALUE                 |                                   DESCRIPTION                                    |
	//	|                                      |                                                                                  |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| VO TASK_VALIDATE_ONLY                | If set to 1, the server MUST only validate the task definition and not actually  |
	//	|                                      | register the task.                                                               |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| CR TASK_CREATE                       | If set to 1, the server MUST register the task if the task does not already      |
	//	|                                      | exist.                                                                           |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| UP TASK_UPDATE                       | If set to 1, the server MUST update the task if the task already exists.         |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| DI TASK_DISABLE                      | If set to 1, the server MUST disable the task.                                   |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| DA TASK_DONT_ADD_PRINCIPAL_ACE       | If set to 1, the server MUST NOT add an 'Allow' access control entry (ACE) for   |
	//	|                                      | the task principal to the task's security descriptor.                            |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	//	| IR TASK_IGNORE_REGISTRATION_TRIGGERS | If set to 1, the server MUST NOT start the task after registering it, even if it |
	//	|                                      | has registration triggers.                                                       |
	//	+--------------------------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
	// sddl: MUST be a security descriptor in SDDL format as specified in [MS-DTYP]. A NULL
	// value MUST specify that the task inherits its security descriptor from its folder,
	// when creating a new task, or that the task's security descriptor does not change
	// when updating an existing task.
	SDDL string `idl:"name:sddl;string;pointer:unique" json:"sddl"`
	// logonType: MUST contain a TASK_LOGON_TYPE value (section 2.3.9). The server MUST
	// reject invalid values. The specified logonType SHOULD correspond to the type of principal
	// used in the xml task definition, or supplied in pCreds.
	LogonType uint32 `idl:"name:logonType" json:"logon_type"`
	// cCreds: MUST contain the number of credentials passed in pCreds parameter. Client
	// MUST set to 0 or 1, and the server MUST return an error if not 0 or 1.
	CredsCount uint32 `idl:"name:cCreds" json:"creds_count"`
	// pCreds: MUST be an array of credentials for the task with cCreds entries. pCreds
	// MUST be NULL if cCreds is 0. See section 2.3.8 for details of the TASK_USER_CRED
	// structure.
	Creds []*TaskUserCred `idl:"name:pCreds;size_is:(cCreds);pointer:unique" json:"creds"`
}

RegisterTaskRequest structure represents the SchRpcRegisterTask operation request

func (*RegisterTaskRequest) MarshalNDR

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

func (*RegisterTaskRequest) UnmarshalNDR

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

type RegisterTaskResponse

type RegisterTaskResponse struct {
	// pActualPath: If this parameter is non-NULL, the server MUST return the task's actual
	// path.
	ActualPath string `idl:"name:pActualPath;string" json:"actual_path"`
	// pErrorInfo: If this parameter is non-NULL and the XML task definition is invalid,
	// the server MUST return additional error information.
	ErrorInfo *TaskXMLErrorInfo `idl:"name:pErrorInfo" json:"error_info"`
	// Return: The SchRpcRegisterTask return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RegisterTaskResponse structure represents the SchRpcRegisterTask operation response

func (*RegisterTaskResponse) MarshalNDR

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

func (*RegisterTaskResponse) UnmarshalNDR

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

type RenameRequest

type RenameRequest struct {
	// path: MUST be the full path to the task or to a folder to rename. The path MUST be
	// in the format specified in section 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// newName: The new name of the task.
	NewName string `idl:"name:newName;string" json:"new_name"`
	// flags: Reserved. The client MUST set this parameter to zero.
	Flags uint32 `idl:"name:flags" json:"flags"`
}

RenameRequest structure represents the SchRpcRename operation request

func (*RenameRequest) MarshalNDR

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

func (*RenameRequest) UnmarshalNDR

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

type RenameResponse

type RenameResponse struct {
	// Return: The SchRpcRename return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RenameResponse structure represents the SchRpcRename operation response

func (*RenameResponse) MarshalNDR

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

func (*RenameResponse) UnmarshalNDR

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

type RetrieveTaskRequest

type RetrieveTaskRequest struct {
	// path: MUST contain the full path associated with an existing task as specified in
	// section 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// lpcwszLanguagesBuffer: If non-NULL, this parameter MUST contain a list of language
	// names separated by the '\' character. The language names MUST be taken from the "String
	// name" column of the table.
	LanguagesBuffer string `idl:"name:lpcwszLanguagesBuffer;string" json:"languages_buffer"`
	// pulNumLanguages: The client SHOULD specify the number of language names in languagesBuffer.
	// The server MUST ignore this parameter.
	LanguagesLength uint32 `idl:"name:pulNumLanguages" json:"languages_length"`
}

RetrieveTaskRequest structure represents the SchRpcRetrieveTask operation request

func (*RetrieveTaskRequest) MarshalNDR

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

func (*RetrieveTaskRequest) UnmarshalNDR

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

type RetrieveTaskResponse

type RetrieveTaskResponse struct {
	// pXml: MUST contain the task definition in XML format, localized using the language
	// names contained in the languagesBuffer parameter. For more information about XML
	// localization, see section 2.5.8.
	XML string `idl:"name:pXml;string" json:"xml"`
	// Return: The SchRpcRetrieveTask return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RetrieveTaskResponse structure represents the SchRpcRetrieveTask operation response

func (*RetrieveTaskResponse) MarshalNDR

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

func (*RetrieveTaskResponse) UnmarshalNDR

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

type RunRequest

type RunRequest struct {
	// path: MUST be the full path to a task using the format specified in section 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// cArgs: MUST be the number of strings supplied in pArgs.
	ArgsCount uint32 `idl:"name:cArgs" json:"args_count"`
	// pArgs: MUST be an array of strings of size cArgs. This parameter MUST supply string
	// values for parameter substitution, as specified in section 2.5.9.
	Args []string `idl:"name:pArgs;size_is:(cArgs);string;pointer:unique" json:"args"`
	// flags: The flags field MUST contain individual bit flags that MUST have one or more
	// of the following values.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |  8  |  9  |  3  |  1  |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |     |     |  0  |     |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+
	//	| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | U S | S I | I C | A S |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+-----+-----+-----+
	//
	// Flags
	//
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	|                                |                                                                                  |
	//	|             VALUE              |                                   DESCRIPTION                                    |
	//	|                                |                                                                                  |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| AS TASK_RUN_AS_SELF            | If set to 1, the server MUST run the task in the context of the caller.          |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| IC TASK_RUN_IGNORE_CONSTRAINTS | If set to 1, the server MUST ignore the conditions in the task definition.       |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| SI TASK_RUN_USE_SESSION_ID     | If set to 1, the server MUST run the task in the login session specified by the  |
	//	|                                | sessionId parameter.                                                             |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| US TASK_RUN_USER_SID           | If set to 1, the userId parameter MUST contain a SID string.                     |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
	// sessionId: MUST specify a terminal server session in which to run the task. The server
	// MUST ignore this parameter unless the TASK_RUN_USE_SESSION_ID bit in the flags parameter
	// is set. For more information on terminal server sessions, see [MSDN-WSI].
	SessionID uint32 `idl:"name:sessionId" json:"session_id"`
	// user: If non-NULL, MUST specify the user context under which to run the task. If
	// the TASK_RUN_USER_SID bit in the flags parameter is set, userID MUST contain a SID
	// string. Otherwise, userID MUST contain an account name. If the TASK_RUN_AS_SELF bit
	// in the flag parameter is set, the server MUST ignore the userId parameter.
	User string `idl:"name:user;string;pointer:unique" json:"user"`
}

RunRequest structure represents the SchRpcRun operation request

func (*RunRequest) MarshalNDR

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

func (*RunRequest) UnmarshalNDR

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

type RunResponse

type RunResponse struct {
	// pGuid: MUST contain a GUID for the task instance created as result of this call.
	GUID *dtyp.GUID `idl:"name:pGuid" json:"guid"`
	// Return: The SchRpcRun return value.
	Return int32 `idl:"name:Return" json:"return"`
}

RunResponse structure represents the SchRpcRun operation response

func (*RunResponse) MarshalNDR

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

func (*RunResponse) UnmarshalNDR

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

type ScheduledRuntimesRequest

type ScheduledRuntimesRequest struct {
	// path: MUST contain the full path to a task using the format specified in section
	// 2.3.11.
	Path string `idl:"name:path;string" json:"path"`
	// start: If non-NULL, MUST specify the start of a time interval. If NULL, the server
	// MUST calculate scheduled runtimes from the start of time, where the start of time
	// is the smallest time value that the specific operating system implements.
	Start *dtyp.SystemTime `idl:"name:start;pointer:unique" json:"start"`
	// end: If non-NULL, MUST specify the end of a time interval. If NULL, the server MUST
	// calculate scheduled runtimes to the end of time, where the end of time is the largest
	// time value that the specific operating system implements.
	End *dtyp.SystemTime `idl:"name:end;pointer:unique" json:"end"`
	// flags: Unused. The client MUST specify 0, and the server MUST return an error if
	// nonzero.
	Flags uint32 `idl:"name:flags" json:"flags"`
	// cRequested: MUST contain the number of scheduled runtimes requested.
	RequestedCount uint32 `idl:"name:cRequested" json:"requested_count"`
}

ScheduledRuntimesRequest structure represents the SchRpcScheduledRuntimes operation request

func (*ScheduledRuntimesRequest) MarshalNDR

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

func (*ScheduledRuntimesRequest) UnmarshalNDR

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

type ScheduledRuntimesResponse

type ScheduledRuntimesResponse struct {
	// pcRuntimes: MUST contain the number of runtimes actually returned. The server MUST
	// NOT return more than cRequested runtimes.
	RuntimesCount uint32 `idl:"name:pcRuntimes" json:"runtimes_count"`
	// pRuntimes: MUST be a pointer to an array of scheduled runtimes. The server MUST return
	// the first pcRuntimes runtimes in the specified time interval.
	Runtimes []*dtyp.SystemTime `idl:"name:pRuntimes;size_is:(, pcRuntimes)" json:"runtimes"`
	// Return: The SchRpcScheduledRuntimes return value.
	Return int32 `idl:"name:Return" json:"return"`
}

ScheduledRuntimesResponse structure represents the SchRpcScheduledRuntimes operation response

func (*ScheduledRuntimesResponse) MarshalNDR

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

func (*ScheduledRuntimesResponse) UnmarshalNDR

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

type SetSecurityRequest

type SetSecurityRequest struct {
	// path: MUST contain the full path associated with a task or folder in the format specified
	// in section 2.3.11).
	Path string `idl:"name:path;string" json:"path"`
	// sddl: MUST be a security descriptor in SDDL format as specified in [MS-DTYP].
	SDDL string `idl:"name:sddl;string" json:"sddl"`
	// flags: The flags field MUST contain individual bit flags that MUST have one or more
	// of the following values:
	//
	//	+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+
	//	| 0 |  1  |  2  | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 |  7  | 8 | 9 | 3 | 1 |
	//	|   |     |     |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |     |   |   | 0 |   |
	//	+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+
	//	+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+
	//	| 0 | F T | F F | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | D A | 0 | 0 | 0 | 0 |
	//	+---+-----+-----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----+---+---+---+---+
	//
	//
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	|                                |                                                                                  |
	//	|             VALUE              |                                   DESCRIPTION                                    |
	//	|                                |                                                                                  |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| DA TASK_DONT_ADD_PRINCIPAL_ACE | If set to 1, the server MUST NOT add the 'Allow' ACE for the task principal to   |
	//	|                                | the security descriptor.                                                         |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| FF SCH_FLAG_FOLDER             | If set to 1, the server MUST apply the security descriptor to folders.           |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	//	| FT SCH_FLAG_TASK               | If set to 1, the server MUST apply the security descriptor to tasks.             |
	//	+--------------------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
}

SetSecurityRequest structure represents the SchRpcSetSecurity operation request

func (*SetSecurityRequest) MarshalNDR

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

func (*SetSecurityRequest) UnmarshalNDR

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

type SetSecurityResponse

type SetSecurityResponse struct {
	// Return: The SchRpcSetSecurity return value.
	Return int32 `idl:"name:Return" json:"return"`
}

SetSecurityResponse structure represents the SchRpcSetSecurity operation response

func (*SetSecurityResponse) MarshalNDR

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

func (*SetSecurityResponse) UnmarshalNDR

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

type StopInstanceRequest

type StopInstanceRequest struct {
	// guid: MUST contain the task instance GUID.
	GUID *dtyp.GUID `idl:"name:guid" json:"guid"`
	// flags: Unused. The client MUST send 0 and the server MUST return an error if nonzero.
	Flags uint32 `idl:"name:flags" json:"flags"`
}

StopInstanceRequest structure represents the SchRpcStopInstance operation request

func (*StopInstanceRequest) MarshalNDR

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

func (*StopInstanceRequest) UnmarshalNDR

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

type StopInstanceResponse

type StopInstanceResponse struct {
	// Return: The SchRpcStopInstance return value.
	Return int32 `idl:"name:Return" json:"return"`
}

StopInstanceResponse structure represents the SchRpcStopInstance operation response

func (*StopInstanceResponse) MarshalNDR

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

func (*StopInstanceResponse) UnmarshalNDR

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

type StopRequest

type StopRequest struct {
	// path: MUST contain the full path to a task using the format specified in section
	// 2.3.11.
	Path string `idl:"name:path;string;pointer:unique" json:"path"`
	// flags: Unused. The client MUST set 0, and the server MUST return an error if nonzero.
	Flags uint32 `idl:"name:flags" json:"flags"`
}

StopRequest structure represents the SchRpcStop operation request

func (*StopRequest) MarshalNDR

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

func (*StopRequest) UnmarshalNDR

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

type StopResponse

type StopResponse struct {
	// Return: The SchRpcStop return value.
	Return int32 `idl:"name:Return" json:"return"`
}

StopResponse structure represents the SchRpcStop operation response

func (*StopResponse) MarshalNDR

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

func (*StopResponse) UnmarshalNDR

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

type TaskSchedulerServiceClient

type TaskSchedulerServiceClient interface {

	// The SchRpcHighestVersion method MUST return the highest version of the Task Scheduler
	// Remoting Protocol that is supported by the server.<65>
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	HighestVersion(context.Context, *HighestVersionRequest, ...dcerpc.CallOption) (*HighestVersionResponse, error)

	// The SchRpcRegisterTask method MUST register a task with the server.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in section 2 of [MS-ERREF].
	RegisterTask(context.Context, *RegisterTaskRequest, ...dcerpc.CallOption) (*RegisterTaskResponse, error)

	// The SchRpcRetrieveTask method MUST return a task definition.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	RetrieveTask(context.Context, *RetrieveTaskRequest, ...dcerpc.CallOption) (*RetrieveTaskResponse, error)

	// The SchRpcCreateFolder method creates a new folder.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	CreateFolder(context.Context, *CreateFolderRequest, ...dcerpc.CallOption) (*CreateFolderResponse, error)

	// The SchRpcSetSecurity method MUST set a security descriptor on a task or folder.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	SetSecurity(context.Context, *SetSecurityRequest, ...dcerpc.CallOption) (*SetSecurityResponse, error)

	// The SchRpcGetSecurity method MUST get the security descriptor associated with a task
	// or folder.
	//
	// HRESULT SchRpcGetSecurity( [in, string] const wchar_t* path,
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetSecurity(context.Context, *GetSecurityRequest, ...dcerpc.CallOption) (*GetSecurityResponse, error)

	// The SchRpcEnumFolders method MUST retrieve a list of folders on the server.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	EnumFolders(context.Context, *EnumFoldersRequest, ...dcerpc.CallOption) (*EnumFoldersResponse, error)

	// The SchRpcEnumTasks method MUST return the list of tasks in a specific folder.
	//
	// MUST returns S_FALSE if there are more tasks to enumerate.
	//
	// Note that if client requests items 1-10 and then 11-20, the second call can return
	// duplicate entries if the task list has changed in between calls.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	EnumTasks(context.Context, *EnumTasksRequest, ...dcerpc.CallOption) (*EnumTasksResponse, error)

	// The SchRpcEnumInstances method MUST return a task's list of instances that are currently
	// running.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	EnumInstances(context.Context, *EnumInstancesRequest, ...dcerpc.CallOption) (*EnumInstancesResponse, error)

	// The SchRpcGetInstanceInfo method MUST get information about an instance of a running
	// task.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetInstanceInfo(context.Context, *GetInstanceInfoRequest, ...dcerpc.CallOption) (*GetInstanceInfoResponse, error)

	// The SchRpcStopInstance method MUST stop a specified instance of a task.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	StopInstance(context.Context, *StopInstanceRequest, ...dcerpc.CallOption) (*StopInstanceResponse, error)

	// The SchRpcStop MUST stop all currently running instances of a task specified by a
	// path.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Stop(context.Context, *StopRequest, ...dcerpc.CallOption) (*StopResponse, error)

	// The SchRpcRun method MUST run a task specified by a path.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Run(context.Context, *RunRequest, ...dcerpc.CallOption) (*RunResponse, error)

	// The SchRpcDelete method MUST delete a task or folder in the task store.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Delete(context.Context, *DeleteRequest, ...dcerpc.CallOption) (*DeleteResponse, error)

	// The SchRpcRename method renames a folder or task.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Rename(context.Context, *RenameRequest, ...dcerpc.CallOption) (*RenameResponse, error)

	// The SchRpcScheduledRuntimes method MUST return scheduled run times.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	ScheduledRuntimes(context.Context, *ScheduledRuntimesRequest, ...dcerpc.CallOption) (*ScheduledRuntimesResponse, error)

	// The SchRpcGetLastRunInfo method MUST return information about the task's last run.
	//
	// Return Values: For more information about return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetLastRunInfo(context.Context, *GetLastRunInfoRequest, ...dcerpc.CallOption) (*GetLastRunInfoResponse, error)

	// The SchRpcGetTaskInfo method MUST return information about a specified task.
	//
	// Return Values: For more information about return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetTaskInfo(context.Context, *GetTaskInfoRequest, ...dcerpc.CallOption) (*GetTaskInfoResponse, error)

	// The SchRpcGetNumberOfMissedRuns MUST return the number of times a task was scheduled
	// to run but did not due to the server being unavailable (for example, powered off).
	//
	// Return Values: For more information about return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetNumberOfMissedRuns(context.Context, *GetNumberOfMissedRunsRequest, ...dcerpc.CallOption) (*GetNumberOfMissedRunsResponse, error)

	// The SchRpcEnableTask method MUST enable or disable a task.
	//
	// Return Values: For more information about return codes, see [MS-ERREF] section 2.
	EnableTask(context.Context, *EnableTaskRequest, ...dcerpc.CallOption) (*EnableTaskResponse, error)

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

ITaskSchedulerService interface.

func NewTaskSchedulerServiceClient

func NewTaskSchedulerServiceClient(ctx context.Context, cc dcerpc.Conn, opts ...dcerpc.Option) (TaskSchedulerServiceClient, error)

type TaskSchedulerServiceServer

type TaskSchedulerServiceServer interface {

	// The SchRpcHighestVersion method MUST return the highest version of the Task Scheduler
	// Remoting Protocol that is supported by the server.<65>
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	HighestVersion(context.Context, *HighestVersionRequest) (*HighestVersionResponse, error)

	// The SchRpcRegisterTask method MUST register a task with the server.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in section 2 of [MS-ERREF].
	RegisterTask(context.Context, *RegisterTaskRequest) (*RegisterTaskResponse, error)

	// The SchRpcRetrieveTask method MUST return a task definition.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	RetrieveTask(context.Context, *RetrieveTaskRequest) (*RetrieveTaskResponse, error)

	// The SchRpcCreateFolder method creates a new folder.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	CreateFolder(context.Context, *CreateFolderRequest) (*CreateFolderResponse, error)

	// The SchRpcSetSecurity method MUST set a security descriptor on a task or folder.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	SetSecurity(context.Context, *SetSecurityRequest) (*SetSecurityResponse, error)

	// The SchRpcGetSecurity method MUST get the security descriptor associated with a task
	// or folder.
	//
	// HRESULT SchRpcGetSecurity( [in, string] const wchar_t* path,
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetSecurity(context.Context, *GetSecurityRequest) (*GetSecurityResponse, error)

	// The SchRpcEnumFolders method MUST retrieve a list of folders on the server.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	EnumFolders(context.Context, *EnumFoldersRequest) (*EnumFoldersResponse, error)

	// The SchRpcEnumTasks method MUST return the list of tasks in a specific folder.
	//
	// MUST returns S_FALSE if there are more tasks to enumerate.
	//
	// Note that if client requests items 1-10 and then 11-20, the second call can return
	// duplicate entries if the task list has changed in between calls.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	EnumTasks(context.Context, *EnumTasksRequest) (*EnumTasksResponse, error)

	// The SchRpcEnumInstances method MUST return a task's list of instances that are currently
	// running.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	EnumInstances(context.Context, *EnumInstancesRequest) (*EnumInstancesResponse, error)

	// The SchRpcGetInstanceInfo method MUST get information about an instance of a running
	// task.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetInstanceInfo(context.Context, *GetInstanceInfoRequest) (*GetInstanceInfoResponse, error)

	// The SchRpcStopInstance method MUST stop a specified instance of a task.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	StopInstance(context.Context, *StopInstanceRequest) (*StopInstanceResponse, error)

	// The SchRpcStop MUST stop all currently running instances of a task specified by a
	// path.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Stop(context.Context, *StopRequest) (*StopResponse, error)

	// The SchRpcRun method MUST run a task specified by a path.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Run(context.Context, *RunRequest) (*RunResponse, error)

	// The SchRpcDelete method MUST delete a task or folder in the task store.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Delete(context.Context, *DeleteRequest) (*DeleteResponse, error)

	// The SchRpcRename method renames a folder or task.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	Rename(context.Context, *RenameRequest) (*RenameResponse, error)

	// The SchRpcScheduledRuntimes method MUST return scheduled run times.
	//
	// Return Values: For more information on return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	ScheduledRuntimes(context.Context, *ScheduledRuntimesRequest) (*ScheduledRuntimesResponse, error)

	// The SchRpcGetLastRunInfo method MUST return information about the task's last run.
	//
	// Return Values: For more information about return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetLastRunInfo(context.Context, *GetLastRunInfoRequest) (*GetLastRunInfoResponse, error)

	// The SchRpcGetTaskInfo method MUST return information about a specified task.
	//
	// Return Values: For more information about return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetTaskInfo(context.Context, *GetTaskInfoRequest) (*GetTaskInfoResponse, error)

	// The SchRpcGetNumberOfMissedRuns MUST return the number of times a task was scheduled
	// to run but did not due to the server being unavailable (for example, powered off).
	//
	// Return Values: For more information about return codes, see section 2.3.14, or Win32
	// Error Codes in [MS-ERREF] section 2.1.
	GetNumberOfMissedRuns(context.Context, *GetNumberOfMissedRunsRequest) (*GetNumberOfMissedRunsResponse, error)

	// The SchRpcEnableTask method MUST enable or disable a task.
	//
	// Return Values: For more information about return codes, see [MS-ERREF] section 2.
	EnableTask(context.Context, *EnableTaskRequest) (*EnableTaskResponse, error)
}

ITaskSchedulerService server interface.

type TaskUserCred

type TaskUserCred struct {
	// userId:  Contains the user name identifying the account under which the task can
	// execute. The user name is a string recognized by Windows authentication, as specified
	// in [MS-AUTHSOD] section 1.1.1.2.<9>
	UserID string `idl:"name:userId;string" json:"user_id"`
	// password:  Contains the password associated with the user specified in the preceding
	// userId field above, represented as a string. For information about security considerations,
	// see section 5.1.
	Password string `idl:"name:password;string" json:"password"`
	// flags:  The flags field contains individual bit flags that are structured as shown
	// in the following table. The client MUST set the undefined bits to 0. The undefined
	// bits are ignored on receipt.
	//
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 |
	//	|   |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |   |   |   |   |   |   |   |   | 0 |   |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//	| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | D |
	//	+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	//
	//	+-------------------+----------------------------------------------------------------------------------+
	//	|                   |                                                                                  |
	//	|       VALUE       |                                   DESCRIPTION                                    |
	//	|                   |                                                                                  |
	//	+-------------------+----------------------------------------------------------------------------------+
	//	+-------------------+----------------------------------------------------------------------------------+
	//	| D credFlagDefault | If set to 1, the server can use these credentials if no other credentials are    |
	//	|                   | provided. If set to 0, the server can use these credentials instead of the       |
	//	|                   | credentials specified in the task configuration.                                 |
	//	+-------------------+----------------------------------------------------------------------------------+
	Flags uint32 `idl:"name:flags" json:"flags"`
}

TaskUserCred structure represents TASK_USER_CRED RPC structure.

The TASK_USER_CRED structure contains user credentials and is passed to the server during task registration, as specified in section 3.2.5.4.2.

func (*TaskUserCred) MarshalNDR

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

func (*TaskUserCred) UnmarshalNDR

func (o *TaskUserCred) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

type TaskXMLErrorInfo

type TaskXMLErrorInfo struct {
	// line:  Contains the line number where parsing failed. Carriage returns in the XML
	// separate the string into lines. The first line is "line one".
	Line uint32 `idl:"name:line" json:"line"`
	// column:  Contains the column where parsing failed. Indicates the character within
	// the line, where the first character is "column one".
	Column uint32 `idl:"name:column" json:"column"`
	// node:  Contains the attribute or element name that caused the error, or which is
	// missing.
	Node string `idl:"name:node;string" json:"node"`
	// value:  When this field is not empty, it contains the invalid value that caused the
	// error.
	Value string `idl:"name:value;string" json:"value"`
}

TaskXMLErrorInfo structure represents TASK_XML_ERROR_INFO RPC structure.

The TASK_XML_ERROR_INFO structure is a return value from the SchRpcRegisterTask (Opnum 1) method that contains additional information about an error in the XML task definition.

func (*TaskXMLErrorInfo) MarshalNDR

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

func (*TaskXMLErrorInfo) UnmarshalNDR

func (o *TaskXMLErrorInfo) UnmarshalNDR(ctx context.Context, w ndr.Reader) error

Jump to

Keyboard shortcuts

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