Commit Graph
100 Commits
Author SHA1 Message Date
akwizgran b6b15fe657 Only cache attachment items that include size. 2019-06-19 13:30:06 +01:00
akwizgran f3bbc7179e Move deletion of unsent attachments into task. 2019-06-19 13:30:06 +01:00
akwizgran 9abe32ab4b Refactor attachment code to reduce mutable state. 2019-06-19 13:30:06 +01:00
akwizgran d07b98eae1 Code cleanups, javadoc. 2019-06-19 13:30:05 +01:00
akwizgran 34583e6d2d Merge branch '1054-crash-scroll' into 'master'
Improve crash screen and reporter

Closes #1426, #1061, #1390, #1012, and #1054

See merge request briar/briar!1049
2019-06-18 16:47:02 +00:00
akwizgran 00705447ec Use feature flag to decide which version to advertise. 2019-06-18 13:39:01 +01:00
akwizgran 9095ccef85 Filter attachment URIs in controller. 2019-06-18 13:10:52 +01:00
akwizgran 3196204094 Send legacy private messages from headless app. 2019-06-18 13:03:50 +01:00
akwizgran 2bae639105 Upgrade messaging client to support attachments. 2019-06-18 13:03:49 +01:00
akwizgran f73d298752 Merge branch 'inject-feature-flags' into 'master'
Use injection to provide feature flags

See merge request briar/briar!1140
2019-06-18 11:51:09 +00:00
akwizgran 2a29d33303 Move private message creation off the crypto executor. 2019-06-18 12:14:10 +01:00
akwizgran 30e0be9f43 Merge branch '1580-show-snackbar' into 'master'
Show snackbar when there is no internet connection

Closes #1580

See merge request briar/briar!1139
2019-06-18 09:54:34 +00:00
akwizgran 3828d16971 Use injection to provide feature flags. 2019-06-18 10:52:21 +01:00
akwizgran a54eb64eb5 Merge branch '1468-reject-unsupported-images' into 'master'
Reject unsupported images

Closes #1468

See merge request briar/briar!1038
2019-06-17 16:39:26 +00:00
akwizgran f0cea28aeb Don't show a message for the offline state. 2019-06-17 13:45:22 +01:00
akwizgran 5a1caed89f Rename endpoints field. 2019-06-17 13:22:36 +01:00
akwizgran 22f5c42fc1 Resolve merge conflicts.
# Conflicts:
#   briar-android/src/main/res/values/strings.xml
2019-06-17 12:13:19 +00:00
akwizgran aab46040a5 Add comments for translators. 2019-06-17 13:12:11 +01:00
akwizgran 18fd238aa1 Merge branch '1580-strings-offline-state' into 'master'
Add string for pending contact offline state

See merge request briar/briar!1136
2019-06-17 11:12:50 +00:00
akwizgran 3a837b3c5a Resolve merge conflicts.
# Conflicts:
#   briar-android/src/main/res/values/strings.xml
2019-06-17 11:04:11 +00:00
akwizgran ac2597865c Merge branch '1587-version-negotiation' into 'master'
Add version negotiation to sync protocol

Closes #1587

