Generated from Manticore v1.1.6 • 388 packages. View on pkg.go.dev

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

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.

Subpackages