Add mailbox property client version WIP

Daniel Lublin
2022-04-04 13:57:01 +02:00
parent a457f634a6
commit e3187c6b25

@@ -11,7 +11,9 @@ The client uses a separate BSP group for communicating with each contact. The [g
### Message types
**UPDATE** - The message body is a BDF list with two elements: `version` (int), and `properties` (dictionary). `version` is incremented whenever the properties change. The keys of the `properties` dictionary are strings.
**UPDATE** - The message body is a BDF list with 4 elements: `version` (int), `properties` (dictionary), `briarSupports` (list), and `mailboxSupports` (list).
`version` is incremented whenever the properties change. The keys of the `properties` dictionary are strings.
For major version 0, the `properties` dictionary of a well-formed update contains either no (0) entries, which means for the receiver that there is no mailbox available. Or, it contains all of the following entries:
@@ -20,6 +22,10 @@ For major version 0, the `properties` dictionary of a well-formed update contain
* "inboxId" : byte[32] -- folder id used when receiving data from the mailbox
* "outboxId" : byte[32] -- folder id used when delivering data to the mailbox
`briarSupports` is a list of Mailbox versions that this Briar instance supports (can communicate with). It must not be empty. Each element is a list with 2 elements: `maj` (int), `min` (int).
`mailboxSupports` is a list of Briar versions that the mailbox supports. It must be empty if `properties` is empty (there is no mailbox). Each element is a list with 2 elements: `maj` (int), `min` (int).
### Validity policy
* An update is valid if it is well-formed.