rpcinterface_bde95fdfeee045de9e12e5a61cd0d4fe_1_0
import "github.com/TheManticoreProject/Manticore/network/dcerpc/interfaces/bde95fdf-eee0-45de-9e12-e5a61cd0d4fe/1.0"
Package rpcinterface_bde95fdfeee045de9e12e5a61cd0d4fe_1_0 is the descriptor for the RCMPublic RPC interface, abstract syntax bde95fdf-eee0-45de-9e12-e5a61cd0d4fe version 1.0 ([MS-TSTS]).
Generated by tools/idlgen (descriptor phase) from the IDL, then reviewed: the PipeName (from [MS-TSTS] 1.9) and the status-code table are not derivable from the IDL and were completed by hand.
Index
Constants
Opnums for the on-the-wire methods. Opnums 5, 6, 7 are “not used on the wire” and are omitted.
const (
OpnumRpcGetClientData uint16 = 0
OpnumRpcGetConfigData uint16 = 1
OpnumRpcGetProtocolStatus uint16 = 2
OpnumRpcGetLastInputTime uint16 = 3
OpnumRpcGetRemoteAddress uint16 = 4
OpnumRpcGetAllListeners uint16 = 8
OpnumRpcGetSessionProtocolLastInputTime uint16 = 9
OpnumRpcGetUserCertificates uint16 = 10
OpnumRpcQuerySessionData uint16 = 11
)
Status codes for this interface. Its methods return an HRESULT ([MS-ERREF] 2.1); success is S_OK (0x00000000). The values below are the common failures; StatusString falls back to the raw hex for any other value.
const (
StatusSuccess uint32 = 0x00000000 // S_OK
E_ABORT uint32 = 0x80004004
E_FAIL uint32 = 0x80004005
E_OUTOFMEMORY uint32 = 0x8007000e
E_ACCESSDENIED uint32 = 0x80070005
E_INVALIDARG uint32 = 0x80070057
)
PipeName is the IPC$-relative named pipe for the RCMPublic interface. The endpoint is assigned in [MS-TSTS] section 1.9 (Standards Assignments).
const PipeName = `\TermSrv_API_service`
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{
OpnumRpcGetClientData: "RpcGetClientData",
OpnumRpcGetConfigData: "RpcGetConfigData",
OpnumRpcGetProtocolStatus: "RpcGetProtocolStatus",
OpnumRpcGetLastInputTime: "RpcGetLastInputTime",
OpnumRpcGetRemoteAddress: "RpcGetRemoteAddress",
OpnumRpcGetAllListeners: "RpcGetAllListeners",
OpnumRpcGetSessionProtocolLastInputTime: "RpcGetSessionProtocolLastInputTime",
OpnumRpcGetUserCertificates: "RpcGetUserCertificates",
OpnumRpcQuerySessionData: "RpcQuerySessionData",
}
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 RCMPublic abstract syntax identifier: bde95fdf-eee0-45de-9e12-e5a61cd0d4fe, version 1.0.