l2cap

package
v0.0.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 17, 2022 License: BSD-3-Clause Imports: 5 Imported by: 2

Documentation

Index

Constants

View Source
const (
	// [Vol 3, Part A, 4.3]
	ReasonCommandNotUnderstood uint16 = 0x0000
	ReasonSignalingMTUExceeded uint16 = 0x0001
	ReasonInvalidCID           uint16 = 0x0002

	// [Vol 3, Part A, 4.3]
	ConnectionResultSuccessful      uint16 = 0x0000
	ConnectionResultPending         uint16 = 0x0001
	ConnectionResultPSMNotSupported uint16 = 0x0002
	ConnectionResultSecurityBlock   uint16 = 0x0003
	ConnectionResultNoResources     uint16 = 0x0004
	ConnectionStatusNoInfo          uint16 = 0x0000
	ConnectionStatusAuthentication  uint16 = 0x0001
	ConnectionStatusAuthorization   uint16 = 0x0002

	// [Vol 3, Part A, 4.5]
	ConfigurationResultSuccessful              uint16 = 0x0000
	ConfigurationResultFailureUnacceptable     uint16 = 0x0001
	ConfigurationResultFailureRejected         uint16 = 0x0002
	ConfigurationResultFailureUnknown          uint16 = 0x0003
	ConfigurationResultPending                 uint16 = 0x0004
	ConfigurationResultFailureFlowSpecRejected uint16 = 0x0005

	// [Vol 3, Part A, 4.10]
	InfoTypeConnectionlessMTU uint16 = 0x0001
	InfoTypeExtendedFeatures  uint16 = 0x0002
	InfoTypeFixedChannels     uint16 = 0x0003

	// [Vol 3, Part A, 4.11]
	InfoResponseResultSuccess      uint16 = 0x0000
	InfoResponseResultNotSupported uint16 = 0x0001

	// [Vol 3, Part A, 4.12]
	ExtendedFeatureFlowControlModeSupported            uint32 = 0x00000001
	ExtendedFeatureRetransmissionModeSupported         uint32 = 0x00000002
	ExtendedFeatureBidirectionalQoSSupported           uint32 = 0x00000004
	ExtendedFeatureEnhancedRetransmissionModeSupported uint32 = 0x00000008
	ExtendedFeatureStreamingMode                       uint32 = 0x00000010
	ExtendedFeatureFCSOption                           uint32 = 0x00000020
	ExtendedFeatureExtendedFlowSpecification           uint32 = 0x00000040
	ExtendedFeatureFixedChannels                       uint32 = 0x00000080
	ExtendedFeatureExtendedWindowSize                  uint32 = 0x00000100
	ExtendedFeatureUnicastDataReception                uint32 = 0x00000200

	// [Vol 3, Part A, 4.15]
	CreateChannelResultSuccessful             uint16 = 0x0000
	CreateChannelResultPending                uint16 = 0x0001
	CreateChannelResultPSMNotSupported        uint16 = 0x0002
	CreateChannelResultSecurityBlock          uint16 = 0x0003
	CreateChannelResultNoResources            uint16 = 0x0004
	CreateChannelResultControllerNotSupported uint16 = 0x0005
	CreateChannelStatusNoInfo                 uint16 = 0x0000
	CreateChannelStatusAuthentication         uint16 = 0x0001
	CreateChannelStatusAuthorization          uint16 = 0x0002

	// [Vol 3, Part A, 4.17]
	MoveChannelResultSuccess                uint16 = 0x0000
	MoveChannelResultPending                uint16 = 0x0001
	MoveChannelResultControllerNotSupported uint16 = 0x0002
	MoveChannelResultControllerSame         uint16 = 0x0003
	MoveChannelResultConfigNotSupported     uint16 = 0x0004
	MoveChannelResultCollision              uint16 = 0x0005
	MoveChannelResultNotAllowed             uint16 = 0x0006

	// [ Vol 3, Part A, 3.2]
	DefaultConnectionlessMTU uint16 = 0x0030
)
View Source
const ExtendedFlowSpecificationOptionType = 0x06

ExtendedFlowSpecificationType is the option type of Extended Flow Specification configuration option.

View Source
const ExtendedWindowSizeOptionType = 0x07

ExtendedWindowSizeType is the option type of Extended Window Size configuration option.

View Source
const FlushTimeoutOptionType = 0x02

FlushTimeoutType is the option type of Flush Timeout configuration option.

