Sarah Jamie Lewis
d84735cec7
Allow Explicit Server Resyncing
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is failing
Details
2021-06-02 11:13:08 -07:00
Sarah Jamie Lewis
08bb2f907f
Replace old GroupID with new Dervied GroupID
...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
As we move towards a group model that allows for different management
constitutions we need to deprecate our old group security model that relied
on "owners" and transitive signing/verification checks.
This new model derives GroupID from the GroupKey and the GroupServer
binding it both. This allows participants to know if a message was
intended for the same group they are apart of (as GroupID is included
in every encrypted/signed message to Groups) while allowing more dynamic
management protocols to be built on top of the (now agnostic) group protocols.
This PR also adds more validation logic to invites and provides the ValidateInvite
function to allow the UI to validate invites separately from processing them.
2021-05-14 11:26:04 -07:00
Sarah Jamie Lewis
6b0d9827fb
Prevent loading a nil tapir service before tor has started
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build was killed
Details
2021-05-10 17:05:03 -07:00
Sarah Jamie Lewis
e7fc228cfa
Don't inline group server connections...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-10 16:37:20 -07:00
Sarah Jamie Lewis
00dc2e60e5
Wire up SendMessageToGroupError
...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
(Also makes this flow much more efficient by including groupId in the round trip)
2021-05-08 12:04:06 -07:00
Sarah Jamie Lewis
0f0b91fc98
Make contact retry more responsive in the optimisitic case
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-07 16:16:22 -07:00
Sarah Jamie Lewis
9f20802a1d
Actually use the last known signature for fetching
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-07 15:34:48 -07:00
Sarah Jamie Lewis
678c820db2
Handle Server Disconnections, and Partial Syncing
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-05-07 15:27:44 -07:00
Sarah Jamie Lewis
bea58b5ba4
Groups Cleanup
2021-05-04 12:00:06 -07:00
Sarah Jamie Lewis
361d7befd1
Disable Automatic Peer Invites for Now
2021-05-04 12:00:06 -07:00
Sarah Jamie Lewis
b4f9decdf2
Upgrade Tapir, Log, Connectivity
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is failing
Details
2021-04-08 18:23:26 -07:00
Sarah Jamie Lewis
296dc22b8e
API for Block/Allow Unknown Connections
...
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
This was previously an application level setting handled by the UI. This commit
pushes back that functionality to the profile.
2021-04-06 14:22:36 -07:00
Sarah Jamie Lewis
2832d17cb9
Deep Copy Events in the Event Bus to Prevent Map Concurrency Issue
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-03-24 16:07:39 -07:00
Sarah Jamie Lewis
86250564f0
Make ConnectionState a non-static map + Fix PeerApp for Connection-only Events
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/pr Build is passing
Details
2021-03-19 14:23:24 -07:00
Sarah Jamie Lewis
a1b2d8530f
Integrate Group Name into Invite
2020-12-16 21:41:24 -08:00
Sarah Jamie Lewis
62866da84c
Correctly Handle Messages from Unknown Peers
2020-11-12 14:00:18 -08:00
Sarah Jamie Lewis
f6888b47f1
Fixing up Server APIs
2020-11-04 13:16:35 -08:00
Sarah Jamie Lewis
4d7b155256
Add Leave Server Event
2020-10-29 14:52:39 -07:00
Sarah Jamie Lewis
d5fb0a5793
Tapir UI Integration First Pass
2020-09-21 14:41:40 -07:00
Sarah Jamie Lewis
0550a71244
Tapir Server Refactor
2020-09-21 14:41:40 -07:00
Dan Ballard
e91e892eef
Adding new authorization level to peers; porting Blocked status to authorization; removing trusted; securing engine/peerapp message processing around authoriztion
2020-06-16 11:34:15 -07:00
Dan Ballard
dc3df531dd
peer getVal/retVal messages and functions and handling
2020-03-27 11:51:52 -07:00
Dan Ballard
12089d9fa4
migrate to stand alone log and connectivity packages
2020-02-10 18:36:28 -05:00
Dan Ballard
258cf84e68
fixing race conditions; removing peer.GetProfile as unsafe
2020-02-04 20:03:43 -05:00
Sarah Jamie Lewis
8f85f49404
Initial pass at race condition fixes
2019-11-08 13:25:13 -08:00
Dan Ballard
77d26d3877
profile and peer messaging refactor. Profiles once again store timelines for peers, should be used as canonical timeline by frontend UI
2019-10-21 13:56:07 -07:00
Dan Ballard
df420034ea
make contact retry plugin acn connection state aware; make contact retry plugin do groups; remove connectionManager bad retry logic; allow querringing of ACN status
2019-09-27 15:29:19 -07:00
Dan Ballard
15582c7e79
Rework group invite workflow: delete cwtchPacket references as no longer needed. Remove more events from being default handled by Peer (but allow them for some usecases still (testing, simple apps).
2019-09-20 11:06:05 -07:00
Sarah Jamie Lewis
6efde0289d
Separate Initial Peer Requests and Retry Events
2019-08-24 13:13:53 -07:00
Sarah Jamie Lewis
38542751c8
Allowing Blocking of Unknown Contacts
2019-08-21 13:28:48 -07:00
Dan Ballard
bd75e44555
make event.Queue use internal infinite channels; make event.Manager not use failable writes
2019-08-14 14:00:04 -07:00
Sarah Jamie Lewis
01ec46a97c
Upgrading to Tapir Identity
2019-08-08 12:51:41 -07:00
Sarah Jamie Lewis
3c67c47bb0
Add support for unblocking peers
2019-08-07 12:07:57 -07:00
Dan Ballard
695a622963
adding delete contact and group support
2019-08-07 11:35:08 -07:00
Sarah Jamie Lewis
4a08331675
Issue a PeerAuth event when attempting to peer to an existing authed connection
2019-08-07 11:14:31 -07:00
Sarah Jamie Lewis
e7f6dc3fa1
Explicitly Send Peer Disconnected Event when Blocking
2019-08-06 19:09:52 -07:00
Sarah Jamie Lewis
f08af1289f
Fixing blockcing nil pointer
2019-08-06 16:52:52 -07:00
Sarah Jamie Lewis
e2ee27cc4d
Adding Block Conditional on Peer With Onion
2019-08-06 15:29:17 -07:00
Sarah Jamie Lewis
821e64c360
Additional Tapir Improvements
2019-07-30 16:50:20 -07:00
Sarah Jamie Lewis
29c5214552
Adding RemotePeer Param to Ack Events
2019-07-29 14:01:58 -07:00
Sarah Jamie Lewis
37b9c72abb
Review Board Comments #2
2019-07-29 12:49:23 -07:00
Sarah Jamie Lewis
815ec2565b
Listen Error
2019-07-29 12:49:23 -07:00
Sarah Jamie Lewis
101cce532f
Fixing shutdown flow
2019-07-29 12:49:23 -07:00
Sarah Jamie Lewis
71dd298a91
Review Board Comments
2019-07-29 12:49:23 -07:00
Sarah Jamie Lewis
bc226173e4
Fixing Rebase Artifacts
2019-07-29 12:49:23 -07:00
Sarah Jamie Lewis
4c16ec379f
First cut of automatic acknowledgements and protocol contexts
2019-07-29 12:49:23 -07:00
Sarah Jamie Lewis
6e64f65962
First cut of Tapir Integration
2019-07-29 12:49:23 -07:00
Dan Ballard
8c16210407
Add windows stub for pipeBridge to fix windows build; fix goland error arround ConnectionState[Type]
2019-07-26 15:34:21 -07:00
Dan Ballard
0465973a78
add app level functionality to reload from service
2019-07-19 20:08:00 -07:00
Sarah Jamie Lewis
b7577d9fe3
Removing non-deterministic sleeps, replace with channel wait
2019-07-10 13:59:58 -07:00
Dan Ballard
9f52e5de7b
fixes to pipe bridge: it base64 encodes data of messages before sending them over to preserve binary data; fixed a lack of wiring for ipcBridge in service
2019-07-05 17:51:10 -07:00
Dan Ballard
e1d6dd7253
adding named pipe IPC pipe for use with app client/service; some adjustments to app client/service based on usage by UI; bug fixes: groupInvite json over ipc pipe using json was bugged, 'fixed' with base64 encoding; fixed race condition with peer server connection creation
2019-06-24 18:57:31 -07:00
Dan Ballard
04dd8fa89c
App Client/Service: new IPCBridge type and test gochan impl; new IPC using eventManager; new App Client and Service; some app api changes and a few more events (NewPeer) and errors (Loading errors)
2019-06-11 10:43:03 -07:00
Dan Ballard
0c4bbe9ad1
Refactor: engine and peer decoupled, engine and eventbus now per peer
...
and stored top level in app. Storage has read only mode. Peer and group
state now event based and stored in profiles.
2019-05-22 12:54:47 -07:00
Dan Ballard
1e1cbe6cd8
make engine a interface and private struct, private most methods
2019-05-15 13:07:23 -07:00
Dan Ballard
2b2dcb9f6b
make cwtch responsible for firing joinServer after joining a group; fire a fetch done event
2019-04-23 13:31:57 -07:00
Sarah Jamie Lewis
45b1a10fff
Merge branch 'backoff-retry' of dan/cwtch into master
2019-03-29 13:43:49 -07:00
Dan Ballard
7640fc1c0d
graceful backoffs on connection retries
2019-03-25 13:11:18 -07:00
Sarah Jamie Lewis
6697c73222
Improving peer error handling
2019-03-03 18:10:23 -08:00
Sarah Jamie Lewis
711e46ce10
Adding Error Tracking to Group Sends
2019-02-20 13:01:01 -08:00
Sarah Jamie Lewis
f056407cd0
Sending Message to an Offline Peer no longer blocks
2019-02-14 13:08:32 -08:00
Dan Ballard
8959382449
on manageServerConnection, always start a new one (fetch) and the replace existing if, and close
2019-02-11 17:09:47 -08:00
Sarah Jamie Lewis
2239463512
ineffassign and misspell
2019-01-28 12:12:33 -08:00
Dan Ballard
2db7385ce0
Merge branch 'update-libricochet' of cwtch.im/cwtch into master
2019-01-23 21:11:10 +00:00
Sarah Jamie Lewis
9e055f1ee0
Updating libricochet to latest
2019-01-23 12:50:53 -08:00
erinn
dcc65f0ffe
iterating on eventbus fields
2019-01-22 11:11:25 -08:00
Sarah Jamie Lewis
ebe8db6c31
Blocking now kills listening connections too
2019-01-21 12:42:11 -08:00
Sarah Jamie Lewis
dc6cd56098
Defining Event Fields as Constants
2019-01-21 12:22:43 -08:00
Sarah Jamie Lewis
16c8095e5f
Adding Timestamp to Events
...
Also starting to define common event fields to prevent type confusion / spelling issues
2019-01-21 11:56:35 -08:00
Sarah Jamie Lewis
849deb14dc
Autoblock Known Blocked Peers
2019-01-08 10:58:01 -08:00
Sarah Jamie Lewis
c3d797b2e1
Protocol Engine Refactor
2019-01-07 13:24:08 -08:00
Sarah Jamie Lewis
d37447f320
Fixing #118 - Adding an initial message to group setup
2018-09-21 11:07:23 -07:00
Sarah Jamie Lewis
2981cb4dac
Formatting & Adding to Quality
2018-06-29 12:20:07 -07:00
Sarah Jamie Lewis
22aebae0e5
Actually implementing correct signature construction
2018-06-23 09:23:39 -07:00
Dan Ballard
cf80207f77
rename go-ricochet to libricochet-go
2018-06-23 09:15:36 -07:00
Dan Ballard
583a8013d6
fixes to pass go vet and inclusion in tests script
2018-06-13 14:24:47 -07:00
Sarah Jamie Lewis
76b6df4beb
Fixup integ testing
2018-06-09 12:11:59 -07:00
Dan Ballard
9bf0fdec56
adding fetch checks to integration test with late joining user carol.
...
protocol drop 'groupMessages' field
peer/sever fetch channel reworked to send series of groupMessage rather than groupMessages blob in order to not blow up a ricochet packet
minor doc fixes
change a few fmt to log
fix class variable name (cplc -> cpsc) in cwtchpeer listen channel
PeerPeerConnection.Close close Conn rather than break to catch goroutine leak
2018-06-07 17:07:40 -07:00
Sarah Jamie Lewis
a4846df519
Rename
2018-05-28 13:48:56 -07:00
Sarah Jamie Lewis
6de91969ae
Adding padding and length stuff
2018-05-28 10:44:47 -07:00
Sarah Jamie Lewis
ec0c341bb1
Fixing some race conditions, adding more error checking
2018-05-09 12:09:00 -07:00
Sarah Jamie Lewis
f1d0a8e900
Fixing up messaging to use a proper ordering of messages based on timeline and previous hash.
...
This isn't perfect, but under normal conditions should prevent malicous server reordering. Still need a second order function
2018-04-02 14:10:29 -07:00
Sarah Jamie Lewis
914be9e46a
Lots of peerand serverstuff
2018-03-30 14:16:51 -07:00
Sarah Jamie Lewis
c29186979f
Introducing fix for group owner impersonation bug
2018-03-15 13:53:22 -07:00
Sarah Jamie Lewis
9a4693c223
fixing go lint issues
2018-03-15 09:33:26 -07:00
Sarah Jamie Lewis
b43aa55b44
Refactoring, fixing up some issues
2018-03-14 15:23:35 -07:00
Sarah Jamie Lewis
d47b165bab
Updating Group Chat invite, fixing test errors
2018-03-14 15:03:53 -07:00
Sarah Jamie Lewis
5f94e82347
PeerServerConnection Definition and Tests
2018-03-10 13:26:19 -08:00
Sarah Jamie Lewis
487ce6d2da
fmt and spamguard
2018-03-09 13:02:42 -08:00
Sarah Jamie Lewis
5d7bdce118
Squah commit
2018-03-09 12:44:13 -08:00