mqmq

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

Documentation

Overview

The mqmq package implements the MQMQ client protocol.

Introduction

Message Queuing (MSMQ): Data Structures contains common definitions and data structures that are used in various protocols in the set of Microsoft Message Queuing protocols. The documentation for individual protocols contains references to this document, as needed.

Overview

The common definitions, naming formats, structures, data types, and error codes defined in this document are used by the member protocols of the Microsoft Message Queuing (MSMQ) protocol set.

Index

Constants

This section is empty.

Variables

View Source
var (
	// import guard
	GoPackage = "mqmq"
)

Functions

This section is empty.

Types

type Blob

type Blob struct {
	// cbSize:  A 32-bit unsigned integer that specifies the size of the array of unsigned
	// characters pointed to by pBlobData.
	Length uint32 `idl:"name:cbSize" json:"length"`
	// pBlobData:  An array of 8-bit unsigned characters.
	BlobData []byte `idl:"name:pBlobData;size_is:(cbSize)" json:"blob_data"`
}

Blob structure represents BLOB RPC structure.

The BLOB structure defines a counted array of unsigned characters.

func (*Blob) MarshalNDR

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

func (*Blob) UnmarshalNDR

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

type ByteArray

type ByteArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of unsigned characters.
	Elems []byte `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

ByteArray structure represents CAUB RPC structure.

The CAUB structure defines a counted array of unsigned characters.

func (*ByteArray) MarshalNDR

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

func (*ByteArray) UnmarshalNDR

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

type ClassIDArray

type ClassIDArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of GUID (as specified in [MS-DTYP] section 2.3.4) values.
	Elems []*dtyp.GUID `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

ClassIDArray structure represents CACLSID RPC structure.

The CACLSID structure defines a counted array of GUID (as specified in [MS-DTYP] section 2.3.4) values.

func (*ClassIDArray) MarshalNDR

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

func (*ClassIDArray) UnmarshalNDR

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

type DLID

type DLID struct {
	// m_DlGuid:  The GUID (as specified in [MS-DTYP] section 2.3.4) of the distribution
	// list queue.
	DLGUID *dtyp.GUID `idl:"name:m_DlGuid" json:"dl_guid"`
	// m_pwzDomain:  The Active Directory domain of the distribution list queue. This field
	// MUST be a null-terminated Unicode string.
	Domain string `idl:"name:m_pwzDomain;string" json:"domain"`
}

DLID structure represents DL_ID RPC structure.

The DL_ID structure defines a distribution list queue identifier.

func (*DLID) MarshalNDR

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

func (*DLID) UnmarshalNDR

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

type LongArray

type LongArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of 32-bit unsigned integers.
	Elems []int32 `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

LongArray structure represents CAL RPC structure.

The CAL structure defines a counted array of 32-bit unsigned integers.

func (*LongArray) MarshalNDR

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

func (*LongArray) UnmarshalNDR

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

type MulticastID

type MulticastID struct {
	// m_address:  The IP address of the queue.
	Address uint32 `idl:"name:m_address" json:"address"`
	// m_port:  The port to which the queue is attached.
	Port uint32 `idl:"name:m_port" json:"port"`
}

MulticastID structure represents MULTICAST_ID RPC structure.

The MULTICAST_ID structure defines a multicast queue identifier.

func (*MulticastID) MarshalNDR

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

func (*MulticastID) UnmarshalNDR

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

type ObjectID

type ObjectID struct {
	// Lineage:  A GUID (as specified in [MS-DTYP] section 2.3.4) value that identifies
	// the group to which an object belongs. A group is a protocol-specific concept. For
	// instance, it can be the identifier of the object owner, or it can be the identifier
	// of the source where the objects originate.
	Lineage *dtyp.GUID `idl:"name:Lineage" json:"lineage"`
	// Uniquifier:  A DWORD value that identifies the object within the group.
	Uniquifier uint32 `idl:"name:Uniquifier" json:"uniquifier"`
}

ObjectID structure represents OBJECTID RPC structure.

The OBJECTID structure is used to uniquely distinguish objects of the same type within the message queuing system. The structure has two identifiers: a group identifier and an object identifier.

func (*ObjectID) MarshalNDR

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

func (*ObjectID) UnmarshalNDR

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

type PropertyVariant

type PropertyVariant struct {
	VT uint16 `idl:"name:vt" json:"vt"`

	VarUnion *PropertyVariant_VarUnion `idl:"name:_varUnion;switch_is:vt" json:"var_union"`
	// contains filtered or unexported fields
}

PropertyVariant structure represents PROPVARIANT RPC structure.

func (*PropertyVariant) MarshalNDR

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

func (*PropertyVariant) UnmarshalNDR

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

type PropertyVariantArray

type PropertyVariantArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of PROPVARIANT (section 2.2.13.2) values.
	Elems []*PropertyVariant `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