View Source
const FrameCheckSequenceOptionType = 0x05

FrameCheckSequenceType is the option type of Frame Check Sequence configuration option.

View Source
const MTUOptionType = 0x01

MTUType is the option type of MTU configuration option.

View Source
const QoSOptionType = 0x03

QoSType is the option type of QoS configuration option.

View Source
const RetransmissionAndFlowControlOptionType = 0x04

RetransmissionAndFlowControlType is the option type of Retransmission And Flow Control configuration option.

View Source
const SignalCommandReject = 0x01

SignalCommandReject is the code of Command Reject signaling packet.

View Source
const SignalConfigurationRequest = 0x04

SignalConfigurationRequest is the code of Configuration Request signaling packet.

View Source
const SignalConfigurationResponse = 0x05

SignalConfigurationResponse is the code of Configuration Response signaling packet.

View Source
const SignalConnectionParameterUpdateRequest = 0x12

SignalConnectionParameterUpdateRequest is the code of Connection Parameter Update Request signaling packet.

View Source
const SignalConnectionParameterUpdateResponse = 0x13

SignalConnectionParameterUpdateResponse is the code of Connection Parameter Update Response signaling packet.

View Source
const SignalConnectionRequest = 0x02

SignalConnectionRequest is the code of Connection Request signaling packet.

View Source
const SignalConnectionResponse = 0x03

SignalConnectionResponse is the code of Connection Response signaling packet.

View Source
const SignalCreateChannelRequest = 0x0C

SignalCreateChannelRequest is the code of Create Channel Request signaling packet.

View Source
const SignalCreateChannelResponse = 0x0D

SignalCreateChannelResponse is the code of Create Channel Response signaling packet.

View Source
const SignalDisconnectRequest = 0x06

SignalDisconnectRequest is the code of Disconnect Request signaling packet.

View Source
const SignalDisconnectResponse = 0x07

SignalDisconnectResponse is the code of Disconnect Response signaling packet.

View Source
const SignalEchoRequest = 0x08

SignalEchoRequest is the code of Echo Request signaling packet.

View Source
const SignalEchoResponse = 0x09

SignalEchoResponse is the code of Echo Response signaling packet.

View Source
const SignalInformationRequest = 0x0A

SignalInformationRequest is the code of Information Request signaling packet.

View Source
const SignalInformationResponse = 0x0B

SignalInformationResponse is the code of Information Response signaling packet.

View Source
const SignalLECreditBasedConnectionRequest = 0x14

SignalLECreditBasedConnectionRequest is the code of LE Credit Based Connection Request signaling packet.

View Source
const SignalLECreditBasedConnectionResponse = 0x15

SignalLECreditBasedConnectionResponse is the code of LE Credit Based Connection Response signaling packet.

View Source
const SignalLEFlowControlCredit = 0x16

SignalLEFlowControlCredit is the code of LE Flow Control Credit signaling packet.

View Source
const SignalMoveChannelConfirmation = 0x10

SignalMoveChannelConfirmation is the code of Move Channel Confirmation signaling packet.

View Source
const SignalMoveChannelConfirmationResponse = 0x11

SignalMoveChannelConfirmationResponse is the code of Move Channel Confirmation Response signaling packet.

View Source
const SignalMoveChannelRequest = 0x0E

SignalMoveChannelRequest is the code of Move Channel Request signaling packet.

View Source
const SignalMoveChannelResponse = 0x0F

SignalMoveChannelResponse is the code of Move Channel Response signaling packet.

Variables

This section is empty.

Functions

This section is empty.

Types

type CommandReject

type CommandReject struct {
	Reason         uint16
	ActualSigMTU   uint16
	SourceCID      uint16
	DestinationCID uint16
}

CommandReject implements Command Reject (0x01) [Vol 3, Part A, 4.1].

func (CommandReject) Code

func (s CommandReject) Code() int

Code returns the event code of the command.

func (*CommandReject) Marshal

func (s *CommandReject) Marshal() []byte

Marshal Serializes the struct into binary data int LittleEndian order

func (*CommandReject) Unmarshal

func (s *CommandReject) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ConfigurationRequest

type ConfigurationRequest struct {
	DestinationCID       uint16
	Flags                uint16
	ConfigurationOptions []Option
}

ConfigurationRequest implements Configuration Request (0x04) [Vol 3, Part A, 4.4].

func (ConfigurationRequest) Code

func (s ConfigurationRequest) Code() int

Code returns the event code of the command.

