Documentation
¶
Overview ¶
Package moqt is the umbrella for MoQT protocol primitives, error codes, and session machinery used by the relay.
Subpackages:
- wire: on-the-wire primitives and control-message framing.
- message: typed message structs with Marshal/Parse.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PublishDoneCode ¶
type PublishDoneCode uint64
PublishDoneCode is a PUBLISH_DONE status code (§10.11, IANA §15.11.3).
const ( PublishDoneInternalError PublishDoneCode = 0x0 PublishDoneTrackEnded PublishDoneCode = 0x2 PublishDoneSubscriptionEnded PublishDoneCode = 0x3 PublishDoneGoingAway PublishDoneCode = 0x4 PublishDoneTooFarBehind PublishDoneCode = 0x5 PublishDoneExpired PublishDoneCode = 0x6 PublishDoneUpdateFailed PublishDoneCode = 0x8 PublishDoneExcessiveLoad PublishDoneCode = 0x9 PublishDoneMalformedTrack PublishDoneCode = 0x12 )
type RequestErrorCode ¶
type RequestErrorCode uint64
RequestErrorCode is a REQUEST_ERROR code (§10.6, IANA §15.11.2).
const ( RequestInternalError RequestErrorCode = 0x0 RequestTimeout RequestErrorCode = 0x2 RequestNotSupported RequestErrorCode = 0x3 RequestMalformedAuthToken RequestErrorCode = 0x4 RequestExpiredAuthToken RequestErrorCode = 0x5 RequestGoingAway RequestErrorCode = 0x6 RequestExcessiveLoad RequestErrorCode = 0x9 RequestDoesNotExist RequestErrorCode = 0x10 RequestInvalidRange RequestErrorCode = 0x11 RequestMalformedTrack RequestErrorCode = 0x12 RequestUninterested RequestErrorCode = 0x20 RequestPrefixOverlap RequestErrorCode = 0x30 RequestNamespaceTooLarge RequestErrorCode = 0x31 RequestInvalidJoiningID RequestErrorCode = 0x32 RequestUnsupportedExtension RequestErrorCode = 0x33 RequestRedirect RequestErrorCode = 0x34 RequestInvalidFilter RequestErrorCode = 0x36 )
type SessionErrorCode ¶
type SessionErrorCode uint64
SessionErrorCode is a MoQT session-termination error code (§3.5, IANA §15.11.1).
const ( SessionNoError SessionErrorCode = 0x0 SessionInternalError SessionErrorCode = 0x1 SessionProtocolViolation SessionErrorCode = 0x3 SessionInvalidRequestID SessionErrorCode = 0x4 SessionDuplicateTrackAlias SessionErrorCode = 0x5 SessionKeyValueFormattingError SessionErrorCode = 0x6 SessionInvalidPath SessionErrorCode = 0x8 SessionMalformedPath SessionErrorCode = 0x9 SessionGoawayTimeout SessionErrorCode = 0x10 SessionControlMessageTimeout SessionErrorCode = 0x11 SessionDataStreamTimeout SessionErrorCode = 0x12 SessionAuthTokenCacheOverflow SessionErrorCode = 0x13 SessionDuplicateAuthTokenAlias SessionErrorCode = 0x14 SessionVersionNegotiationFailed SessionErrorCode = 0x15 SessionMalformedAuthToken SessionErrorCode = 0x16 SessionUnknownAuthTokenAlias SessionErrorCode = 0x17 SessionExpiredAuthToken SessionErrorCode = 0x18 SessionInvalidAuthority SessionErrorCode = 0x19 SessionMalformedAuthority SessionErrorCode = 0x1A SessionTooManyRequestUpdates SessionErrorCode = 0x1B )
type StreamResetCode ¶
type StreamResetCode uint64
StreamResetCode is a per-stream reset code (§3.3.4, IANA §15.11.4).
const ( StreamResetInternalError StreamResetCode = 0x0 StreamResetCancelled StreamResetCode = 0x1 StreamResetDeliveryTimeout StreamResetCode = 0x2 StreamResetSessionClosed StreamResetCode = 0x3 StreamResetGoingAway StreamResetCode = 0x4 StreamResetTooFarBehind StreamResetCode = 0x5 StreamResetUnknownObjectStatus StreamResetCode = 0x6 StreamResetExpiredAuthToken StreamResetCode = 0x7 StreamResetExcessiveLoad StreamResetCode = 0x9 StreamResetMalformedTrack StreamResetCode = 0x12 )
Directories
¶
| Path | Synopsis |
|---|---|
|
Package loc implements the Low Overhead Media Container described by draft-ietf-moq-loc-04.
|
Package loc implements the Low Overhead Media Container described by draft-ietf-moq-loc-04. |
|
Package message implements MoQT control- and request-stream message types per draft-ietf-moq-transport-19.
|
Package message implements MoQT control- and request-stream message types per draft-ietf-moq-transport-19. |
|
Package msf implements the MOQT Streaming Format described by draft-ietf-moq-msf-01: catalog encode/decode, delta updates, group ID numbering (§6.1), and the Media Timeline (§7) and Event Timeline (§8) tracks.
|
Package msf implements the MOQT Streaming Format described by draft-ietf-moq-msf-01: catalog encode/decode, delta updates, group ID numbering (§6.1), and the Media Timeline (§7) and Event Timeline (§8) tracks. |
|
Package session implements the MoQT session layer: SETUP handshake, control stream multiplexing, request-ID allocation, and graceful termination via GOAWAY (§3.3, §3.5, §10.3, §10.4 of draft-ietf-moq-transport-19).
|
Package session implements the MoQT session layer: SETUP handshake, control stream multiplexing, request-ID allocation, and graceful termination via GOAWAY (§3.3, §3.5, §10.3, §10.4 of draft-ietf-moq-transport-19). |
|
internal/conntest
Package conntest holds transport-test helpers shared between the quicconn and wtconn adapter test packages.
|
Package conntest holds transport-test helpers shared between the quicconn and wtconn adapter test packages. |
|
quicconn
Package quicconn adapts github.com/quic-go/quic-go's *quic.Conn to the transport-neutral session.Conn interface.
|
Package quicconn adapts github.com/quic-go/quic-go's *quic.Conn to the transport-neutral session.Conn interface. |
|
sessiontest
Package sessiontest provides in-process helpers for testing MoQT session code without a real QUIC transport.
|
Package sessiontest provides in-process helpers for testing MoQT session code without a real QUIC transport. |
|
wtconn
Package wtconn adapts github.com/quic-go/webtransport-go's *webtransport.Session to the transport-neutral session.Conn interface.
|
Package wtconn adapts github.com/quic-go/webtransport-go's *webtransport.Session to the transport-neutral session.Conn interface. |
|
Package track provides domain types for MoQT track identification per §2.4.1 of draft-ietf-moq-transport: Full Track Name and a comparable Key derived from it for use as a Go map key.
|
Package track provides domain types for MoQT track identification per §2.4.1 of draft-ietf-moq-transport: Full Track Name and a comparable Key derived from it for use as a Go map key. |
|
Package uri parses and validates "moqt" URIs and their fragment identifiers as defined by draft-ietf-moq-transport-19 §3.1.1 and §3.1.2.
|
Package uri parses and validates "moqt" URIs and their fragment identifiers as defined by draft-ietf-moq-transport-19 §3.1.1 and §3.1.2. |
|
Package wire implements MoQT wire-format primitives per draft-ietf-moq-transport-19: variable-length integers (§1.4.1, RFC 9000 §16), reason phrases (§1.4.4), track namespaces (§2.4.1), key-value pairs used in SETUP options (§1.4.3, §10.3.1), and control-message framing (§10).
|
Package wire implements MoQT wire-format primitives per draft-ietf-moq-transport-19: variable-length integers (§1.4.1, RFC 9000 §16), reason phrases (§1.4.4), track namespaces (§2.4.1), key-value pairs used in SETUP options (§1.4.3, §10.3.1), and control-message framing (§10). |
Click to show internal directories.
Click to hide internal directories.