mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-11 18:29:05 +01:00
Update Transport Properties Client
@@ -1,31 +1 @@
|
||||
The transport properties client is a [BSP client](https://code.briarproject.org/briar/briar-spec/blob/master/protocols/BSP.md) that synchronises transport properties between pairs of devices. Transport properties describe how to connect to a device over various transports.
|
||||
|
||||
### Identifier
|
||||
|
||||
The client's identifier is `org.briarproject.bramble.properties`. The major version is 0.
|
||||
|
||||
### Groups
|
||||
|
||||
The client uses a separate BSP group for communicating with each contact. The [group descriptor](https://code.briarproject.org/briar/briar-spec/blob/master/protocols/BSP.md#23-groups) is a [BDF list](https://code.briarproject.org/briar/briar-spec/blob/master/BDF.md) containing the unique IDs of the contacts' identities, sorted in ascending order as byte strings.
|
||||
|
||||
The client also uses a group with an empty descriptor for storing local transport properties. This group is not shared with any contacts.
|
||||
|
||||
### Message types
|
||||
|
||||
**UPDATE** - The message body is a BDF list with three elements: `transportId` (string), `version` (int), and `properties` (dictionary). `transportId` and `properties` are supplied by the transport plugin. The keys and values of `properties` are strings. `version` is incremented whenever the properties change.
|
||||
|
||||
### Validity policy
|
||||
|
||||
* An update is valid if it is well-formed.
|
||||
|
||||
### Storage policy
|
||||
|
||||
* In the groups shared with contacts:
|
||||
* For each transport, the local message with the highest version is stored.
|
||||
* For each transport, the remote message with the highest version is stored.
|
||||
* In the unshared group, the local message with the highest version is stored.
|
||||
|
||||
### Sharing policy
|
||||
|
||||
* In the groups shared with contacts, all local messages are shared.
|
||||
* In the unshared group, no messages are shared.
|
||||
Moved to https://code.briarproject.org/briar/briar-spec/blob/master/clients/Transport-Properties-Client.md
|
||||
Reference in New Issue
Block a user