1715 Commits

Author SHA1 Message Date
Adam Babik
838acce91f
fix deadlock on starting discovery with custom AdvertiseAddr (#1363) 2019-01-25 19:17:08 +01:00
Andrea Franz
0e0c3cd859
add shhext.InitProtocolWithEncryptionKey (#1362)
* add shhext.InitProtocolWithEncryptionKey

* update test to avoid lint error
2019-01-25 11:31:51 +01:00
Pedro Pombeiro
6545c4a483 Lock packages to versions or revisions
https://www.pivotaltracker.com/story/show/163451198
2019-01-25 10:34:23 +01:00
Andrea Franz
929a5de757
Login with keycard (#1358)
* add InjectChatAccount to account manager

* add InjectChatAccount to Backend

* add comments to LoginWithKeycard

* add LoginWithKeycard test to lib

* fix export comment to avoid lint errors

* ensure wallet and chat keys are empty before injecting chat key

* rename InjectChatAccount to SetChatAccount

* add TestBackendInjectChatAccount

* stop node in TestBackendInjectChatAccount

* SetChatAccount doesn't return error

* add comment to InjectChatAccount

* fix account test
2019-01-24 16:44:46 +01:00
Dmitry
c8a616688c Add request with retries api call 2019-01-24 14:31:56 +02:00
Adam Babik
d20b5dc3b3
mailserver: build pruning into WMailServer (#1342)
MailServer pruning was implemented as a separate command but that required stopping a mail server and executing the command manually. This change builds pruning into MailServer and can be set using MailServerDataRetention in WhisperConfig.
0.20.0-beta.0
2019-01-23 14:32:45 +01:00
Dmitry
1a365a5140 Require BackupDisabledDataDir only if PFSEnabled is true 2019-01-22 16:56:35 +02:00
Pedro Pombeiro
0e48a022f0 Configure recipients for Gopkg.lock changes in PRs 2019-01-22 08:18:15 +01:00
Pedro Pombeiro
d8c57d3694 Configure recipients for Gopkg.lock changes in PRs 2019-01-21 16:20:50 +01:00
Andrea Maria Piana
2df5422337
Add backward compatibility for single bundle (#1355)
We change the protocol to accomodate publishing multiple bundles, in
order to propagate bundles for group chats and have a way to extend it
further.
This commit re-introduces backward compatibility for direct messages,
to be removed once that is not an issue anymore.
2019-01-21 12:33:18 +01:00
Andrea Maria Piana
ad51c019e8
Fix broken migration (#1354)
The migration from unencrypted->encrypted did not work properly, it was
deleting and re-creating the database. This correctly migrates the db.
2019-01-19 08:30:05 +01:00
Pedro Pombeiro
55b3f31318 Add SendDataNotification method (#1352) 2019-01-18 14:03:32 +01:00
Dmitry
aa09d854ca Prevent frequent requests with same topics 2019-01-18 14:52:33 +02:00
Andrea Franz
4939268edf
Unlock wallet and chat keys (#1346)
* select account decrypting wallet and chat keys

* adapt account tests to use chat and wallet account/keys

* fix tests using chat address

* changes after review

* fix status service e2e tests

* add account.Info struct returned when creating and recovering an account

* use s.EqualValues to compare recovered accounts

* return Info instead of *Info

* add both address and walletAddress to responses

* Update lib/types.go

Co-Authored-By: gravityblast <andrea@gravityblast.com>

* Update lib/types.go

Co-Authored-By: gravityblast <andrea@gravityblast.com>

* update comment to fix lint
2019-01-18 10:01:14 +01:00
Adam Babik
6e88828d76
bump version to 0.20.0-beta.0 2019-01-17 19:56:29 +01:00
Dmitry Shulyak
863d07f798 Accept status service config directly from json input (#1337) 2019-01-17 13:56:22 +01:00
Dmitry Shulyak
0b72aea56a Ensure that all discovery compoenents are set to nil on stop (#1351)
Previously we always tried to stop discovery if it was enabled according to
configuration. Now we check if it was started, because it can be started separataly from
a node.
2019-01-17 12:02:45 +01:00
Adam Babik
b394e912e3
Bump version to 0.19.0-beta.5 0.19.0-beta.5 2019-01-16 15:47:57 +01:00
Adam Babik
fd48ad8b29
geth: upgrade geth to 1.8.21 (#1350) 2019-01-16 15:42:00 +01:00
Andrea Maria Piana
68ac31b3b8
Bump version 0.19.0-beta.4 2019-01-14 13:11:14 +01:00
Andrea Maria Piana
61bbbdde58
Revert "Change NotifyUsers to allow only data JSON element. Part of status-im/status-react#6772" (#1347)
This reverts commit cddf2e1c6cdbdea77307eadac9f25af874e3d723.
2019-01-14 13:09:51 +01:00
Andrea Maria Piana
59426d628c
Migrate from nokey on ios to re-keyed (#1345) 2019-01-11 11:55:18 +01:00
Roman Volosovskyi :: Darkviolet Lightgreen Halcyon
d6216f1aa4 [slow sign in] Reduce number of kdf iterations for PDF database key (#1343)
`kdf_iter` parameter is reduced to 3200. This change is done because of
performance reasons, currently key derivation is too slow on some mobile
devices. The number of iterations before this commit is 64000, default
value in `sqlcipher` from version `3.0.0`.
fda4c68bb4/CHANGELOG.md (300---2013-11-05)

Implementation:
`sqlcipher_export` is used for migration, check out the link below
for details
https://www.zetetic.net/sqlcipher/sqlcipher-api/#sqlcipher_export
2019-01-11 11:12:23 +01:00
Adam Babik
8f2e347e4f
mailserver: refactor mailserver's rate limiter (#1341) 2019-01-10 17:07:16 +01:00
Adam Babik
a84dee4934
Release 0.19.0-beta.3 0.19.0-beta.3 2019-01-10 12:53:35 +01:00
Andrea Franz
06d4a99c09
add selected wallet and selected chat accounts (#1326)
* use keyStore.ImportExtendedKeyForPurpose when creating keys

* rename selectecAccount to selectedWalletAccount

* add selectedChatAccount

* update e2e test to check that injected whisper key is the chat public key

* update TestSelectedAccountOnRestart to check that chat key is used in whisper

* use chat account in api/backend

* update mocks

* temporarily update VERSION to build a release

* check that chat/wallet keys are the same in a different test

* add account test to check that wallet and chat keys are the same

* test only that the chat key is injected in whisper

* put back the right VERSION
2019-01-09 09:47:06 +01:00
Dmitry Shulyak
54022561f5
If rendezvous wasn't start or was already stopped ignore Stop call (#1340) 2019-01-09 09:40:07 +02:00
Adam Babik
944a35a11b
Validate Whisper DataDir to be relative to the main DataDir (#1335) 2019-01-04 12:44:01 +01:00
Roman Volosovskyi :: Darkviolet Lightgreen Halcyon
66fb99d5d6 Start discovery after sending "node.ready" signal (#1333)
We would like to optimize sending "node.ready" signal and do it as soon as possible. The peers discovery protocol can be started after the signal is sent.
2019-01-02 19:57:36 +01:00
Adam Babik
66daa88cf1
Update RELEASING.md 2019-01-02 18:57:20 +01:00
Adam Babik
aefc62dfc1
Release 0.19.0-beta.2 0.19.0-beta.2 2019-01-02 18:55:41 +01:00
Dmitry Shulyak
f151be54c6
Close both sides of the stream when client is done with request (#1313)
Libp2p keeps stream open if EOF wasn't seen and we called Close method.
The most important change is that reader now uses FullClose util, that will
wait for EOF character before closing the stream.
2019-01-02 09:45:52 +02:00
Adam Babik
fa97e6927d
Add CreateAccount RPC function (#1330) (#1334) 2018-12-28 12:37:22 +01:00
Andrea Maria Piana
30dbacdcca
Initialize public key (#1332) 2018-12-24 08:18:27 +01:00
Adam Babik
697c72ffdf
Remove "Releasing from a branch" in RELEASING.md
Instead, use "Custom build" instruction.
2018-12-21 15:56:52 +01:00
Adam Babik
7b3da85352
Update RELEASING.md 2018-12-21 15:15:06 +01:00
Andrea Maria Piana
3292538b41
Allow multiple bundles, change n devices & bundle refresh (#1331)
Change to support sending multiple bundles, as needed for group chats,
limit number of devices to 3 as already done in the UI and refresh
bundle daily.
2018-12-21 11:07:25 +01:00
Adam Babik
5e1f4631b1
Release 0.19.0-beta.1 0.19.0-beta.1 2018-12-20 11:06:35 +01:00
Adam Babik
08931fb761
Handle gracefully RPC calls when node is stopped (#1329) 2018-12-20 09:31:17 +01:00
Adam Babik
b1f9030177
update to geth v1.8.20 (#1327) 0.19.0-beta.0 2018-12-19 11:02:07 +01:00
Andrea Maria Piana
79bf92bea5
Allow specify topic in rpc endpoint (#1328) 2018-12-18 16:27:12 +01:00
Adam Babik
2c5a1a7710
Bump version to 0.19.0 2018-12-17 12:57:50 +01:00
Adam Babik
1b1c3f5cd2
Fix "Releasing pre-release from develop" 0.18.2-beta.0 2018-12-17 12:17:22 +01:00
Adam Babik
7fb2755f6b
Describe and simplify the release process (#1322) 2018-12-17 10:55:17 +01:00
Adam Babik
74cb16c456
add SyncMessages method to shhext api (#1309) 2018-12-14 12:21:34 +01:00
Adam Babik
2f65dd58f9
Enable metrics by default and pass build flags to statusgo-library (#1320) 2018-12-14 12:16:45 +01:00
Andrea Franz
fdcd20e14d
add missing patch file (#1319) 2018-12-12 16:09:39 +01:00
Adam Babik
5dbde3a94b
fix flaky TestSyncBetweenTwoMailServers (#1316) 2018-12-12 11:21:52 +01:00
Andrea Franz
e1c258d041
update go-ethereum with patch 0044-import-extended-key-by-purpose (#1318) 2018-12-12 11:13:10 +01:00
Dmitry Shulyak
f2c6fef64c
Persist selected mail server using separate monitor (#1303)
This change allows to connect to the mail server that we were using before the app was restarted. Separate loop is listening for whisper events, and when we receive event that request was completed we will update time on a peer record.

Records are stored in leveldb. Body of the record is marshaled using json. At this point the only field is a timestamp when record was used.

This loop doesn't control connections, it only tracks what mail server we ended up using. It works asynchronously to connection management loop. Which tracks events that are related to connection state and expiry of the requests.

When app starts we look into the database and select the most recently used record. This record is added to connection management loop first. So if this server is available we will stick to using it. If we weren't able to connect to the same server in configured timeout (5s) we will try to connect to any other server from list of active servers.

closes: #1285
2018-12-12 11:39:00 +02:00