func (*ConfigurationRequest) Marshal

func (s *ConfigurationRequest) Marshal() []byte

Marshal Serializes the struct into binary data int LittleEndian order

func (*ConfigurationRequest) Unmarshal

func (s *ConfigurationRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ConfigurationResponse

type ConfigurationResponse struct {
	SourceCID            uint16
	Flags                uint16
	Result               uint16
	ConfigurationOptions []Option
}

ConfigurationResponse implements Configuration Response (0x05) [Vol 3, Part A, 4.5].

func (ConfigurationResponse) Code

func (s ConfigurationResponse) Code() int

Code returns the event code of the command.

func (*ConfigurationResponse) Marshal

func (s *ConfigurationResponse) Marshal() []byte

Marshal Serializes the struct into binary data int LittleEndian order

func (*ConfigurationResponse) Unmarshal

func (s *ConfigurationResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ConnectionParameterUpdateRequest

type ConnectionParameterUpdateRequest struct {
	IntervalMin       uint16
	IntervalMax       uint16
	SlaveLatency      uint16
	TimeoutMultiplier uint16
}

ConnectionParameterUpdateRequest implements Connection Parameter Update Request (0x12) [Vol 3, Part A, 4.20].

func (ConnectionParameterUpdateRequest) Code

Code returns the event code of the command.

func (*ConnectionParameterUpdateRequest) Marshal

func (s *ConnectionParameterUpdateRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*ConnectionParameterUpdateRequest) Unmarshal

func (s *ConnectionParameterUpdateRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ConnectionParameterUpdateResponse

type ConnectionParameterUpdateResponse struct {
	Result uint16
}

ConnectionParameterUpdateResponse implements Connection Parameter Update Response (0x13) [Vol 3, Part A, 4.21].

func (ConnectionParameterUpdateResponse) Code

Code returns the event code of the command.

func (*ConnectionParameterUpdateResponse) Marshal

func (s *ConnectionParameterUpdateResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*ConnectionParameterUpdateResponse) Unmarshal

func (s *ConnectionParameterUpdateResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ConnectionRequest

type ConnectionRequest struct {
	PSM       uint16
	SourceCID uint16
}

ConnectionRequest implements Connection Request (0x02) [Vol 3, Part A, 4.2].

func (ConnectionRequest) Code

func (s ConnectionRequest) Code() int

Code returns the event code of the command.

func (*ConnectionRequest) Marshal

func (s *ConnectionRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*ConnectionRequest) Unmarshal

func (s *ConnectionRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ConnectionResponse

type ConnectionResponse struct {
	DestinationCID uint16
	SourceCID      uint16
	Result         uint16
	Status         uint16
}

ConnectionResponse implements Connection Response (0x03) [Vol 3, Part A, 4.3].

func (ConnectionResponse) Code

func (s ConnectionResponse) Code() int

Code returns the event code of the command.

func (*ConnectionResponse) Marshal

func (s *ConnectionResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*ConnectionResponse) Unmarshal

func (s *ConnectionResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type CreateChannelRequest

type CreateChannelRequest struct {
	PSM          uint16
	SourceCID    uint16
	ControllerID uint8
}

CreateChannelRequest implements Create Channel Request (0x0C) [Vol 3, Part A, 4.14].

func (CreateChannelRequest) Code

func (s CreateChannelRequest) Code() int

Code returns the event code of the command.

func (*CreateChannelRequest) Marshal

func (s *CreateChannelRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*CreateChannelRequest) Unmarshal

func (s *CreateChannelRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type CreateChannelResponse

type CreateChannelResponse struct {
	DestinationCID uint16
	SourceCID      uint16
	Result         uint16
	Status         uint16
}

CreateChannelResponse implements Create Channel Response (0x0D) [Vol 3, Part A, 4.15].

func (CreateChannelResponse) Code

func (s CreateChannelResponse) Code() int

Code returns the event code of the command.

func (*CreateChannelResponse) Marshal

func (s *CreateChannelResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*CreateChannelResponse) Unmarshal

func (s *CreateChannelResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type DisconnectRequest

type DisconnectRequest struct {
	DestinationCID uint16
	SourceCID      uint16
}

DisconnectRequest implements Disconnect Request (0x06) [Vol 3, Part A, 4.6].

func (DisconnectRequest) Code

func (s DisconnectRequest) Code() int

Code returns the event code of the command.

func (*DisconnectRequest) Marshal

func (s *DisconnectRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*DisconnectRequest) Unmarshal

func (s *DisconnectRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type DisconnectResponse

type DisconnectResponse struct {
	DestinationCID uint16
	SourceCID      uint16
}

DisconnectResponse implements Disconnect Response (0x07) [Vol 3, Part A, 4.7].

func (DisconnectResponse) Code

func (s DisconnectResponse) Code() int

Code returns the event code of the command.

func (*DisconnectResponse) Marshal

func (s *DisconnectResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*DisconnectResponse) Unmarshal

func (s *DisconnectResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type EchoRequest

type EchoRequest struct {
	Data uint16
}

EchoRequest implements Echo Request (0x08) [Vol 3, Part A, 4.8].

func (EchoRequest) Code

func (s EchoRequest) Code() int

Code returns the event code of the command.

func (*EchoRequest) Marshal

func (s *EchoRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*EchoRequest) Unmarshal

func (s *EchoRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type EchoResponse

type EchoResponse struct {
	Data uint16
}

EchoResponse implements Echo Response (0x09) [Vol 3, Part A, 4.9].

func (EchoResponse) Code

func (s EchoResponse) Code() int

Code returns the event code of the command.

func (*EchoResponse) Marshal

func (s *EchoResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*EchoResponse) Unmarshal

func (s *EchoResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ExtendedFlowSpecificationOption

type ExtendedFlowSpecificationOption struct {
	TypeHint            uint8
	Length              uint8
	Identifier          uint8
	ServiceType         uint8
	MaximumSDUSize      uint8
	SDUInterarrivalTime uint16
	AccessLatency       uint16
	FlushTimeout        uint16
}

ExtendedFlowSpecificationOption implements Extended Flow Specification (0x06) [Vol 3, Part A, 5.6].

func (*ExtendedFlowSpecificationOption) Hint

Hint returns if a bad value should cause the connection to fail

func (*ExtendedFlowSpecificationOption) Len

Len returns the length of the object payload in bytes

func (*ExtendedFlowSpecificationOption) MarshalBinary

func (o *ExtendedFlowSpecificationOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*ExtendedFlowSpecificationOption) SetHint

func (o *ExtendedFlowSpecificationOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*ExtendedFlowSpecificationOption) Type

Type ...

func (*ExtendedFlowSpecificationOption) UnmarshalBinary

func (o *ExtendedFlowSpecificationOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type ExtendedWindowSizeOption

type ExtendedWindowSizeOption struct {
	TypeHint      uint8
	Length        uint8
	MaxWindowSize uint8
}

ExtendedWindowSizeOption implements Extended Window Size (0x07) [Vol 3, Part A, 5.6].

func (*ExtendedWindowSizeOption) Hint

func (o *ExtendedWindowSizeOption) Hint() uint8

Hint returns if a bad value should cause the connection to fail

func (*ExtendedWindowSizeOption) Len

Len returns the length of the object payload in bytes

func (*ExtendedWindowSizeOption) MarshalBinary

func (o *ExtendedWindowSizeOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*ExtendedWindowSizeOption) SetHint

func (o *ExtendedWindowSizeOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*ExtendedWindowSizeOption) Type

func (o *ExtendedWindowSizeOption) Type() uint8

Type ...

func (*ExtendedWindowSizeOption) UnmarshalBinary

func (o *ExtendedWindowSizeOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type FlushTimeoutOption

type FlushTimeoutOption struct {
	TypeHint     uint8
	Length       uint8
	FlushTimeout uint16
}

FlushTimeoutOption implements Flush Timeout (0x02) [Vol 3, Part A, 5.2].

func (*FlushTimeoutOption) Hint

func (o *FlushTimeoutOption) Hint() uint8

Hint returns if a bad value should cause the connection to fail

func (*FlushTimeoutOption) Len

func (o *FlushTimeoutOption) Len() uint8

Len returns the length of the object payload in bytes

func (*FlushTimeoutOption) MarshalBinary

func (o *FlushTimeoutOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*FlushTimeoutOption) SetHint

func (o *FlushTimeoutOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*FlushTimeoutOption) Type

func (o *FlushTimeoutOption) Type() uint8

Type ...

func (*FlushTimeoutOption) UnmarshalBinary

func (o *FlushTimeoutOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type FrameCheckSequenceOption

type FrameCheckSequenceOption struct {
	TypeHint uint8
	Length   uint8
	FCSType  uint8
}

FrameCheckSequenceOption implements Frame Check Sequence (0x05) [Vol 3, Part A, 5.5].

func (*FrameCheckSequenceOption) Hint

func (o *FrameCheckSequenceOption) Hint() uint8

Hint returns if a bad value should cause the connection to fail

func (*FrameCheckSequenceOption) Len

Len returns the length of the object payload in bytes

func (*FrameCheckSequenceOption) MarshalBinary

func (o *FrameCheckSequenceOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*FrameCheckSequenceOption) SetHint

func (o *FrameCheckSequenceOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*FrameCheckSequenceOption) Type

func (o *FrameCheckSequenceOption) Type() uint8

Type ...

func (*FrameCheckSequenceOption) UnmarshalBinary

func (o *FrameCheckSequenceOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type InformationRequest

type InformationRequest struct {
	InfoType uint16
}

InformationRequest implements Information Request (0x0A) [Vol 3, Part A, 4.10].

func (InformationRequest) Code

func (s InformationRequest) Code() int

Code returns the event code of the command.

func (*InformationRequest) Marshal

func (s *InformationRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*InformationRequest) Unmarshal

func (s *InformationRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type InformationResponse

type InformationResponse struct {
	InfoType            uint16
	Result              uint16
	ConnectionlessMTU   uint16
	ExtendedFeatureMask uint32
	FixedChannels       uint64
}

InformationResponse implements Information Response (0x0B) [Vol 3, Part A, 4.11].

func (InformationResponse) Code

func (s InformationResponse) Code() int

Code returns the event code of the command.

func (*InformationResponse) Marshal

func (s *InformationResponse) Marshal() []byte

Marshal Serializes the struct into binary data int LittleEndian order

func (*InformationResponse) Unmarshal

func (s *InformationResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type LECreditBasedConnectionRequest

type LECreditBasedConnectionRequest struct {
	LEPSM          uint16
	SourceCID      uint16
	MTU            uint16
	MPS            uint16
	InitialCredits uint16
}

LECreditBasedConnectionRequest implements LE Credit Based Connection Request (0x14) [Vol 3, Part A, 4.22].

func (LECreditBasedConnectionRequest) Code

Code returns the event code of the command.

func (*LECreditBasedConnectionRequest) Marshal

func (s *LECreditBasedConnectionRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*LECreditBasedConnectionRequest) Unmarshal

func (s *LECreditBasedConnectionRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type LECreditBasedConnectionResponse

type LECreditBasedConnectionResponse struct {
	DestinationCID    uint16
	MTU               uint16
	MPS               uint16
	InitialCreditsCID uint16
	Result            uint16
}

LECreditBasedConnectionResponse implements LE Credit Based Connection Response (0x15) [Vol 3, Part A, 4.23].

func (LECreditBasedConnectionResponse) Code

Code returns the event code of the command.

func (*LECreditBasedConnectionResponse) Marshal

func (s *LECreditBasedConnectionResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*LECreditBasedConnectionResponse) Unmarshal

func (s *LECreditBasedConnectionResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type LEFlowControlCredit

type LEFlowControlCredit struct {
	CID     uint16
	Credits uint16
}

LEFlowControlCredit implements LE Flow Control Credit (0x16) [Vol 3, Part A, 4.24].

func (LEFlowControlCredit) Code

func (s LEFlowControlCredit) Code() int

Code returns the event code of the command.

func (*LEFlowControlCredit) Marshal

func (s *LEFlowControlCredit) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*LEFlowControlCredit) Unmarshal

func (s *LEFlowControlCredit) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type MTUOption

type MTUOption struct {
	TypeHint uint8
	Length   uint8
	MTU      uint16
}

MTUOption implements MTU (0x01) [Vol 3, Part A, 5.1].

func (*MTUOption) Hint

func (o *MTUOption) Hint() uint8

Hint returns if a bad value should cause the connection to fail

func (*MTUOption) Len

func (o *MTUOption) Len() uint8

Len returns the length of the object payload in bytes

func (*MTUOption) MarshalBinary

func (o *MTUOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*MTUOption) SetHint

func (o *MTUOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*MTUOption) Type

func (o *MTUOption) Type() uint8

Type ...

func (*MTUOption) UnmarshalBinary

func (o *MTUOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type MoveChannelConfirmation

type MoveChannelConfirmation struct {
	InitiatorCID uint16
	Result       uint16
}

MoveChannelConfirmation implements Move Channel Confirmation (0x10) [Vol 3, Part A, 4.18].

func (MoveChannelConfirmation) Code

func (s MoveChannelConfirmation) Code() int

Code returns the event code of the command.

func (*MoveChannelConfirmation) Marshal

func (s *MoveChannelConfirmation) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*MoveChannelConfirmation) Unmarshal

func (s *MoveChannelConfirmation) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type MoveChannelConfirmationResponse

type MoveChannelConfirmationResponse struct {
	InitiatorCID uint16
}

MoveChannelConfirmationResponse implements Move Channel Confirmation Response (0x11) [Vol 3, Part A, 4.19].

func (MoveChannelConfirmationResponse) Code

Code returns the event code of the command.

func (*MoveChannelConfirmationResponse) Marshal

func (s *MoveChannelConfirmationResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*MoveChannelConfirmationResponse) Unmarshal

func (s *MoveChannelConfirmationResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type MoveChannelRequest

type MoveChannelRequest struct {
	InitiatorCID     uint16
	DestControllerID uint8
}

MoveChannelRequest implements Move Channel Request (0x0E) [Vol 3, Part A, 4.16].

func (MoveChannelRequest) Code

func (s MoveChannelRequest) Code() int

Code returns the event code of the command.

func (*MoveChannelRequest) Marshal

func (s *MoveChannelRequest) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*MoveChannelRequest) Unmarshal

func (s *MoveChannelRequest) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type MoveChannelResponse

type MoveChannelResponse struct {
	InitiatorCID uint16
	Result       uint16
}

MoveChannelResponse implements Move Channel Response (0x0F) [Vol 3, Part A, 4.17].

func (MoveChannelResponse) Code

func (s MoveChannelResponse) Code() int

Code returns the event code of the command.

func (*MoveChannelResponse) Marshal

func (s *MoveChannelResponse) Marshal() []byte

Marshal serializes the command parameters into binary form.

func (*MoveChannelResponse) Unmarshal

func (s *MoveChannelResponse) Unmarshal(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type Option

type Option interface {
	encoding.BinaryMarshaler
	encoding.BinaryUnmarshaler

	Type() uint8
	Len() uint8
	Hint() uint8
	SetHint(hint uint8)
}

type QoSOption

type QoSOption struct {
	TypeHint        uint8
	Length          uint8
	Flags           uint8
	ServiceType     uint8
	TokenBucketSize uint32
	PeakBandwidth   uint32
	Latency         uint32
	DelayVariation  uint32
}

QoSOption implements QoS (0x03) [Vol 3, Part A, 5.3].

func (*QoSOption) Hint

func (o *QoSOption) Hint() uint8

Hint returns if a bad value should cause the connection to fail

func (*QoSOption) Len

func (o *QoSOption) Len() uint8

Len returns the length of the object payload in bytes

func (*QoSOption) MarshalBinary

func (o *QoSOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*QoSOption) SetHint

func (o *QoSOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*QoSOption) Type

func (o *QoSOption) Type() uint8

Type ...

func (*QoSOption) UnmarshalBinary

func (o *QoSOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

type RetransmissionAndFlowControlOption

type RetransmissionAndFlowControlOption struct {
	TypeHint              uint8
	Length                uint8
	Mode                  uint8
	TxWindowSize          uint8
	MaxTransmit           uint8
	RetransmissionTimeout uint16
	MonitorTimeout        uint16
	MaximumPDUSize        uint16
}

RetransmissionAndFlowControlOption implements Retransmission And Flow Control (0x04) [Vol 3, Part A, 5.4].

func (*RetransmissionAndFlowControlOption) Hint

Hint returns if a bad value should cause the connection to fail

func (*RetransmissionAndFlowControlOption) Len

Len returns the length of the object payload in bytes

func (*RetransmissionAndFlowControlOption) MarshalBinary

func (o *RetransmissionAndFlowControlOption) MarshalBinary() ([]byte, error)

Marshal serializes the command parameters into binary form.

func (*RetransmissionAndFlowControlOption) SetHint

func (o *RetransmissionAndFlowControlOption) SetHint(hint uint8)

SetHint sets the Hint value based off of the MSB of the Type

func (*RetransmissionAndFlowControlOption) Type

Type ...

func (*RetransmissionAndFlowControlOption) UnmarshalBinary

func (o *RetransmissionAndFlowControlOption) UnmarshalBinary(b []byte) error

Unmarshal de-serializes the binary data and stores the result in the receiver.

Jump to

Keyboard shortcuts

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