Commit Graph

900 Commits

Author SHA1 Message Date
Torsten Grote 421b00517f Address review comments for MailboxApi 2022-01-07 09:51:29 -03:00
Torsten Grote 9f1757ccaf Remove concept of fatal permanent exceptions
All exceptions will just cause the request to be tried again with some backoff.
2022-01-03 14:12:21 -03:00
Torsten Grote d665fc17ec Add /status and /setup mailbox API call with tests 2022-01-03 14:10:44 -03:00
ialokim 5b27eb354c transactional versions of addPendingContact, getPendingContacts, getConversationId and respondToIntroduction 2021-12-16 17:21:57 +01:00
Torsten Grote 043a173828 Migrate OkHttp to bramble-core 2021-12-15 10:46:48 -03:00
akwizgran 5a39f9730f Merge branch 'non-default-bridges' into 'master'
Use non-default obfs4 bridges in Russia

See merge request briar/briar!1556
2021-12-13 13:34:19 +00:00
Torsten Grote 98bb8d4af1 Merge branch 'fix-database-locking' into 'master'
Use ReentrantLock as a lock (not a monitor) when marking DB as open.

See merge request briar/briar!1549
2021-12-13 11:48:28 +00:00
akwizgran 75cc19e578 Remove failing non-default bridge. 2021-12-13 11:47:03 +00:00
akwizgran aad87e6e98 Update default bridges from upstream. 2021-12-13 11:46:43 +00:00
Daniel Lublin f8b3d79813 Add methods to get StreamContext from tag, and mark it as recognised
Separate methods are needed to be able to restart reading from a stream
in the case of errors. Tag should be marked as recognised only after
successfully reading the stream.

Closes #2225
2021-12-10 15:23:30 +01:00
akwizgran 0a98566298 Merge branch '2190-mailbox-reset-retransmission-times' into 'master'
Resolve "Method for resetting retransmission times"

Closes #2190

See merge request briar/briar!1559
2021-12-09 12:11:54 +00:00
Daniel Lublin 93a03d7e15 Reset using a single db query 2021-12-09 12:55:01 +01:00
Daniel Lublin 3eb3dbde09 Add database method to reset retransmission times
Will be used to ensure messages are not stranded on a Mailbox, when such
is added, removed, or otherwise changed.

Closes #2190.
2021-12-09 11:10:50 +01:00
akwizgran fd56176450 Merge branch 'desktop-98-transactional' into 'master'
Add transactional versions of some API calls for Briar Desktop

See merge request briar/briar!1557
2021-12-08 11:08:47 +00:00
ialokim d29812f055 add transactional versions of some API calls 2021-12-07 20:39:55 +01:00
Torsten Grote 658ca8de21 Add MailboxSettingsManager methods for tracking pending uploads 2021-12-07 10:07:54 -03:00
akwizgran e0e2c0cc89 Add unit test. 2021-12-07 10:33:16 +00:00
akwizgran 114d80ad43 Use non-default obfs4 bridges in Russia. 2021-12-06 18:11:16 +00:00
akwizgran 93178d2f28 Merge branch '2171-store-time-of-last-connection-to-own-mailbox' into 'master'
Store time of last attempted and successful connections to own mailbox

Closes #2171

See merge request briar/briar!1547
2021-11-22 11:09:37 +00:00
akwizgran 2755d3f470 Merge branch '2169-store-own-mailbox-properties' into 'master'
Add mailbox settings manager

Closes #2169

