- Mar 07, 2016
-
-
akwizgran authored
When more than one invitation socket is opened, Alice should pick which one to use and Bob should use whichever one Alice picks. This fixes a race condition where each party picked a different socket and closed the other.
-
- Mar 04, 2016
-
-
akwizgran authored
BDF improvements * Change the semantics of the BdfList/Dictionary methods with default values so they return the default value if the value is missing, or throw an exception if it the value's present but has the wrong type - this is more useful for validators, which have to deal with optional values without accepting values of the wrong type * Reuse BdfReader/Writer for MetadataParser/Encoder so we don't have two implementations of BDF See merge request !117
-
akwizgran authored
-
akwizgran authored
-
- Mar 02, 2016
-
-
akwizgran authored
-
- Feb 29, 2016
-
-
akwizgran authored
-
akwizgran authored
-
akwizgran authored
Helper class to reduce client boilerplate * Renamed BdfReader methods for consistency with BdfList/BdfDictionary * Added readList() and readDictionary() methods to BdfReader * Added ClientHelper to reduce boilerplate when converting messages and metadata to and from BDF * Moved PrivateGroupFactory to the same package as ClientHelper See merge request !114
-
akwizgran authored
Unit tests for ValidationManagerImpl Unit test for the validation manager. I also changed the way the validation manager loads unvalidated messages - instead of using a single DB task to load all unvalidated messages, it loads a list of message IDs and then loads each message in a separate task. This prevents the DatabaseExecutor from being blocked by a long-running task if there are lots of messages to validate. See merge request !113
-
akwizgran authored
-
akwizgran authored
-
akwizgran authored
-
akwizgran authored
-
akwizgran authored
-
Torsten Grote authored
Add contact and transport keys in the same transaction This avoids a potential problem where the app crashes after adding the contact but before adding the transport keys, leaving the contact unusable. See merge request !112
-
akwizgran authored
-
akwizgran authored
Convert BDF types in lists and dictionaries See merge request !111
-
akwizgran authored
-
- Feb 26, 2016
-
-
akwizgran authored
-
akwizgran authored
-
akwizgran authored
-
akwizgran authored
Each task is added to the back of the executor's queue, allowing tasks from other callers to be interleaved.
-
akwizgran authored
-
akwizgran authored
This avoids a potential problem where the app crashes after adding the contact but before adding the transport keys, leaving the contact unusable.
-
akwizgran authored
-
- Feb 25, 2016
-
-
str4d authored
New polling logic for Tor. #250 Poll for outgoing connections each time the network is enabled, then disable polling once our hidden service descriptor has been published. If our contacts do the same, any contacts that are offline when we poll will connect to us when they come online. This should reduce bandwidth and battery usage. The idea comes from Ricochet: https://github.com/ricochet-im/ricochet/issues/68 Fixes #250. See merge request !103
-
akwizgran authored
If two contacts publish their descriptors simultaneously, they may both stop polling without retrieving each other's descriptors. Continue polling for 2 intervals after publishing the descriptor.
-
akwizgran authored
Poll for outgoing connections each time the network is enabled, then disable polling once our hidden service descriptor has been published.
-
- Feb 24, 2016
-
-
akwizgran authored
New polling logic for LAN. #252 Same approach as !104. Modified the poller to cancel any scheduled poll when pollNow() is called and randomise the next polling interval so plugins that call pollNow() at the same time don't end up polling in sync. Depends on !104. Fixes #252. See merge request !105
-
akwizgran authored
New polling logic for Bluetooth. #251 Increase the polling interval exponentially each time polling is unsuccessful, up to a maximum of 60 minutes. The interval is reset to 2 minutes whenever a connection is made and whenever Bluetooth is re-enabled. This should reduce battery usage when there are no contacts nearby. Fixes #251. See merge request !104
-
akwizgran authored
Try to use the real Bluetooth address on Android 6. #225 Fixes #225 until Google breaks the Settings.Secure workaround. See merge request !109
-
akwizgran authored
-
- Feb 23, 2016
- Feb 22, 2016
-
-
akwizgran authored
-
akwizgran authored
Same exponential backoff approach as Bluetooth.
-
akwizgran authored
The polling interval increases exponentially each time polling is unsuccessful, up to a maximum of 60 minutes. The interval is reset to 2 minutes whenever a connection is made and whenever Bluetooth is re-enabled.
-
- Feb 19, 2016