PropertyVariantArray structure represents CAPROPVARIANT RPC structure.

The CAPROPVARIANT structure defines a counted array of PROPVARIANT (section 2.2.13.2) values.

func (*PropertyVariantArray) MarshalNDR

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

func (*PropertyVariantArray) UnmarshalNDR

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

type PropertyVariant_VarUnion

type PropertyVariant_VarUnion struct {
	// Types that are assignable to Value
	//
	// *PropertyVariant_VarUnion_0
	// *PropertyVariant_VarUnion_Char
	// *PropertyVariant_VarUnion_Byte
	// *PropertyVariant_VarUnion_Short
	// *PropertyVariant_VarUnion_Ushort
	// *PropertyVariant_VarUnion_Long
	// *PropertyVariant_VarUnion_Ulong
	// *PropertyVariant_VarUnion_LargeInteger
	// *PropertyVariant_VarUnion_UlargeInteger
	// *PropertyVariant_VarUnion_Bool
	// *PropertyVariant_VarUnion_UUID
	// *PropertyVariant_VarUnion_Blob
	// *PropertyVariant_VarUnion_UnicodeString
	// *PropertyVariant_VarUnion_ByteArray
	// *PropertyVariant_VarUnion_UshortArray
	// *PropertyVariant_VarUnion_LongArray
	// *PropertyVariant_VarUnion_Uint32Array
	// *PropertyVariant_VarUnion_UlargeIntegerArray
	// *PropertyVariant_VarUnion_UUIDArray
	// *PropertyVariant_VarUnion_UnicodeStringArray
	// *PropertyVariant_VarUnion_PropertyVariantArray
	Value is_PropertyVariant_VarUnion `json:"value"`
}

PropertyVariant_VarUnion structure represents PROPVARIANT union anonymous member.

func (*PropertyVariant_VarUnion) GetValue

func (o *PropertyVariant_VarUnion) GetValue() any

func (*PropertyVariant_VarUnion) MarshalUnionNDR

func (o *PropertyVariant_VarUnion) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint16) error

func (*PropertyVariant_VarUnion) NDRSwitchValue

func (o *PropertyVariant_VarUnion) NDRSwitchValue(sw uint16) uint16

func (*PropertyVariant_VarUnion) UnmarshalUnionNDR

func (o *PropertyVariant_VarUnion) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint16) error

type PropertyVariant_VarUnion_0

type PropertyVariant_VarUnion_0 struct {
}

PropertyVariant_VarUnion_0 structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 0, 1

func (*PropertyVariant_VarUnion_0) MarshalNDR

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

func (*PropertyVariant_VarUnion_0) UnmarshalNDR

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

type PropertyVariant_VarUnion_Blob

type PropertyVariant_VarUnion_Blob struct {
	Blob *Blob `idl:"name:blob" json:"blob"`
}

PropertyVariant_VarUnion_Blob structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 65

func (*PropertyVariant_VarUnion_Blob) MarshalNDR

func (*PropertyVariant_VarUnion_Blob) UnmarshalNDR

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

type PropertyVariant_VarUnion_Bool

type PropertyVariant_VarUnion_Bool struct {
	Bool int16 `idl:"name:boolVal" json:"bool"`
}

PropertyVariant_VarUnion_Bool structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 11

func (*PropertyVariant_VarUnion_Bool) MarshalNDR

func (*PropertyVariant_VarUnion_Bool) UnmarshalNDR

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

type PropertyVariant_VarUnion_Byte

type PropertyVariant_VarUnion_Byte struct {
	Byte uint8 `idl:"name:bVal" json:"byte"`
}

