fn d16_msg_param_name(key: u64) -> Option<&'static str>Expand description
The nine Message Parameter Types draft-16 Section 13.2 Table 8 assigns.
Exactly the nine, and the same nine message.rs’s KNOWN_MESSAGE_PARAMETERS
holds. Three more are easy to carry here by mistake — 0x04 as
max_cache_duration, 0x0e as publisher_priority and 0x30 as
dynamic_groups — because draft-15’s Table 10 really does have all three in
this namespace.
Draft-16 did not delete those three; it moved them. 0x04 and 0x0e are
MAX_CACHE_DURATION and DEFAULT_PUBLISHER_PRIORITY in Table 9’s Extension
Header registry and 0x30 is DYNAMIC_GROUPS there, which is
d16_track_ext_name’s table and not this one. PUBLISHER_PRIORITY as a
Message Parameter is gone outright.
So the three names would be not merely unused but unreachable and
wrong: draft-16 answers an unknown Message Parameter with a session close —
Section 9.2, “An endpoint that receives an unknown Message Parameter MUST
close the session with PROTOCOL_VIOLATION” — and decode_parameters applies
it, so no decoded draft-16 message can carry one of these three keys in a
Message Parameter list. A name this table gave them could only ever be read
about a parameter the same file had already refused.