mirror of
https://github.com/logos-messaging/specs.git
synced 2026-01-02 14:13:06 +00:00
update frame handing
This commit is contained in:
parent
cb429897e0
commit
403bb7bc5f
@ -64,7 +64,6 @@ In practice content size MUST be less that `255` * `max_seg_size` see: [initiali
|
|||||||
|
|
||||||
Other than its size, the protocol is agnostic of content.
|
Other than its size, the protocol is agnostic of content.
|
||||||
|
|
||||||
|
|
||||||
### Payload Delivery
|
### Payload Delivery
|
||||||
|
|
||||||
How payloads are sent and received by clients is not described in this protocol.
|
How payloads are sent and received by clients is not described in this protocol.
|
||||||
@ -162,12 +161,13 @@ The nonce and tag are combined with the ciphertext for transport where `cipherte
|
|||||||
## Frame Handling
|
## Frame Handling
|
||||||
|
|
||||||
This protocol uses explicit tagging of content, to remove ambiguity when parsing/handling frames.
|
This protocol uses explicit tagging of content, to remove ambiguity when parsing/handling frames.
|
||||||
This allows for clear distinction between content and frames providing protocol functionality.
|
This creates a clear distinction between frames generated by the protocol, and content which was passed in.
|
||||||
Even if new frames are added in the future, Clients can be certain whether the payload is intended for itself or applications.
|
Even if new frames are added in the future, Clients can be certain whether the payload is intended for itself or applications.
|
||||||
This is achieved through an invariant - All non-content frames are intended to be consumed by the client.
|
This is achieved through an invariant - All non-content frames are intended to be consumed by the client.
|
||||||
When a new unknown frame arrives it can be certain that a version compatibility issue has occurred.
|
When a new unknown frame arrives it can be certain that a version compatibility issue has occurred.
|
||||||
|
|
||||||
- Clients SHALL only pass content frames to Applications
|
- All application level content MUST use the `content` frameType.
|
||||||
|
- Clients SHALL only pass `content` tagged frames to Applications
|
||||||
- Clients MAY drop unrecognized frames
|
- Clients MAY drop unrecognized frames
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user