PropertyVariant_VarUnion_Byte structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 17

func (*PropertyVariant_VarUnion_Byte) MarshalNDR

func (*PropertyVariant_VarUnion_Byte) UnmarshalNDR

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

type PropertyVariant_VarUnion_ByteArray

type PropertyVariant_VarUnion_ByteArray struct {
	ByteArray *ByteArray `idl:"name:caub" json:"byte_array"`
}

PropertyVariant_VarUnion_ByteArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4113

func (*PropertyVariant_VarUnion_ByteArray) MarshalNDR

func (*PropertyVariant_VarUnion_ByteArray) UnmarshalNDR

type PropertyVariant_VarUnion_Char

type PropertyVariant_VarUnion_Char struct {
	Char uint8 `idl:"name:cVal" json:"char"`
}

PropertyVariant_VarUnion_Char structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 16

func (*PropertyVariant_VarUnion_Char) MarshalNDR

func (*PropertyVariant_VarUnion_Char) UnmarshalNDR

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

type PropertyVariant_VarUnion_LargeInteger

type PropertyVariant_VarUnion_LargeInteger struct {
	LargeInteger *dtyp.LargeInteger `idl:"name:hVal" json:"large_integer"`
}

PropertyVariant_VarUnion_LargeInteger structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 20

func (*PropertyVariant_VarUnion_LargeInteger) MarshalNDR

func (*PropertyVariant_VarUnion_LargeInteger) UnmarshalNDR

type PropertyVariant_VarUnion_Long

type PropertyVariant_VarUnion_Long struct {
	Long int32 `idl:"name:lVal" json:"long"`
}

PropertyVariant_VarUnion_Long structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 3

func (*PropertyVariant_VarUnion_Long) MarshalNDR

func (*PropertyVariant_VarUnion_Long) UnmarshalNDR

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

type PropertyVariant_VarUnion_LongArray

type PropertyVariant_VarUnion_LongArray struct {
	LongArray *LongArray `idl:"name:cal" json:"long_array"`
}

PropertyVariant_VarUnion_LongArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4099

func (*PropertyVariant_VarUnion_LongArray) MarshalNDR

func (*PropertyVariant_VarUnion_LongArray) UnmarshalNDR

type PropertyVariant_VarUnion_PropertyVariantArray

type PropertyVariant_VarUnion_PropertyVariantArray struct {
	PropertyVariantArray *PropertyVariantArray `idl:"name:capropvar" json:"property_variant_array"`
}

PropertyVariant_VarUnion_PropertyVariantArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4108

func (*PropertyVariant_VarUnion_PropertyVariantArray) MarshalNDR

func (*PropertyVariant_VarUnion_PropertyVariantArray) UnmarshalNDR

type PropertyVariant_VarUnion_Short

type PropertyVariant_VarUnion_Short struct {
	Short int16 `idl:"name:iVal" json:"short"`
}

PropertyVariant_VarUnion_Short structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 2

func (*PropertyVariant_VarUnion_Short) MarshalNDR

func (*PropertyVariant_VarUnion_Short) UnmarshalNDR

type PropertyVariant_VarUnion_UUID

type PropertyVariant_VarUnion_UUID struct {
	UUID *dtyp.GUID `idl:"name:puuid" json:"uuid"`
}

PropertyVariant_VarUnion_UUID structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 72

func (*PropertyVariant_VarUnion_UUID) MarshalNDR

func (*PropertyVariant_VarUnion_UUID) UnmarshalNDR

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

type PropertyVariant_VarUnion_UUIDArray

type PropertyVariant_VarUnion_UUIDArray struct {
	UUIDArray *ClassIDArray `idl:"name:cauuid" json:"uuid_array"`
}

PropertyVariant_VarUnion_UUIDArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4168

func (*PropertyVariant_VarUnion_UUIDArray) MarshalNDR

func (*PropertyVariant_VarUnion_UUIDArray) UnmarshalNDR

type PropertyVariant_VarUnion_Uint32Array

type PropertyVariant_VarUnion_Uint32Array struct {
	Uint32Array *Uint32Array `idl:"name:caul" json:"uint32_array"`
}

PropertyVariant_VarUnion_Uint32Array structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4115

