akwizgran
5dc460851b
Remove redundant logging.
2020-06-26 15:33:37 +01:00
akwizgran
648f26542c
Simple connection limiter that closes connections cleanly.
2020-06-26 10:57:08 +01:00
akwizgran
7736a3b6fc
Use separate methods for registering incoming and outgoing connections.
2020-06-26 09:59:03 +01:00
akwizgran
78d7fc2106
Fix bug in reporting of connection state, add regression tests.
2020-06-02 12:00:06 +01:00
akwizgran
6eb77465f6
Don't try to reconnect if the connection was closed cleanly.
2020-06-01 14:49:55 +01:00
akwizgran
35d1b406f7
Refactor transport preferences.
2020-06-01 14:49:55 +01:00
akwizgran
2add63657e
Inner class can be static.
2020-06-01 14:49:55 +01:00
akwizgran
d3751fbead
Don't interrupt connections until priority is set.
...
This maintains compatibility with older peers that don't know about
priorities or transport preferences and will try to replace any
connections we close.
2020-06-01 14:49:55 +01:00
akwizgran
4aaa8c3b93
Don't poll if already connected via a better transport.
2020-05-25 17:47:33 +01:00
akwizgran
7d6b65913a
Combine connection chooser with connection registry.
2020-05-25 16:42:01 +01:00
akwizgran
36747acac1
Extract better and worse transports from preferences.
2020-05-25 14:47:34 +01:00
akwizgran
e8dbc00712
Refactor connection registry implementation.
2020-05-25 14:33:35 +01:00
akwizgran
d3d7212b08
Add registry method for deciding which contacts to poll.
2020-05-13 17:55:05 +01:00
akwizgran
2919657b4a
Add unit tests for connection chooser.
2020-05-13 15:56:07 +01:00
akwizgran
0c338b362e
Add InterruptibleConnection interface for easier testing.
2020-05-13 15:43:07 +01:00
akwizgran
8dd993dd9d
Interrupt connections outside the lock.
2020-05-13 10:24:27 +01:00
akwizgran
1b2b50d91b
Exchange priority records and close redundant connections.
2020-05-12 21:36:58 +01:00
akwizgran
ee9c771045
Add priority record for choosing between redundant connections.
2020-05-12 21:36:58 +01:00
akwizgran
9e6d67f13d
Handle interrupts that occur before the outgoing session starts.
2020-05-12 21:36:57 +01:00
akwizgran
dd4aa67643
Refactor connection creation back into manager.
2020-05-12 21:27:43 +01:00
akwizgran
79482d5e3a
Move connection management to its own package.
2020-05-12 17:36:35 +01:00
akwizgran
ee0bf7218c
Move some duplicated code into utility methods.
2020-05-12 17:25:55 +01:00
akwizgran
c1101c7fe1
Factor inner classes out of ConnectionManagerImpl.
2020-05-12 17:08:04 +01:00
Torsten Grote
708452713d
Merge branch '1712-detect-dead-bluetooth-connections' into 'master'
...
Detect and close dead Bluetooth connections
See merge request briar/briar!1246
2020-05-11 15:55:07 +00:00
akwizgran
c80d3196af
Use milliseconds for timing.
2020-05-11 15:42:23 +01:00
akwizgran
c4273d22ed
Delegate all other methods to wrapped InputStream.
2020-05-08 16:22:46 +01:00
akwizgran
0281eec0da
Add unit test for TimeoutInputStream.
2020-05-08 16:22:46 +01:00
akwizgran
d3fd309609
Only check timeouts when we have some streams to monitor.
2020-05-08 16:22:46 +01:00
akwizgran
f2f278c393
Add timeout monitor for Bluetooth connections.
2020-05-08 16:22:46 +01:00
akwizgran
e204d5a996
Don't count connections twice.
2020-05-08 15:17:27 +01:00
akwizgran
876efee1a8
Use keepalives to detect dead connections.
2020-05-08 14:21:41 +01:00
akwizgran
fb918457d4
Use constants for metadata keys.
2020-04-29 15:37:21 +01:00
akwizgran
7320099494
Also store properties discovered from outgoing connections.
...
This is useful when adding a Bluetooth address is discovered while
adding a contact.
2020-04-28 17:56:01 +01:00
akwizgran
346bec94e8
Discover contacts' BT addresses from incoming connections.
2020-04-28 17:45:17 +01:00
Torsten Grote
9eee58657e
Merge branch '1696-keystore-crash' into 'master'
...
Show a dialog instead of crashing if a hardware-backed key can't be loaded
Closes #1696
See merge request briar/briar!1233
2020-03-12 12:12:42 +00:00
akwizgran
ed50582e27
Show a dialog if the DB key can't be decrypted due to a keystore error.
2020-02-25 15:00:49 +00:00
akwizgran
618ab1f1ec
Don't infer anything from existence of (possibly empty) DB directory.
2020-02-24 17:51:59 +00:00
akwizgran
61db5d1b04
Make bit-twiddling code more readable.
2020-02-19 09:52:13 +00:00
akwizgran
b3d4012527
Use network prefix length to determine which addresses are connectable.
2020-02-18 11:22:29 +00:00
Torsten Grote
60172331ee
Merge branch 'ipv4-link-local' into 'master'
...
Add support for IPv4 link-local addresses
See merge request briar/briar!1229
2020-02-17 12:42:01 +00:00
akwizgran
ed13cbca6a
Add support for IPv4 link-local addresses.
2020-02-17 11:42:13 +00:00
akwizgran
49cb1d0612
Choose port in advance when providing wifi access point.
2020-02-14 16:56:00 +00:00
akwizgran
c61c9bbc02
Refactor Android-specific code out of bramble-core.
2020-01-10 17:41:10 +00:00
akwizgran
f650b2236e
Catch any Exception when generating stored key.
2020-01-10 16:15:56 +00:00
akwizgran
72a391b506
Break out of loop after generating key.
2020-01-10 12:22:47 +00:00
akwizgran
f76d08c19a
Use StrongBox on API 28+ if available.
2020-01-09 15:18:58 +00:00
akwizgran
c11d09a885
Re-encrypt the DB key with the stored key.
2020-01-09 14:45:32 +00:00
akwizgran
d7b05dcba0
Add javadocs.
2020-01-09 14:45:32 +00:00
akwizgran
4d3c1b4fd2
Use Android keystore for encrypting DB key.
...
Only for new accounts on API 23+.
2020-01-09 14:45:32 +00:00
akwizgran
9305532079
Enable private message deletion in release builds.
2020-01-07 12:43:10 +00:00