rpcinterface_d95afe70a6d54259822e2c84da1ddb0d_1_0
import "github.com/TheManticoreProject/Manticore/network/dcerpc/interfaces/d95afe70-a6d5-4259-822e-2c84da1ddb0d/1.0"
Package rpcinterface_d95afe70a6d54259822e2c84da1ddb0d_1_0 is the descriptor for the WindowsShutdown RPC interface, abstract syntax d95afe70-a6d5-4259-822e-2c84da1ddb0d version 1.0 ([MS-RSP]).
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 must be confirmed by hand (see the TODO markers).
Index
Constants
Opnums for the on-the-wire methods.
const (
OpnumWsdrInitiateShutdown uint16 = 0
OpnumWsdrAbortShutdown uint16 = 1
)
Status codes: the shutdown methods return a Win32 error code from [MS-ERREF] section 2.2 (0 on success, nonzero on failure). These are the codes a caller is most likely to encounter; StatusString falls back to the raw hex for any other.
const (
StatusSuccess uint32 = 0x00000000 // ERROR_SUCCESS
ErrorAccessDenied uint32 = 0x00000005 // ERROR_ACCESS_DENIED
ErrorNotReady uint32 = 0x00000015 // ERROR_NOT_READY
ErrorInvalidParameter uint32 = 0x00000057 // ERROR_INVALID_PARAMETER
ErrorShutdownInProgress uint32 = 0x0000045B // ERROR_SHUTDOWN_IN_PROGRESS
ErrorNoShutdownInProgress uint32 = 0x0000045C // ERROR_NO_SHUTDOWN_IN_PROGRESS
ErrorMachineLocked uint32 = 0x000004F7 // ERROR_MACHINE_LOCKED
ErrorShutdownIsScheduled uint32 = 0x000004A6 // ERROR_SHUTDOWN_IS_SCHEDULED
ErrorShutdownUsersLoggedOn uint32 = 0x000004A7 // ERROR_SHUTDOWN_USERS_LOGGED_ON
)
PipeName is intentionally empty: per [MS-RSP] section 2.1 the WindowsShutdown interface is reached over RPC-over-TCP (ncacn_ip_tcp) at a dynamic endpoint assigned by the endpoint mapper ([C706] part 4), not over a well-known named pipe. The constant is retained for descriptor uniformity.
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{
OpnumWsdrInitiateShutdown: "WsdrInitiateShutdown",
OpnumWsdrAbortShutdown: "WsdrAbortShutdown",
}
func StatusString
func StatusString(status uint32) string
StatusString returns a mnemonic for the documented status codes, otherwise the hex value.
func SyntaxID
func SyntaxID() syntax.SyntaxID
SyntaxID returns the WindowsShutdown abstract syntax identifier: d95afe70-a6d5-4259-822e-2c84da1ddb0d, version 1.0.