func (*PropertyVariant_VarUnion_Uint32Array) MarshalNDR

func (*PropertyVariant_VarUnion_Uint32Array) UnmarshalNDR

type PropertyVariant_VarUnion_UlargeInteger

type PropertyVariant_VarUnion_UlargeInteger struct {
	UlargeInteger *dtyp.UlargeInteger `idl:"name:uhVal" json:"ularge_integer"`
}

PropertyVariant_VarUnion_UlargeInteger structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 21

func (*PropertyVariant_VarUnion_UlargeInteger) MarshalNDR

func (*PropertyVariant_VarUnion_UlargeInteger) UnmarshalNDR

type PropertyVariant_VarUnion_UlargeIntegerArray

type PropertyVariant_VarUnion_UlargeIntegerArray struct {
	UlargeIntegerArray *UlargeIntegerArray `idl:"name:cauh" json:"ularge_integer_array"`
}

PropertyVariant_VarUnion_UlargeIntegerArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4117

func (*PropertyVariant_VarUnion_UlargeIntegerArray) MarshalNDR

func (*PropertyVariant_VarUnion_UlargeIntegerArray) UnmarshalNDR

type PropertyVariant_VarUnion_Ulong

type PropertyVariant_VarUnion_Ulong struct {
	Ulong uint32 `idl:"name:ulVal" json:"ulong"`
}

PropertyVariant_VarUnion_Ulong structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 19

func (*PropertyVariant_VarUnion_Ulong) MarshalNDR

func (*PropertyVariant_VarUnion_Ulong) UnmarshalNDR

type PropertyVariant_VarUnion_UnicodeString

type PropertyVariant_VarUnion_UnicodeString struct {
	UnicodeString string `idl:"name:pwszVal;string" json:"unicode_string"`
}

PropertyVariant_VarUnion_UnicodeString structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 31

func (*PropertyVariant_VarUnion_UnicodeString) MarshalNDR

func (*PropertyVariant_VarUnion_UnicodeString) UnmarshalNDR

type PropertyVariant_VarUnion_UnicodeStringArray

type PropertyVariant_VarUnion_UnicodeStringArray struct {
	UnicodeStringArray *UnicodeStringArray `idl:"name:calpwstr" json:"unicode_string_array"`
}

PropertyVariant_VarUnion_UnicodeStringArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4127

func (*PropertyVariant_VarUnion_UnicodeStringArray) MarshalNDR

func (*PropertyVariant_VarUnion_UnicodeStringArray) UnmarshalNDR

type PropertyVariant_VarUnion_Ushort

type PropertyVariant_VarUnion_Ushort struct {
	Ushort uint16 `idl:"name:uiVal" json:"ushort"`
}

PropertyVariant_VarUnion_Ushort structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 18

func (*PropertyVariant_VarUnion_Ushort) MarshalNDR

func (*PropertyVariant_VarUnion_Ushort) UnmarshalNDR

type PropertyVariant_VarUnion_UshortArray

type PropertyVariant_VarUnion_UshortArray struct {
	UshortArray *UshortArray `idl:"name:caui" json:"ushort_array"`
}

PropertyVariant_VarUnion_UshortArray structure represents PropertyVariant_VarUnion RPC union arm.

It has following labels: 4114

func (*PropertyVariant_VarUnion_UshortArray) MarshalNDR

func (*PropertyVariant_VarUnion_UshortArray) UnmarshalNDR

type QueueFormat

