rpcinterface_86d3594983c94044b424db363231fd0c_1_0
import "github.com/TheManticoreProject/Manticore/network/dcerpc/interfaces/86d35949-83c9-4044-b424-db363231fd0c/1.0"
Package rpcinterface_86d3594983c94044b424db363231fd0c_1_0 is the descriptor for the ITaskSchedulerService RPC interface, abstract syntax 86d35949-83c9-4044-b424-db363231fd0c version 1.0 ([MS-TSCH]).
Generated by tools/idlgen (descriptor phase) from the IDL, then reviewed: the PipeName, the status-code table, and doc comments are not derivable from the IDL and were filled in and verified by hand ([MS-TSCH] 2.1, 3.2.5).
Index
- Constants
- Variables
- func IsSuccess(status uint32) bool
- func StatusString(status uint32) string
- func SyntaxID() syntax.SyntaxID
Constants
Opnums for the on-the-wire methods.
const (
OpnumSchRpcHighestVersion uint16 = 0
OpnumSchRpcRegisterTask uint16 = 1
OpnumSchRpcRetrieveTask uint16 = 2
OpnumSchRpcCreateFolder uint16 = 3
OpnumSchRpcSetSecurity uint16 = 4
OpnumSchRpcGetSecurity uint16 = 5
OpnumSchRpcEnumFolders uint16 = 6
OpnumSchRpcEnumTasks uint16 = 7
OpnumSchRpcEnumInstances uint16 = 8
OpnumSchRpcGetInstanceInfo uint16 = 9
OpnumSchRpcStopInstance uint16 = 10
OpnumSchRpcStop uint16 = 11
OpnumSchRpcRun uint16 = 12
OpnumSchRpcDelete uint16 = 13
OpnumSchRpcRename uint16 = 14
OpnumSchRpcScheduledRuntimes uint16 = 15
OpnumSchRpcGetLastRunInfo uint16 = 16
OpnumSchRpcGetTaskInfo uint16 = 17
OpnumSchRpcGetNumberOfMissedRuns uint16 = 18
OpnumSchRpcEnableTask uint16 = 19
)
HRESULT status codes returned by the methods of this interface ([MS-TSCH] 2.3.14, [MS-ERREF] 2.1/2.3). ITaskSchedulerService methods return an HRESULT; a value with the high bit clear is a success code (S_OK / S_FALSE / SCHED_S_*), otherwise it is a failure. StatusSuccess is S_OK.
const (
StatusSuccess uint32 = 0x00000000 // S_OK
StatusFalse uint32 = 0x00000001 // S_FALSE — more data available (Enum* methods)
// SCHED_S_* success/informational codes.
SchedSTaskReady uint32 = 0x00041300
SchedSTaskRunning uint32 = 0x00041301
SchedSTaskHasNotRun uint32 = 0x00041303
SchedSTaskNoMoreRuns uint32 = 0x00041304
SchedSTaskNotScheduled uint32 = 0x00041305
SchedSTaskDisabled uint32 = 0x00041306
// Common [MS-ERREF] failure codes.
ErrorFileNotFound uint32 = 0x80070002 // HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
ErrorAccessDenied uint32 = 0x80070005 // E_ACCESSDENIED
ErrorInvalidArg uint32 = 0x80070057 // E_INVALIDARG
ErrorAlreadyExists uint32 = 0x800700B7 // HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS)
// SCHED_E_* failure codes.
SchedETriggerNotFound uint32 = 0x80041309
SchedETaskNotReady uint32 = 0x8004130A
SchedETaskNotRunning uint32 = 0x8004130B
SchedEServiceNotInstalled uint32 = 0x8004130C
SchedECannotOpenTask uint32 = 0x8004130D
SchedEInvalidTask uint32 = 0x8004130E
SchedEAccountInformationNotSet uint32 = 0x8004130F
SchedEAccountNameNotFound uint32 = 0x80041310
SchedEServiceNotRunning uint32 = 0x80041315
SchedEUnexpectedNode uint32 = 0x80041316
SchedENamespace uint32 = 0x80041317
SchedEInvalidValue uint32 = 0x80041318
SchedEMissingNode uint32 = 0x80041319
SchedEMalformedXML uint32 = 0x8004131A
SchedETooManyNodes uint32 = 0x8004131B
SchedEPastEndBoundary uint32 = 0x8004131C
SchedEAlreadyRunning uint32 = 0x80041321
SchedEUserNotLoggedOn uint32 = 0x80041322
SchedEInvalidTaskHash uint32 = 0x80041323
SchedEServiceNotAvailable uint32 = 0x80041324
SchedEServiceTooBusy uint32 = 0x80041325
SchedETaskAttempted uint32 = 0x80041326
SchedETaskDisabled uint32 = 0x80041327
SchedETaskNotV1Compat uint32 = 0x80041328
SchedEStartOnDemand uint32 = 0x80041329
)
PipeName is retained for descriptor uniformity, but ITaskSchedulerService is NOT a named-pipe interface: per [MS-TSCH] 2.1 it is carried over ncacn_ip_tcp on a dynamic endpoint resolved through the RPC endpoint mapper ([MS-RPCE] / [C706]), so there is no well-known pipe. It is left empty so callers do not bind it over SMB by mistake.
const PipeName = ``
Variables
NameToOpnum is the reverse of OpnumToName, built at init so the two never drift.
var NameToOpnum = func() map[string]uint16 {
m := make(map[string]uint16, len(OpnumToName))
for op, name := range OpnumToName {
m[name] = op
}
return m
}()
OpnumToName maps each on-the-wire opnum to its method name; the single source of truth.
var OpnumToName = map[uint16]string{
OpnumSchRpcHighestVersion: "SchRpcHighestVersion",
OpnumSchRpcRegisterTask: "SchRpcRegisterTask",
OpnumSchRpcRetrieveTask: "SchRpcRetrieveTask",
OpnumSchRpcCreateFolder: "SchRpcCreateFolder",
OpnumSchRpcSetSecurity: "SchRpcSetSecurity",
OpnumSchRpcGetSecurity: "SchRpcGetSecurity",
OpnumSchRpcEnumFolders: "SchRpcEnumFolders",
OpnumSchRpcEnumTasks: "SchRpcEnumTasks",
OpnumSchRpcEnumInstances: "SchRpcEnumInstances",
OpnumSchRpcGetInstanceInfo: "SchRpcGetInstanceInfo",
OpnumSchRpcStopInstance: "SchRpcStopInstance",
OpnumSchRpcStop: "SchRpcStop",
OpnumSchRpcRun: "SchRpcRun",
OpnumSchRpcDelete: "SchRpcDelete",
OpnumSchRpcRename: "SchRpcRename",
OpnumSchRpcScheduledRuntimes: "SchRpcScheduledRuntimes",
OpnumSchRpcGetLastRunInfo: "SchRpcGetLastRunInfo",
OpnumSchRpcGetTaskInfo: "SchRpcGetTaskInfo",
OpnumSchRpcGetNumberOfMissedRuns: "SchRpcGetNumberOfMissedRuns",
OpnumSchRpcEnableTask: "SchRpcEnableTask",
}
func IsSuccess
func IsSuccess(status uint32) bool
IsSuccess reports whether an HRESULT returned by this interface indicates success (high bit clear, e.g. S_OK, S_FALSE, or a SCHED_S_* informational code).
func StatusString
func StatusString(status uint32) string
StatusString returns a mnemonic for the documented HRESULT codes, otherwise the hex value.
func SyntaxID
func SyntaxID() syntax.SyntaxID
SyntaxID returns the ITaskSchedulerService abstract syntax identifier: 86d35949-83c9-4044-b424-db363231fd0c, version 1.0.