See merge request briar/briar!1134
2019-06-17 10:54:39 +00:00
akwizgran 4a67cf3ce7 Don't cache default state when adding pending contact.
This can overwrite the initial state broadcast by the
rendezvous poller.
2019-06-17 10:22:08 +01:00
akwizgran b0e97d787f Add offline state for pending contacts. 2019-06-15 12:27:24 +01:00
akwizgran 0d8af780a3 Add strings for duplicate pending contacts. 2019-06-15 11:31:18 +01:00
akwizgran 9c20e6b333 Add string for pending contact offline state. 2019-06-15 11:04:22 +01:00
akwizgran ab14976c96 Add strings for warning when adding a contact is slow. 2019-06-15 11:01:09 +01:00
akwizgran ec3f821ba6 Update test expectations. 2019-06-13 17:17:50 +01:00
akwizgran 1d546da781 Store sync versions received from contacts. 2019-06-13 17:07:12 +01:00
akwizgran f2c951b70b Add DB methods for getting and setting sync versions. 2019-06-13 17:06:57 +01:00
akwizgran 1e259c100d Add sync versions column to contacts table. 2019-06-13 16:35:48 +01:00
akwizgran 3636aeba9a Use HyperSQL-compatible syntax in migration. 2019-06-13 16:34:20 +01:00
akwizgran 132e20a6ce Send versions record at start of each session. 2019-06-13 16:16:02 +01:00
akwizgran c228e5c219 Add versions record to sync protocol. 2019-06-13 16:16:02 +01:00
akwizgran ae1d1fc5a7 Add thread safety and null safety annotations. 2019-06-13 16:16:01 +01:00
akwizgran 3c8b8c39e1 Turn commonly used variables into fields. 2019-06-12 16:29:24 +01:00
akwizgran 8f839e2c30 Remove temporary messages at startup. 2019-06-12 15:21:48 +01:00
akwizgran da4b63f20f Clean up ValidationManagerImplTest. 2019-06-12 15:17:13 +01:00
akwizgran cd40e771d2 Allow messages to be marked as temporary. 2019-06-12 15:11:10 +01:00
akwizgran 1cf993484d Avoid unnecessary reloads. 2019-06-10 17:24:58 +01:00
akwizgran e810785fe2 Retry database tasks after signing in. 2019-06-10 15:51:20 +01:00
akwizgran 7ec826ccb7 Merge branch '1562-intent-router' into 'master'
Receive external intents through NavDrawerActivity

Closes #1562

See merge request briar/briar!1128
2019-06-10 14:20:06 +00:00
akwizgran 6519706599 Merge branch '1579-remove-pending-contacts-button' into 'master'
Show less obstrusive remove button for pending contacts

Closes #1579