type QueueFormat struct {
	// m_qft:  The type of queue format name. It MUST be set to one of the values of QUEUE_FORMAT_TYPE.
	// It is used as a union discriminant in the QUEUE_FORMAT structure.
	QueueFormatType uint8 `idl:"name:m_qft" json:"queue_format_type"`
	// m_SuffixAndFlags:  This member is broken into two subfields: Suffix Type is located
	// in the 4 least-significant bits, and Flags is located in the 4 most-significant bits.
	//
	//	+---+---+---+---+---+---+---+---+
	//	|   |   |   |   |   |   |   |   |
	//	| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
	//	|   |   |   |   |   |   |   |   |
	//	+---+---+---+---+---+---+---+---+
	//	+---+---+---+---+---+---+---+---+
	//	| Flags         | Suffix type   |
	//	+---+---+---+---+---+---+---+---+
	//
	//
	//	+-----------------------------------+--------------------------------------------+
	//	|                                   |                                            |
	//	|               FLAGS               |                  MEANING                   |
	//	|                                   |                                            |
	//	+-----------------------------------+--------------------------------------------+
	//	+-----------------------------------+--------------------------------------------+
	//	| QUEUE_FORMAT_FLAG_NOT_SYSTEM 0x00 | The specified queue is not a system queue. |
	//	+-----------------------------------+--------------------------------------------+
	//	| QUEUE_FORMAT_FLAG_SYSTEM 0x80     | The specified queue is a system queue.     |
	//	+-----------------------------------+--------------------------------------------+
	//
	//
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	|              SUFFIX               |                                                                                  |
	//	|               TYPE                |                                     MEANING                                      |
	//	|                                   |                                                                                  |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| QUEUE_SUFFIX_TYPE_NONE 0x00       | No suffix is specified. The Flags subfield MUST be set to 0x00. The m_qft member |
	//	|                                   | MUST NOT be set to 0x04.                                                         |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| QUEUE_SUFFIX_TYPE_JOURNAL 0x01    | A journal suffix. The Flags subfield MUST be set to 0x80. The m_qft member MUST  |
	//	|                                   | NOT be set to 0x05, 0x06, or 0x07.                                               |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| QUEUE_SUFFIX_TYPE_DEADLETTER 0x02 | A dead-letter suffix. The Flags subfield MUST be set to 0x80. The m_qft member   |
	//	|                                   | MUST NOT be set to 0x01, 0x02, 0x05, 0x06, or 0x07.                              |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| QUEUE_SUFFIX_TYPE_DEADXACT 0x03   | A transacted dead-letter suffix. The Flags subfield MUST be set to 0x80. The     |
	//	|                                   | m_qft member MUST be set to 0x03 or 0x04.                                        |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| QUEUE_SUFFIX_TYPE_XACTONLY 0x04   | A transaction-only suffix. The m_qft member MUST be set to 0x05.                 |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	//	| QUEUE_SUFFIX_TYPE_SUBQUEUE 0x05   | A subqueue suffix. The Flags subfield MUST be 0x00. The m_qft member MUST be set |
	//	|                                   | to 0x08.                                                                         |
	//	+-----------------------------------+----------------------------------------------------------------------------------+
	SuffixAndFlags uint8 `idl:"name:m_SuffixAndFlags" json:"suffix_and_flags"`

	QueueFormat *QueueFormat_QueueFormat `idl:"name:QueueFormat;switch_is:m_qft" json:"queue_format"`
	// contains filtered or unexported fields
}

QueueFormat structure represents QUEUE_FORMAT RPC structure.

The QUEUE_FORMAT structure describes the type of queue being managed and an identifier for that queue.

func (*QueueFormat) MarshalNDR

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

func (*QueueFormat) UnmarshalNDR

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

type QueueFormatType

type QueueFormatType uint16

QueueFormatType type represents QUEUE_FORMAT_TYPE RPC enumeration.

The QUEUE_FORMAT_TYPE enumeration identifies the type of name format being used.

QUEUE_FORMAT_TYPE_UNKNOWN:  The format type is unknown.