See merge request briar/briar!1546
2021-11-22 11:09:03 +00:00
akwizgran 47085722da Return early if LifecycleManager#stopServices() is called twice.
This could happen if the app shuts down spontaneously (eg due to low memory) concurrently with a manual shutdown.
2021-11-17 15:38:44 +00:00
akwizgran 6c702bad0a Use ReentrantLock as a lock (not a monitor) when marking DB as open. 2021-11-17 15:03:58 +00:00
Torsten Grote 0dc2aba22f Remove old v2 onion code from TorPlugin 2021-11-17 10:54:49 -03:00
akwizgran 8ac6b0155b Store time of last attempted and successful connections to mailbox. 2021-11-17 10:49:00 +00:00
akwizgran 372810f48e Add mailbox settings manager. 2021-11-16 12:53:17 +00:00
Daniel Lublin 407ddad0a8 Make it package private 2021-11-15 12:59:57 +01:00
Daniel Lublin 1809be4656 Factor out onion address encoder to CryptoComponent 2021-11-15 12:59:56 +01:00
Sebastian Kürten e0f36ade92 Address review feedback 2021-11-03 16:32:17 +01:00
Sebastian Kürten a1f9e80e12 Inject Tor ports via annotated int parameters 2021-11-03 15:43:01 +01:00
Sebastian Kürten d4656df384 Make Tor ports configurable at runtime
Instead of using hard-coded values 59050 and 59051 for the Tor socks and
control ports, provide them via a TorPorts interface. This makes it possible
to pass the ports to a TorPortsImpl in modules. Hence it is possible to
configure the Tor port for different types of builds or via command line
options in case of briar headless or other clients using the core code.
2021-10-16 14:41:29 +02:00
Torsten Grote be9255029b Merge branch '2149-hotspot-detection' into 'master'
Use interface name to decide whether we're providing a wifi hotspot

Closes #2149

See merge request briar/briar!1521
2021-08-20 14:55:06 +00:00
akwizgran b1cc4fe006 Replace Spongy Castle with Bouncy Castle. 2021-08-16 15:38:36 +01:00
akwizgran d65afc519a Factor out shared code. 2021-08-16 12:00:42 +01:00
akwizgran 32cbdff532 Use interface name to decide whether we're providing a wifi hotspot. 2021-08-16 11:55:41 +01:00
akwizgran 8f392b4599 Use getLong() to avoid remote possibility of overflow. 2021-07-13 12:04:09 +01:00
akwizgran 92f58e9465 Increase max latency of removable drive plugin to 28 days. 2021-07-13 10:30:12 +02:00
akwizgran 387f7f1545 Check whether we have transport keys before trying to send data. 2021-07-13 10:30:12 +02:00
akwizgran d8230afae3 Reject old timestamps when deriving rotation mode keys. 2021-07-13 10:30:11 +02:00
Torsten Grote fe1c384aeb Always inform new observers about current state 2021-07-13 10:30:05 +02:00
Torsten Grote dc3ba3d8f0 Also test that messages arrive and activate keys 2021-07-13 10:30:01 +02:00
akwizgran 2dcecb2a46 Add method for checking whether contact supports transport. 2021-07-13 10:26:27 +02:00
akwizgran 0cc118c849 Add transport property to indicate support for removable drives. 2021-07-13 10:26:26 +02:00
akwizgran 802f64e309 Check whether system clock is reasonable at startup. 2021-07-13 10:26:26 +02:00
akwizgran 1f1ea8f3ed Add RemovableDriveManager method. 2021-07-13 10:26:25 +02:00
akwizgran 796cbcaf4b Add DB method for checking whether there's anything to send 2021-07-13 10:26:24 +02:00
akwizgran b60c129acf Update DB method that gets total size of messages to send. 2021-07-13 10:26:23 +02:00
akwizgran 852413b36a Use eager retransmission if the transport is lossy and cheap. 2021-07-13 10:26:23 +02:00
akwizgran 8be274dc4d Replace inner classes with lambdas. 2021-07-13 10:26:22 +02:00
akwizgran 9ac72296c7 Update SimplexOutgoingSession to support sending unacked messages. 2021-07-13 10:26:21 +02:00
akwizgran 1405f5954a Add database methods for sending unacked messages. 2021-07-13 10:26:21 +02:00