See merge request briar/briar!1130
2019-06-08 09:44:35 +00:00
akwizgran 60eefbf3e0 Use named constants. 2019-06-07 11:54:44 +01:00
akwizgran a4a45efd43 Broadcast event when polling newly added contact. 2019-06-07 11:48:53 +01:00
akwizgran 208ae6a4b6 Show recently polled pending contacts as "connecting". 2019-06-07 11:42:48 +01:00
akwizgran fe1df6dafa Move pending contact events to rendezvous poller. 2019-06-07 11:42:48 +01:00
akwizgran 15d9ff1ebd Rename "connected" state to "connecting". 2019-06-07 11:42:10 +01:00
akwizgran dc741e988c Shorter description for "waiting for connection" state. 2019-06-07 11:42:10 +01:00
akwizgran ba19716e0f Don't broadcast disabled event whenever we close a socket. 2019-06-06 16:42:26 +01:00
akwizgran 41deff1bf3 Suppress redundant enabled/disabled events. 2019-06-06 16:42:26 +01:00
akwizgran 1ec3fa3ade Implement Tor rendezvous crypto. 2019-06-06 16:42:26 +01:00
akwizgran 64ae99bbce Handle corner cases such as removal during rendezvous. 2019-06-06 16:40:55 +01:00
akwizgran ed1cefa144 Use concurrent map for pending contact states. 2019-06-06 16:40:54 +01:00
akwizgran 23354d6568 Use predicates to match events. 2019-06-06 16:40:54 +01:00
akwizgran 1aa579a44f Add unit tests for pending contact state. 2019-06-06 16:40:54 +01:00
akwizgran 98191fb059 Add ContactManager support for pending contact states. 2019-06-06 16:40:54 +01:00
akwizgran 71b1f99b56 Use regular poll task for expiry. 2019-06-06 13:45:00 +01:00
akwizgran ea228164dc Check that poller instance isn't reused. 2019-06-06 12:11:31 +01:00
akwizgran 4b5ad9ace4 Make test expectations modular. 2019-06-06 12:11:31 +01:00
akwizgran 6f285c5b0a Transfer pending contact alias to contact. 2019-06-05 17:48:02 +01:00
akwizgran bf39c30d24 Don't call setValue() on a background thread. 2019-06-05 17:45:12 +01:00
akwizgran 7439e5579f Let plugins know if we're Alice or Bob. 2019-06-05 11:23:56 +01:00
akwizgran 4452dacc94 Make RendezvousCrypto package-private. 2019-06-05 11:01:28 +01:00
akwizgran 0579157010 Include protocol version in rendezvous key derivation. 2019-06-05 10:59:21 +01:00
akwizgran 3dbd0b80aa Make rendezvous constants package-private. 2019-06-05 10:58:12 +01:00
akwizgran 3863df3c1f Poll pending contact immediately when added. 2019-06-05 10:44:08 +01:00
akwizgran 08a5b8393f Add unit test for starting rendezvous poller. 2019-06-05 10:44:07 +01:00
akwizgran 92dea21c67 Run commit actions in unit tests. 2019-06-05 10:44:07 +01:00
akwizgran 82a52638cf Derive rendezvous key from static master key. 2019-06-05 10:44:07 +01:00
akwizgran a38113e862 Add rendezvous poller. 2019-06-05 10:44:07 +01:00
akwizgran 7fd8ad65be Make RendezvousEndpoint closeable. 2019-06-05 10:44:06 +01:00
akwizgran ce9c7cb32a Add requireNull() utility method. 2019-06-05 10:44:06 +01:00
akwizgran 5d2252ebda Add method for deriving rendezvous key. 2019-06-05 10:44:06 +01:00
akwizgran 3820d7413c Rename rendezvous handler to endpoint. 2019-06-05 10:44:06 +01:00
akwizgran ab90e1de04 Pass incoming connection handler to plugins. 2019-06-05 10:44:05 +01:00
akwizgran c536782e01 Remove redundant use of IO executor. 2019-06-04 14:23:47 +01:00
akwizgran 9ffd1ec2c2 Unregister connection if sending stream header fails. 2019-06-04 14:20:57 +01:00
akwizgran 0951508af7 Define PROOF_BYTES as MAC_BYTES. 2019-06-04 12:38:21 +01:00
akwizgran 34a5b69100 Reuse TransportCrypto#isAlice(). 2019-06-04 12:21:17 +01:00
akwizgran d939fe80bd Explicitly check length of proof of ownership. 2019-06-04 12:17:10 +01:00
akwizgran 4ea8a4732c Fix race conditions in ForumSharingIntegrationTest. 2019-06-04 11:57:39 +01:00
akwizgran d3c7ecdef4 Use static comparison method. 2019-06-03 18:02:19 +01:00
akwizgran 4d8e0baeb4 Rewrap a line. 2019-06-03 17:58:31 +01:00
akwizgran 0b764a01dd Use larger buffer in test connections to prevent deadlock. 2019-06-03 17:55:35 +01:00
akwizgran f95bb9b28e Add integration test for new connection manager methods. 2019-06-03 17:55:35 +01:00
akwizgran 8f21e07840 Add rendezvous connection support to connection manager. 2019-06-03 17:52:43 +01:00
akwizgran eed8d25120 Decouple HandshakeManager from ContactExchangeManager. 2019-06-03 17:44:38 +01:00
akwizgran 89cbdc824c Add integration test for handshaking with pending contact. 2019-06-03 15:36:28 +01:00
akwizgran 4640651714 Add integration test for converting pending contacts. 2019-06-03 15:36:27 +01:00
akwizgran af8b7f1130 Implement getHandshakeLink(). 2019-06-03 15:36:27 +01:00
akwizgran 643270e247 Add integration test for ContactExchangeManager. 2019-06-03 15:36:24 +01:00
akwizgran 24f1b7eeca Implement handshake manager. 2019-06-03 15:35:53 +01:00
akwizgran 60155f146a Add contact exchange method for pending contacts. 2019-06-03 15:35:53 +01:00
akwizgran 7c3f2c0bed Add test implementation of DuplexTransportConnection. 2019-06-03 15:35:00 +01:00
akwizgran 85a1fd2caa Convert BriarIntegrationTest to use test reader and writer. 2019-06-03 15:34:59 +01:00
akwizgran f8d240a320 Test stream reading and writing at a higher level. 2019-06-03 15:34:59 +01:00
akwizgran 5860c723de Remove unused test module. 2019-06-03 15:34:59 +01:00
akwizgran 33d35148d8 Run briar-headless tests when running all tests. 2019-06-03 15:34:17 +01:00
akwizgran 0e55b06c0a Provide SOCKS module for headless app, remove reporting. 2019-06-03 15:34:17 +01:00
akwizgran d964f06de1 Use default methods for easier maintenance. 2019-06-03 15:34:16 +01:00