var (
	QueueFormatTypeUnknown QueueFormatType = 0
	// QUEUE_FORMAT_TYPE_PUBLIC:  The QUEUE_FORMAT (section 2.2.7) structure contains a
	// GUID (as specified in [MS-DTYP] section 2.3.4) that identifies a queue.
	QueueFormatTypePublic QueueFormatType = 1
	// QUEUE_FORMAT_TYPE_PRIVATE:  The QUEUE_FORMAT (section 2.2.7) structure contains
	// an OBJECTID structure that identifies a queue.
	QueueFormatTypePrivate QueueFormatType = 2
	// QUEUE_FORMAT_TYPE_DIRECT:  The QUEUE_FORMAT structure contains a direct format name
	// string that identifies a queue.
	QueueFormatTypeDirect QueueFormatType = 3
	// QUEUE_FORMAT_TYPE_MACHINE:  The QUEUE_FORMAT structure contains a GUID (as specified
	// in [MS-DTYP] section 2.3.4) that identifies a queue.
	QueueFormatTypeMachine QueueFormatType = 4
	// QUEUE_FORMAT_TYPE_CONNECTOR:  The QUEUE_FORMAT structure contains a GUID (as specified
	// in [MS-DTYP] section 2.3.4) that identifies a connector queue. This is not supported
	// by all protocols.
	QueueFormatTypeConnector QueueFormatType = 5
	// QUEUE_FORMAT_TYPE_DL:  The QUEUE_FORMAT structure contains a GUID (as specified
	// in [MS-DTYP] section 2.3.4) that identifies a distribution list (DL). This is not
	// supported by all protocols.
	QueueFormatTypeDL QueueFormatType = 6
	// QUEUE_FORMAT_TYPE_MULTICAST:  The QUEUE_FORMAT structure contains a MULTICAST_ID
	// (section 2.2.10) that identifies a multicast address. This is not supported by all
	// protocols.
	QueueFormatTypeMulticast QueueFormatType = 7
	// QUEUE_FORMAT_TYPE_SUBQUEUE:  The QUEUE_FORMAT structure contains a direct name string
	// that identifies a subqueue.
	QueueFormatTypeSubqueue QueueFormatType = 8
)

func (QueueFormatType) String

func (o QueueFormatType) String() string

type QueueFormat_0

type QueueFormat_0 struct {
}

QueueFormat_0 structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 0

func (*QueueFormat_0) MarshalNDR

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

func (*QueueFormat_0) UnmarshalNDR

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

type QueueFormat_ConnectorID

type QueueFormat_ConnectorID struct {
	// m_GConnectorID:  The GUID (as specified in [MS-DTYP] section 2.3.4) of a connector
	// queue. It is selected when m_qft is set to 0x05.
	ConnectorID *dtyp.GUID `idl:"name:m_GConnectorID" json:"connector_id"`
}

QueueFormat_ConnectorID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 5

func (*QueueFormat_ConnectorID) MarshalNDR

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

func (*QueueFormat_ConnectorID) UnmarshalNDR

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

type QueueFormat_DLID

type QueueFormat_DLID struct {
	// m_DlID:  The identifier of a distribution list. It is selected when m_qft is set
	// to 0x06.
	DLID *DLID `idl:"name:m_DlID" json:"dl_id"`
}

QueueFormat_DLID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 6

func (*QueueFormat_DLID) MarshalNDR

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

func (*QueueFormat_DLID) UnmarshalNDR

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

type QueueFormat_DirectID

type QueueFormat_DirectID struct {
	// m_pDirectID:  A direct format name (as specified in section 2.1.2) with the "DIRECT="
	// prefix removed. It is selected when m_qft is set to 0x03.
	DirectID string `idl:"name:m_pDirectID;string" json:"direct_id"`
}

QueueFormat_DirectID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 3

func (*QueueFormat_DirectID) MarshalNDR

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

func (*QueueFormat_DirectID) UnmarshalNDR

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

type QueueFormat_DirectSubqueueID

type QueueFormat_DirectSubqueueID struct {
	// m_pDirectSubqueueID:  The identifier of a subqueue. Selected when m_qft is set to
	// 0x08.
	//
	// The value MUST conform to the ABNF for DirectName and contain the optional <Subqueue>
	// element, as specified in section 2.1.
	DirectSubqueueID string `idl:"name:m_pDirectSubqueueID;string" json:"direct_subqueue_id"`
}

QueueFormat_DirectSubqueueID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 8

func (*QueueFormat_DirectSubqueueID) MarshalNDR

func (*QueueFormat_DirectSubqueueID) UnmarshalNDR

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

type QueueFormat_MachineID

type QueueFormat_MachineID struct {
	// m_gMachineID:  The GUID (as specified in [MS-DTYP] section 2.3.4) of a machine. It
	// is selected when m_qft is set to 0x04.
	MachineID *dtyp.GUID `idl:"name:m_gMachineID" json:"machine_id"`
}

QueueFormat_MachineID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 4

func (*QueueFormat_MachineID) MarshalNDR

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

func (*QueueFormat_MachineID) UnmarshalNDR

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

type QueueFormat_MulticastID

