Skip to main content

Module error_codes

Module error_codes 

Source
Expand description

Draft-10 error, status and termination code registries.

Draft-10 predates the IANA registries introduced in draft-14. Each registry here is an inline Code | Reason table in the draft body, and the Reason column is the only name the draft gives a code point — there are no ALLCAPS symbolic names to transcribe. Every variant therefore carries the draft’s Reason text verbatim in backticks so the mapping from Rust name to draft row stays checkable, followed by the draft’s own prose where the draft supplies any.

from_u64 returns None for a code this draft does not define. Peers do send codes from other drafts and from private extensions, so an unknown code is a normal decoding outcome rather than an error.

Six registries are transcribed here, and they cover seven messages. ANNOUNCE_CANCEL carries an Error Code field with no table of its own, and Section 8.22 says why: “ANNOUNCE_CANCEL uses the same error codes as ANNOUNCE_ERROR”. So its codes are AnnounceErrorCode, and there is no seventh enum because there is no seventh registry.

Enums§

AnnounceErrorCode
ANNOUNCE_ERROR codes (draft-10, Section 8.20 “ANNOUNCE_ERROR”).
FetchErrorCode
FETCH_ERROR codes (draft-10, Section 8.14 “FETCH_ERROR”).
SessionErrorCode
Session termination codes (draft-10, Section 3.4 “Termination”).
SubscribeAnnouncesErrorCode
SUBSCRIBE_ANNOUNCES_ERROR codes (draft-10, Section 8.25 “SUBSCRIBE_ANNOUNCES_ERROR”).
SubscribeDoneStatusCode
SUBSCRIBE_DONE status codes (draft-10, Section 8.11 “SUBSCRIBE_DONE”).
SubscribeErrorCode
SUBSCRIBE_ERROR codes (draft-10, Section 8.8 “SUBSCRIBE_ERROR”).
TrackStatusCode
TRACK_STATUS Status Code values (draft-10, Section 8.17).