- May 11, 2016
-
-
Ernir Erlingsson authored
-
Ernir Erlingsson authored
-
Ernir Erlingsson authored
-
Ernir Erlingsson authored
-
Ernir Erlingsson authored
-
- May 10, 2016
-
-
akwizgran authored
Prevent old forum sharing messages from causing spurious exceptions.
-
- May 06, 2016
- May 04, 2016
-
-
Torsten Grote authored
It was possible that a malicious introducer sends new request with the same session ID that was used previously and thus causing introducees to have multiple states for the same session ID. This commits prevents that from happening and adds an integration test for that scenario. Also if an introducee removes an introducer, all past session states will be deleted from the database. For this, a test was added as well. Closes #371 Closes #372
-
Torsten Grote authored
This commit replaces the old ForumSharingManagerImpl with a new one which is based on state machines and the ProtocolEngine. There is a SharerEngine and a InviteeEngine that take care of state transitions, messages, events and trigger actions to be carried out by the ForumSharingManagerImpl. This is all very similar to the Introduction Client. The general sharing paradigm has been changed from sharing as a state to sharing as an action. Now the UI can allow users to invite contacts to forums. The contacts can accept or decline the invitiation. Also, the Forum Sharing Manger is notified when users leave a forum. Closes #322
-
Torsten Grote authored
-
Torsten Grote authored
-
- May 03, 2016
-
-
Torsten Grote authored
Methods for creating, adding and removing forums have been moved to the `ForumManager`. In order to still handle removing forums properly, a `RemoveForumHook` has been introduced. Methods for sharing forums with all current and future contacts have been removed along with the localGroup where this information was saved. The `ShareForumActivity` now has the proper label. The `SessionId` and the `ProtocolEngine` have been moved to the `clients` package. This addresses part of #322 and part of what has been discussed in #320.
-
- Apr 28, 2016
-
-
str4d authored
-
- Apr 27, 2016
-
-
str4d authored
-
- Apr 25, 2016
- Apr 21, 2016
-
-
akwizgran authored
-
Torsten Grote authored
* If the user has already declined, we don't show that the other introducee has declined as well. The backend doesn't have that information, so this is compatible with the principle of showing what we know. * If the user has already accepted or hasn't yet responded, we show the decline response in the private conversation with the introducer. If the user hasn't yet responded, we hide the accept/decline buttons in the introduction request message. Messages an introducee receives in a `FINISHED` state are now being ignored and deleted. Closes #295
-
str4d authored
-
- Apr 20, 2016
-
-
str4d authored
Will currently fail at runtime; requires a public key and a server onion.
-
akwizgran authored
-
akwizgran authored
-
Torsten Grote authored
* normal session where both introducees accept * normal session where the first introducee declines * normal session where the second introducee declines * one session where a contact is introduced to herself * one session where two identities of the same contact are introduced to each other This introduces a new IntroductionAbortedEvent to signal when the protocol was aborted. It is not yet used in the UI. It closes #276
-
Torsten Grote authored
* force decline when two of our own identities are introduced to each other * throw away introduction requests to the same identity (impossible to trigger from UI) Closes #284
-
- Apr 15, 2016
-
-
akwizgran authored
-
- Apr 14, 2016
-
-
Torsten Grote authored
This injects the IntroducerManager and the IntroduceeManger for easier testing
-
akwizgran authored
-
- Apr 12, 2016
-
-
Torsten Grote authored
(except refactoring of conversation item classes)
-
Torsten Grote authored
When devices' clocks are out of sync, it is possible that a response is shown before the request. This commit makes sure that the timestamp of responses is always later than the last message in the conversation. Some wording could be misunderstood to thing introductions were successful even though they were not. That has been clarified. A new database transaction was created when getting contacts and local transport properties. This has been changed to re-use the existing transaction. Also addresses minor issues found in review.
-
Torsten Grote authored
The code made the assumption that a session state can be identified by the unique session ID. However, when multiple identities from the same device are involved, there are two sessions with the same ID running on the device. Hence, a second identifying criteria has to be used to uniquely identify the correct session. Here, the ID of the group was chosen. Unfortunately, the session state can not be cached easily anymore leading to a small performance penalty when getting all messages for the UI.
-
- Apr 11, 2016
-
-
akwizgran authored
-