Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
briar
briar
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 675
    • Issues 675
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 11
    • Merge Requests 11
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • briar
  • briarbriar
  • Issues
  • #320

Closed
Open
Opened Apr 25, 2016 by Torsten Grote@groteOwner
  • Report abuse
  • New issue
Report abuse New issue

Design Protocol for Sharing Forums

The protocol will look like a simpler version of the introduction protocol, with two parties per session, and messages for invite/accept/decline/abort. (if you share a forum with more than one contact we can just create one session per contact, there's no reason to tie them together.)

1: INVITATION - This is send by the sharer to one of her contacts. The content is a BDF list.

  • (int) The type of the message, here 1
  • (raw) SessionId chosen by the sharer
  • (string) name of the forum
  • (raw) salt to uniquely identify this forum
  • (string) optional invitation message

2: ACCEPT RESPONSE - This should be sent by contacts that received a sharing invitation. The content is a BDF list with these elements:

  • (int) The type of the message, here 2
  • (raw) SessionId must match the SessionId of an unanswered invitation.

3: DECLINE RESPONSE - This should be sent by contacts that received a sharing invitation and do not want to add the forum. The content is a BDF list with these elements:

  • (int) The type of the message, here 3
  • (raw) SessionId must match the SessionId of an unanswered invitation.

4: LEAVE - This should be send by a contact that is unsubscribing from the forum. The content is a BDF list with two elements:

  • (int) The type of the message, here 4
  • (raw) SessionId must match the SessionId of a previous (un)answered invitation.

5: ABORT - This should be send by a contact that encountered an error, so that it can not complete the protocol. The content is a BDF list with two elements:

  • (int) The type of the message, here 5
  • (raw) SessionId must match the SessionId of an unanswered invitation.

A successful run of the protocol would look like this:

forum-sharing

Sharer

sharer-state-machine

sharer-state-machine.odg

Invitee

invitee-state-machine

invitee-state-machine.odg

Arrows that have no label stand for 'all other actions'.

It should be documented in the wiki as well: https://code.briarproject.org/akwizgran/briar/wikis/ForumSharingClient

This is a subtask of Issue #322 (closed).

Assignee
Assign to
Milestone C
Milestone
Milestone C (Past due)
Assign milestone
Time tracking
None
Due date
None
Reference: briar/briar#320