dcetypes

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

Documentation

Overview

The dcetypes package implements the DCETYPES client protocol.

Index

Constants

This section is empty.

Variables

View Source
var (
	// https://github.com/boundary/wireshark/blob/master/epan/dissectors/packet-dcerpc-epm.c#L250
	ProtocolOSI_OID           = 0x00
	ProtocolDNA_SESSCTL       = 0x02
	ProtocolDNA_SESSCTL_V3    = 0x03
	ProtocolDNA_NSP           = 0x04
	ProtocolOSI_TP4           = 0x05
	ProtocolOSI_CLNS          = 0x06
	ProtocolTCP               = 0x07
	ProtocolUDP               = 0x08
	ProtocolIP                = 0x09
	ProtocolRPC_CL            = 0x0a
	ProtocolRPC_CO            = 0x0b
	ProtocolSPX               = 0x0c /* from DCOM spec (is this correct?) */
	ProtocolUUID              = 0x0d
	ProtocolIPX               = 0x0e /* from DCOM spec (is this correct?) */
	ProtocolNamedPipe         = 0x0f
	ProtocolLRPC              = 0x10
	ProtocolNetBIOS           = 0x11
	ProtocolNetBEUI           = 0x12
	ProtocolNetwareSPX        = 0x13
	ProtocolNetwareIPX        = 0x14
	ProtocolAppleTalkStream   = 0x16
	ProtocolAppleTalkDatagram = 0x17
	ProtocolAppleTalk         = 0x18
	ProtocolNetBIOS2          = 0x19
	ProtocolVinesSPP          = 0x1a
	ProtocolVinesIPC          = 0x1b
	ProtocolStreetTalk        = 0x1c
	ProtocolHTTP              = 0x1f
	ProtocolUnixDomain        = 0x20
	ProtocolNULL              = 0x21
	ProtocolNetBIOS3          = 0x22
)
View Source
var (
	// import guard
	GoPackage = "dcetypes"
)
View Source
var NDRCCharASCII = 0

NDRCCharASCII represents the ndr_c_char_ascii RPC constant

View Source
var NDRCCharEbcdic = 1

NDRCCharEbcdic represents the ndr_c_char_ebcdic RPC constant

View Source
var NDRCFloatCray = 2

NDRCFloatCray represents the ndr_c_float_cray RPC constant

View Source
var NDRCFloatIBM = 3

NDRCFloatIBM represents the ndr_c_float_ibm RPC constant

View Source
var NDRCFloatIeee = 0

NDRCFloatIeee represents the ndr_c_float_ieee RPC constant

View Source
var NDRCFloatVax = 1

NDRCFloatVax represents the ndr_c_float_vax RPC constant

View Source
var NDRCIntBigEndian = 0

NDRCIntBigEndian represents the ndr_c_int_big_endian RPC constant

View Source
var NDRCIntLittleEndian = 1

NDRCIntLittleEndian represents the ndr_c_int_little_endian RPC constant

Functions

This section is empty.

Types

type ContextHandle

type ContextHandle struct {
	Attributes uint32     `idl:"name:context_handle_attributes" json:"attributes"`
	UUID       *dtyp.GUID `idl:"name:context_handle_uuid" json:"uuid"`
}

ContextHandle structure represents ndr_context_handle RPC structure.

func (*ContextHandle) MarshalNDR

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

func (*ContextHandle) UnmarshalNDR

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

type Floor

type Floor struct {
	Protocol     uint8      `json:"protocol"`
	UUID         *uuid.UUID `json:"uuid,omitempty"`
	VersionMajor uint16     `json:"version_major"`
	Data         []byte     `json:"data"`
}

func (*Floor) Hex

func (f *Floor) Hex() string

func (*Floor) IP

func (f *Floor) IP() net.IP

func (*Floor) Port

func (f *Floor) Port() uint16

func (*Floor) Str

func (f *Floor) Str() string

func (*Floor) String

func (f *Floor) String() string

func (*Floor) VersionMinor

func (f *Floor) VersionMinor() uint16

type InterfaceID

type InterfaceID struct {
	UUID      *dtyp.GUID `idl:"name:uuid" json:"uuid"`
	VersMajor uint16     `idl:"name:vers_major" json:"vers_major"`
	VersMinor uint16     `idl:"name:vers_minor" json:"vers_minor"`
}

InterfaceID structure represents rpc_if_id_t RPC structure.

func (*InterfaceID) MarshalNDR

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

func (*InterfaceID) UnmarshalNDR

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

type InterfaceIDVector

type InterfaceIDVector struct {
	Count       uint32         `idl:"name:count" json:"count"`
	InterfaceID []*InterfaceID `idl:"name:if_id;size_is:(count)" json:"interface_id"`
}

InterfaceIDVector structure represents rpc_if_id_vector_t RPC structure.

func (*InterfaceIDVector) MarshalNDR

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

func (*InterfaceIDVector) NDRSizeInfo

func (o *InterfaceIDVector) NDRSizeInfo() []uint64

func (*InterfaceIDVector) UnmarshalNDR

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

type NDRFormat

type NDRFormat struct {
	IntRep   uint8 `idl:"name:int_rep" json:"int_rep"`
	CharRep  uint8 `idl:"name:char_rep" json:"char_rep"`
	FloatRep uint8 `idl:"name:float_rep" json:"float_rep"`
	// contains filtered or unexported fields
}

NDRFormat structure represents ndr_format_t RPC structure.

func (*NDRFormat) MarshalNDR

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

func (*NDRFormat) UnmarshalNDR

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

type StatsVector

type StatsVector struct {
	Count uint32   `idl:"name:count" json:"count"`
	Stats []uint32 `idl:"name:stats" json:"stats"`
}

StatsVector structure represents rpc_stats_vector_t RPC structure.

func (*StatsVector) MarshalNDR

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

func (*StatsVector) UnmarshalNDR

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

type Tower

type Tower struct {
	TowerLength      uint32 `idl:"name:tower_length" json:"tower_length"`
	TowerOctetString []byte `idl:"name:tower_octet_string;size_is:(tower_length)" json:"tower_octet_string"`
}

Tower structure represents twr_t RPC structure.

func FloorsToTower

func FloorsToTower(floors []*Floor) *Tower

func (*Tower) Binding

func (o *Tower) Binding() *dcerpc.Binding

Binding function returns the binding representation of the tower.

func (*Tower) Floors

func (o *Tower) Floors() []*Floor

Floors function returns the decoded tower floors.

func (*Tower) MarshalJSON

func (o *Tower) MarshalJSON() ([]byte, error)

func (*Tower) MarshalNDR

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

func (*Tower) NDRSizeInfo

func (o *Tower) NDRSizeInfo() []uint64

func (*Tower) UnmarshalNDR

func (o *Tower) 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