type QueueFormat_MulticastID struct {
	// m_MulticastID:  A MULTICAST_ID (section 2.2.10) which specifies a multicast address
	// and port. It is selected when m_qft is set to 0x07.
	MulticastID *MulticastID `idl:"name:m_MulticastID" json:"multicast_id"`
}

QueueFormat_MulticastID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 7

func (*QueueFormat_MulticastID) MarshalNDR

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

func (*QueueFormat_MulticastID) UnmarshalNDR

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

type QueueFormat_PrivateID

type QueueFormat_PrivateID struct {
	// m_oPrivateID:  An OBJECTID of a private queue; members MUST be used as specified
	// in OBJECTID. Selected when m_qft is set to 0x02.
	PrivateID *ObjectID `idl:"name:m_oPrivateID" json:"private_id"`
}

QueueFormat_PrivateID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 2

func (*QueueFormat_PrivateID) MarshalNDR

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

func (*QueueFormat_PrivateID) UnmarshalNDR

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

type QueueFormat_PublicID

type QueueFormat_PublicID struct {
	// m_gPublicID:  A GUID (as specified in [MS-DTYP] section 2.3.4) of a public queue.
	// Selected when m_qft is set to 0x01.
	PublicID *dtyp.GUID `idl:"name:m_gPublicID" json:"public_id"`
}

QueueFormat_PublicID structure represents QueueFormat_QueueFormat RPC union arm.

It has following labels: 1

func (*QueueFormat_PublicID) MarshalNDR

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

func (*QueueFormat_PublicID) UnmarshalNDR

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

type QueueFormat_QueueFormat

type QueueFormat_QueueFormat struct {
	// Types that are assignable to Value
	//
	// *QueueFormat_0
	// *QueueFormat_PublicID
	// *QueueFormat_PrivateID
	// *QueueFormat_DirectID
	// *QueueFormat_MachineID
	// *QueueFormat_ConnectorID
	// *QueueFormat_DLID
	// *QueueFormat_MulticastID
	// *QueueFormat_DirectSubqueueID
	Value is_QueueFormat_QueueFormat `json:"value"`
}

QueueFormat_QueueFormat structure represents QUEUE_FORMAT union anonymous member.

The QUEUE_FORMAT structure describes the type of queue being managed and an identifier for that queue.

func (*QueueFormat_QueueFormat) GetValue

func (o *QueueFormat_QueueFormat) GetValue() any

func (*QueueFormat_QueueFormat) MarshalUnionNDR

func (o *QueueFormat_QueueFormat) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint8) error

func (*QueueFormat_QueueFormat) NDRSwitchValue

func (o *QueueFormat_QueueFormat) NDRSwitchValue(sw uint8) uint8

func (*QueueFormat_QueueFormat) UnmarshalUnionNDR

func (o *QueueFormat_QueueFormat) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint8) error

type TransactionUOW

type TransactionUOW struct {
	// rgb:  An array of unsigned single-byte characters that contains a globally unique
	// identifier (GUID).
	Data []byte `idl:"name:rgb" json:"data"`
}

TransactionUOW structure represents XACTUOW RPC structure.

An XACTUOW is a structure that serves as a unique identifier for a transactional unit of work. An XACTUOW contains 16 unsigned single-byte characters representing a GUID ([MS-DTYP] section 2.3.4) and is defined as follows:

func (*TransactionUOW) MarshalNDR

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

func (*TransactionUOW) UnmarshalNDR

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

type Uint32Array

type Uint32Array struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of 32-bit unsigned integers.
	Elems []uint32 `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

Uint32Array structure represents CAUL RPC structure.

The CAUL structure defines a counted array of 32-bit unsigned integers.

func (*Uint32Array) MarshalNDR

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

func (*Uint32Array) UnmarshalNDR

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

type UlargeIntegerArray

type UlargeIntegerArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of ULARGE_INTEGER (section 2.2.17) values.
	Elems []*dtyp.UlargeInteger `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

UlargeIntegerArray structure represents CAUH RPC structure.

The CAUH structure defines a counted array of ULARGE_INTEGER (section 2.2.17) values.

func (*UlargeIntegerArray) MarshalNDR

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

func (*UlargeIntegerArray) UnmarshalNDR

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

type UnicodeStringArray

type UnicodeStringArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of wchar_t* values.
	Elems []string `idl:"name:pElems;size_is:(cElems);string" json:"elems"`
}

UnicodeStringArray structure represents CALPWSTR RPC structure.

The CALPWSTR structure defines a counted array of wchar_t* values.

func (*UnicodeStringArray) MarshalNDR

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

func (*UnicodeStringArray) UnmarshalNDR

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

type UshortArray

type UshortArray struct {
	// cElems:  MUST be set to the total number of elements of the array.
	ElemsCount uint32 `idl:"name:cElems" json:"elems_count"`
	// pElems:  An array of unsigned short integers.
	Elems []uint16 `idl:"name:pElems;size_is:(cElems)" json:"elems"`
}

UshortArray structure represents CAUI RPC structure.

The CAUI structure defines a counted array of unsigned short integers.

func (*UshortArray) MarshalNDR

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

func (*UshortArray) UnmarshalNDR

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

type VarEnum

type VarEnum uint16

VarEnum type represents VARENUM RPC enumeration.

The following values are used in the discriminant field, vt, of the PROPVARIANT (section 2.2.13) type.

The PROPVARIANT (section 2.2.13) type constants are defined in the VARENUM enumeration, as follows:

var (
	// VT_EMPTY:  (0x0000): The type of the contained field is undefined. When this flag
	// is specified, the PROPVARIANT (section 2.2.13) MUST NOT contain a data field.
	VarEmpty VarEnum = 0
	// VT_NULL:  (0x0001): The type of the contained field is NULL. When this flag is specified,
	// the PROPVARIANT (section 2.2.13) MUST NOT contain a data field.
	VarNull VarEnum = 1
	// VT_I2:  (0x0002): The type of the contained field MUST be a 2-byte signed integer.
	VarEnumI2 VarEnum = 2
	// VT_I4:  (0x0003): The type of the contained field MUST be a 4-byte signed integer.
	VarEnumI4 VarEnum = 3
	// VT_BOOL:  (0x000B): The type of the contained field MUST be VARIANT_BOOL (section
	// 2.2.14).
	VarEnumBool VarEnum = 11
	// VT_VARIANT:  (0x000C): The type of the contained field MUST be CAPROPVARIANT (section
	// 2.2.16.8). It MUST appear with the bit flag VT_VECTOR.
	VarEnumVariant VarEnum = 12
	// VT_I1:  (0x0010): The type of the contained field MUST be a 1-byte integer.
	VarEnumI1 VarEnum = 16
	// VT_UI1:  (0x0011): The type of the contained field MUST be a 1-byte unsigned integer.
	VarEnumUI1 VarEnum = 17
	// VT_UI2:  (0x0012): The type of the contained field MUST be a 2-byte unsigned integer.
	VarEnumUI2 VarEnum = 18
	// VT_UI4:  (0x0013): The type of the contained field MUST be a 4-byte unsigned integer.
	VarEnumUI4 VarEnum = 19
	// VT_I8:  (0x0014): The type of the contained field MUST be an 8-byte signed integer.
	VarEnumI8 VarEnum = 20
	// VT_UI8:  (0x0015): The type of the contained field MUST be an 8-byte unsigned integer.
	VarEnumUI8 VarEnum = 21
	// VT_LPWSTR:  (0x001F): The type of the contained field MUST be an LPWSTR (as specified
	// in [MS-DTYP] section 2.2.36), a null-terminated Unicode string.
	VarUnicodeString VarEnum = 31
	// VT_BLOB:  (0x0041): The type of the contained field MUST be a binary large object
	// (BLOB) (section 2.2.15).
	VarEnumBlob VarEnum = 65
	// VT_CLSID:  (0x0048): The type of the contained field MUST be a pointer to a GUID
	// (as specified in [MS-DTYP] section 2.3.4) value.
	VarEnumClassID VarEnum = 72
	// VT_VECTOR:   (0x1000): The type of the contained field MUST be combined with other
	// values by using the bitwise OR operation to indicate a counted field. The type of
	// the contained field MUST be a COUNTEDARRAY (section 2.2.16).
	VarEnumVector VarEnum = 4096
)

func (VarEnum) String

func (o VarEnum) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL