spaced4ndy
5bbde22ffa
core: new message decryption error - ratchet synchronization ( #3367 )
2023-11-14 18:23:05 +04:00
Evgeny Poberezkin
c91625b32a
core: update remote host session state, terminate TLS in one more case ( #3364 )
...
* core: update remote host session state, terminate TLS in one more case
* name
2023-11-13 20:16:34 +00:00
Alexander Bondarenko
598b6659cc
core: better handling of remote errors ( #3358 )
...
* Allow ExitCode exceptions to do their job
* Use appropriate error type
* Close TLS server when cancelling connected remote host
* Add timeout errors
* Bump simplexmq
* extract common timeout value
2023-11-13 18:39:41 +00:00
Evgeny Poberezkin
b1101fbce4
Merge branch 'master' into remote-desktop
2023-11-11 09:49:22 +00:00
Evgeny Poberezkin
f7b4e4b16a
core: 5.4.0.3
2023-11-11 09:36:16 +00:00
Evgeny Poberezkin
02225df274
core: remote control command/response encryption and signing inside TLS ( #3339 )
...
* core: remote control command/response encryption inside TLS (except files, no signing)
* sign/verify
* update simplexmq
* fix lazy
* remove RSNone
2023-11-10 16:10:10 +00:00
Alexander Bondarenko
f41861c026
core: terminate remote control TLS connection on both sides ( #3338 )
...
* handle session setup errors
* add command/async wrapper
* move furniture around
* detect disconnects and force them with closeConnection
* simplify http server log
* close TLS in other cases
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-11-09 22:43:44 +00:00
Alexander Bondarenko
b729144773
core: use xrcp protocol for desktop/mobile connection ( #3305 )
...
* WIP: start working on /connect remote ctrl
OOB is broken, requires fixing simplexmq bits.
* WIP: pull CtrlCryptoHandle from xrcp
* place xrcp stubs
* WIP: start switching to RemoteControl.Client types
* fix http2 sha
* fix sha256map.nix
* fix cabal.project
* update RC test
* WIP: add new remote session
* fix compilation
* simplify
* attach HTTP2 server to TLS
* starting host session in controller (WIP)
* more WIP
* compiles
* compiles2
* wip
* pass startRemote' test
* async to poll for events from host, test to send messages fails
* move xrcp handshake test to simplexmq
* detect session stops
* fix connectRemoteCtrl
* use step type
* app info
* WIP: pairing stores
* plug in hello/appInfo/pairings
* negotiate app version
* update simplexmw, remove KEM secrets from DB
* fix file tests
* tone down http2 shutdown errors
* Add stored session test
* bump simplexmq tag
* update simplexmq
* refactor, fix
* removed unused errors
* rename fields, remove unused file
* rename errors
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-11-08 20:13:52 +00:00
Evgeny Poberezkin
2776d864a8
Merge branch 'master' into remote-desktop
2023-11-06 11:44:12 +00:00
Evgeny Poberezkin
b33fe01e49
core: switch to GHC 9.6.3 ( #3307 )
...
* Various fixes aggregated
- windows definisions
- set compile rto 9.6.3
- flake adjust to 9.6.3
- update haskellNix
- add various patches
* Unbreak iOS
* update script and sha256map.nix
* ios: update core lib
---------
Co-authored-by: Moritz Angermann <moritz.angermann@gmail.com>
2023-11-06 11:43:43 +00:00
Evgeny Poberezkin
177112ab18
update simplexmq
2023-11-04 19:04:40 +00:00
Evgeny Poberezkin
8546c937b2
Merge branch 'master' into remote-desktop
2023-11-02 14:04:10 +00:00
Evgeny Poberezkin
34b07d6a3b
core: update simplexmq (http2 lib update to fix sending files)
2023-11-02 10:44:24 +00:00
Evgeny Poberezkin
8482dbfd99
core: update remote API commands/events ( #3295 )
...
* core: update remote API
* Add session verification event between tls and http2
* roll back char_ '@' parsers
* use more specific parser for verification codes
* cabal.project.local for mac
---------
Co-authored-by: IC Rainbow <aenor.realm@gmail.com>
2023-11-01 19:08:36 +00:00
Alexander Bondarenko
02c0cd5619
Cut at attaching http server/client ( #3299 )
...
* Cut at attaching http server/client
* switch to xrcp branch
2023-11-01 10:48:58 +00:00
Evgeny Poberezkin
9568279b0f
update simplexmq
2023-10-29 18:21:51 +00:00
spaced4ndy
b0f55d6de5
core: update simplexmq (check snd queue) ( #3280 )
2023-10-25 10:45:36 +04:00
spaced4ndy
ed1eef7362
core: update simplexmq (inv locks) ( #3274 )
2023-10-24 17:38:16 +04:00
Evgeny Poberezkin
8891314507
core: update simplexmq (fixes ordering issue during message delivery)
2023-10-22 14:19:24 +01:00
spaced4ndy
e4c8386f3f
core: replace simplex:/ with simplex.chat links in view; remove trustedUri flag from simplex links markdown format ( #3235 )
2023-10-16 19:23:38 +04:00
Evgeny Poberezkin
b05a45f559
core: updated simplexmq (add tag to platform-specific sum type encoding that uses single field objects with swift/iOS)
2023-10-07 12:32:39 +01:00
Evgeny Poberezkin
70a65e8969
core: close stores before import/delete/encryption operations to make compatible with windows, make encryption more resilient ( #3146 )
...
* core: close stores before import/delete/encryption operations to make compatible with windows, make encryption more resilient
* remove file names
* do not remove files if already removed
2023-09-29 13:09:48 +01:00
Evgeny Poberezkin
1d34500fba
core: revert stop/close changes made for Windows ( #3145 )
...
* Revert "core: return error response when wrong passphrase is passed to start"
This reverts commit ea319313f1
.
* Revert "core: support closing/re-opening store on chat stop/start (#3132 )"
This reverts commit 3c7fc6b0ee
.
2023-09-29 11:14:10 +01:00
Evgeny Poberezkin
3c7fc6b0ee
core: support closing/re-opening store on chat stop/start ( #3132 )
...
* core: support closing/re-opening store on chat stop/start
* update .nix refs
* kotlin: types
* add test
* update simplexmq
2023-09-27 15:26:03 +01:00
Evgeny Poberezkin
bbd778a6be
core: update simplexmq (fix xftp agent)
2023-09-21 12:01:21 +01:00
Evgeny Poberezkin
b08768ea71
5.3-beta.8: desktop 8 ( #3086 )
...
* unpin unix package
* desktop: 1.6.0, build 8
* action: file hashes (#3087 )
* action: file hashes
* better output
* correct name
---------
Co-authored-by: Stanislav Dmitrenko <7953703+avently@users.noreply.github.com>
2023-09-20 21:21:56 +01:00
Evgeny Poberezkin
0d0097326e
core: update simplexmq
2023-09-18 21:55:39 +01:00
Evgeny Poberezkin
fedc31c72c
Merge branch 'master' into master-ghc9
2023-09-10 21:11:35 +01:00
Alexander Bondarenko
2dff6c8859
core: do not subscribe to new connections from iOS NSE (subscribe=off flag), subscribe in app when it activates ( #3016 )
...
* Trace auto-subs flag
* Replace Bool with SubscriptionMode
* Add subscriptionMode to chat controller
* Start using subscriptionMode in event handlers
* Add need_subs to chat connections
* Add onlyNeeded to subscribeUserConnections
* Post-rebase fixes
* Pass onlyNeeded to Store functions
* Drop needs_sub for connections registered with agent
* update simplexmq, fix activate
* fix rebase, reduce diff
* fix rebase, tests
* fix rebase, executeMany, always subscribe on activate
* test
* update queries
* Update src/Simplex/Chat.hs
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* unset connections to subscribe on start
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-09-10 20:40:15 +01:00
spaced4ndy
b6c23b59ca
core: change logic of checking if peer supports feature (check if peer version is compatible) ( #3024 )
2023-09-06 17:48:37 +04:00
Evgeny Poberezkin
0ec3e0c18d
core: add debug info for subscriptions ( #3014 )
2023-09-04 23:19:24 +01:00
Evgeny Poberezkin
461142b875
core: update simplexmq (import stateTVar)
2023-09-01 22:27:03 +01:00
Evgeny Poberezkin
0b214acf97
core: support encrypted local files ( #2989 )
...
* core: support encrypted local files
* add migration
* update agent api, chat api
* fix query, exported functions to read/write files
* update simplexmq
* remove formatting changes
* test, fix file size
* reduce diff
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* fail when receiving SMP files with local encryption
* update simplexmq
* remove style changes
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-09-01 19:43:27 +01:00
Evgeny Poberezkin
a2aac72dd1
Merge branch 'master' into master-ghc9
2023-08-26 18:44:34 +01:00
Evgeny Poberezkin
ebb4c860b7
5.3.0.6: update simplexmq (create database path)
2023-08-26 18:36:34 +01:00
Evgeny Poberezkin
9134624e2a
Merge branch 'master' into master-ghc9
2023-08-25 14:13:30 +01:00
Evgeny Poberezkin
3a93954c50
core: debug agent subscriptions ( #2976 )
...
* core: debug agent subscriptions
* update commands to include subscriptions summary
2023-08-25 14:10:40 +01:00
Moritz Angermann
761ddac55d
core: use GHC 9.6.2 ( #2641 )
...
* Make it compiler with 9.6
Can be built with:
cabal build all -j --allow-newer=base --allow-newer=ghc-prim --allow-newer=template-haskell --allow-newer=bytestring --allow-newer=memory --allow-newer=cryptonite
Using ghc 9.6
It mostly runs afoul of https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0366-no-ambiguous-field-access.rst
* compile with GHC 9.6.2: dependencies, imports, code
* update GHC version in CI
* update GHC version in desktop build scripts
* update simplexmq, sha256map.nix
* update compiler
* update simplexmq, direct-sqlcipher
* remove missing files from .cabal
* building on desktop
* mac build changes
* added version back
* building libffi from source
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Co-authored-by: Avently <7953703+avently@users.noreply.github.com>
2023-08-24 21:56:37 +01:00
Evgeny Poberezkin
971e71727a
core: specify compiler
2023-08-23 13:24:34 +01:00
Evgeny Poberezkin
75d11c2b4f
core: update simplexmq (fix repeated HELLO message) ( #2962 )
...
* core: update simplexmq (fix repeated HELLO message)
* add callstack to tests
2023-08-21 21:45:16 +01:00
Evgeny Poberezkin
75c9b40262
core: update simplexmq (sequential sending of batches) ( #2957 )
...
* core: update simplexmq (sequential sending of batches)
* update simplexmq
2023-08-20 18:47:30 +01:00
spaced4ndy
34cf672bc6
core: show count and average time for slow queries ( #2939 )
2023-08-16 21:21:12 +04:00
spaced4ndy
4a5dd0a3a4
core: add indexes to improve slow queries performance ( #2931 )
...
* core: add indexes to improve slow queries performance
* idx_chat_items_group_id
* update simplexmq, schema
* update simplexmq
* remove index
* update simplexmq
---------
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-08-16 10:41:52 +04:00
Evgeny Poberezkin
113669ac16
core: track slow SQL queries ( #2904 )
...
* core: track slow SQL queries
* fixes
* update simplexmq
2023-08-12 18:27:10 +01:00
Evgeny Poberezkin
38dc14f041
core: update simplexmq (revert DB busy error handling)
2023-08-09 16:45:31 +01:00
Evgeny Poberezkin
eacfc4aa8c
5.2.1.0: update simplexmq (fix slow queries and incorrect message join)
2023-07-22 13:25:13 +01:00
spaced4ndy
7a166e46a9
core: update simplexmq (delete expired messages migration) ( #2740 )
2023-07-20 14:36:44 +01:00
Evgeny Poberezkin
048ada79bb
core: 5.2.0.2, update simplexmq (5.3.0.0) ( #2707 )
...
* core: 5.2.0.2, update simplexmq (5.3.0.0)
* fix tests
2023-07-17 14:44:33 +01:00
Evgeny Poberezkin
0f4473d272
core: delivery receipts ( #2644 )
...
* core: delivery receipts
* update simplexmq
* preference, migration
* add activated state to receipts preference, update tests
* set receiveReceipts as activated on new profiles
* update simplexmq, fix tests
* update simplexmq, fix withAckMessage
* one more option
* more
* use tryChatError in ack message
* enable all tests
* rename pref
* update item status on delivery receipts
* show receipts for tests
* remove chat preference for delivery receipts
* add user, contact and group settings for delivery receipts
* only send delivery receipts if enabled for the contact or user profile (and not disabled for the contact)
* fix tests
* reuse event, test
* configure per contact - db, api, test
* rename commands
* update simplexmq
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
2023-07-13 23:48:25 +01:00
spaced4ndy
34c2303ef1
core: update simplexmq (db error busy treatments) ( #2676 )
2023-07-11 20:57:14 +04:00
Evgeny Poberezkin
7a8db16791
core: catch IO exceptions in ExceptT ( #2669 )
...
* core: catch IO exceptions in ExceptT
* catch IO exceptions for ACK
* simplify, remove unnecessary changes
* fix, update simplexmq
* update simplexmq, enable all tests
* fix
* update simplexmq (fix finally)
* update sha256map.nix
2023-07-09 23:24:38 +01:00
spaced4ndy
ae17566a94
core: ratchet synchronization ( #2653 )
2023-07-05 19:44:21 +04:00
Evgeny Poberezkin
5d9b6266ea
ios, core: pull to reconnect relays ( #2652 )
...
* ios, core: pull to reconnect relays
* update simplexmq
* update texts
2023-07-05 09:09:56 +01:00
spaced4ndy
2f7ea909e2
core: update simplexmq (5.2.0) ( #2646 )
2023-07-03 20:13:00 +04:00
spaced4ndy
77b3870654
core: update simplexmq (switch status encoding) ( #2615 )
2023-06-26 21:48:01 +04:00
spaced4ndy
d929c34e71
core: include ConnectionStats into switch api response ( #2594 )
2023-06-19 16:07:17 +04:00
spaced4ndy
6d3cb0ea2e
core: api to abort connection switch; update simplexmq ( #2544 )
2023-06-16 19:05:53 +04:00
Evgeny Poberezkin
4a12cf0922
core: update simplexmq (fix missing ACK on duplicate messages) ( #2525 )
...
* core: update simplexmq (fix missing ACK on duplicate messages)
* update simplexmq
2023-05-27 19:31:56 +01:00
spaced4ndy
b6a4f5f518
core: enable creation of decryption errors chat items ( #2450 )
2023-05-17 16:13:35 +04:00
spaced4ndy
a059739210
core: update simplexmq (time diff calculation); core, ios: add deleteAt to chat item info ( #2440 )
2023-05-15 21:07:03 +04:00
spaced4ndy
fca315ee1f
core: update simplexmq (pending replicas indexes) ( #2418 )
2023-05-10 16:09:58 +04:00
spaced4ndy
54fc052e47
core: remove msg_delivery_events unique constraint (recreates table); cleanup old messages ( #2376 )
2023-05-05 13:49:09 +04:00
spaced4ndy
a9957fb46d
core: delete xftp file when user is not found by file id ( #2234 )
2023-04-25 15:46:00 +04:00
Evgeny Poberezkin
03882367da
core: 5.0.0.2
2023-04-20 14:19:09 +01:00
Evgeny Poberezkin
aea526f69d
core: add chat items to indicate decryption failures due to ratchets being out of sync ( #2175 )
...
* core: add chat items to indicate decryption failures due to ratchets being out of sync
* show ratchet errors in chat items, show all integrity errors
* show decryption errors, tests
* ios: chat items, remove item for duplicate messages
* android: decryption errors chat items
* eol
2023-04-16 11:35:45 +01:00
spaced4ndy
eb36f64676
core: update simplexmq (digest entity id); integrate xftp snd delete ( #2183 )
2023-04-14 15:32:12 +04:00
spaced4ndy
c2d70a5107
core: update simplexmq (recoverable xftp send) ( #2178 )
2023-04-13 20:46:07 +04:00
Evgeny Poberezkin
d84b30c071
core: update simplemq (preset xftp servers)
2023-04-06 23:16:16 +01:00
Evgeny Poberezkin
d250e503b0
core: update simplexmq (fix file reception on 32 bit CPUs)
2023-04-06 21:06:46 +01:00
Evgeny Poberezkin
1a3f0bed47
core: update servers API to include XFTP servers, ios: generalize UI to manage servers ( #2140 )
...
* core: update servers API to include XFTP servers, ios: generalize UI to manage servers
* add test
* update migrations to pass tests
* fix readme
* update simplexmq
2023-04-05 21:59:12 +01:00
Evgeny Poberezkin
6feac55380
core: update http2 library
2023-04-05 10:23:35 +01:00
Evgeny Poberezkin
2148d50393
core: use Int64 in time calculations ( #2143 )
...
* core: use Int64 in time calculations
* remove import
* make interval Int64
2023-04-04 14:26:31 +01:00
Evgeny Poberezkin
15a93014a5
core: update http2
2023-04-01 17:27:11 +01:00
spaced4ndy
b20824e16c
core: notify about xftp errors ( #2105 )
2023-03-30 18:36:39 +04:00
Evgeny Poberezkin
c96ba30018
core: support down migrations to allow reverting to the previous version ( #2072 )
...
* core: support down migrations to allow reverting to the previous version
* update schema
* update simplexmq
* rename errors
* remove unused functions
* migration UI, test migration
* update migration UI
* return current migrations in CRVersionInfo
* update simplexmq
* test down migrations
* cleanup ios
* show migrations in log
2023-03-27 18:34:48 +01:00
Evgeny Poberezkin
bcdf502ce6
core: update simplexmq
2023-03-22 09:10:54 +00:00
Evgeny Poberezkin
d8cc867099
update simplexmq
2023-03-18 16:18:59 +00:00
Evgeny Poberezkin
dce8a1dff9
update simplexmq
2023-03-18 13:43:01 +00:00
Evgeny Poberezkin
5bc9e014c2
update simplexmq
2023-03-18 13:26:54 +00:00
Evgeny Poberezkin
f2f4b26c35
core: update agent protocol to parameterize by entity type ( #1988 )
...
* core: update agent protocol to parameterize by entity type
* update simplexmq
2023-03-10 17:23:04 +00:00
Evgeny Poberezkin
2817306659
core: types to support xftp ( #1971 )
...
* core: types to support xftp
* migration, amend types
* update protocol / types
* update protocol, types
* update schema, simplexmq
2023-03-09 11:01:22 +00:00
Evgeny Poberezkin
50b90c4814
core: use 12 bytes IV for WebRTC frame encryption with AES-GCM ( #1951 )
...
* core: use 12 bytes IV for WebRTC frame encryption with AES-GCM
* refactor
2023-02-25 17:52:23 +00:00
Evgeny Poberezkin
0ebf1da05d
core: WebRTC frames encryption ( #1942 )
...
* core: WebRTC frames encryption
* test
2023-02-19 23:51:50 +00:00
Evgeny Poberezkin
e5009a58df
core: update simplexmq v4.4.1
2023-02-18 19:04:59 +00:00
Evgeny Poberezkin
958299784d
core: update simplexmq (more strict transport host parser
2023-02-04 23:31:01 +00:00
Evgeny Poberezkin
49b6979ff0
core: update simplexmq (not to fail batch subscriptions), terminal: log contact errors with -c option ( #1890 )
2023-02-04 23:13:20 +00:00
Evgeny Poberezkin
2473d14baa
core: 4.5.0.4, update simplexmq
2023-02-03 11:32:32 +00:00
Evgeny Poberezkin
a1ed0a84b8
core: use port 7001 for test server ( #1857 )
...
* core: use port 7001 for test server
* enable only failing tests
* start/stop server for every test
* log message that failed to parse
* stop chat synchronously
* print call stack
* add HasCallStack
* increase test timeout
* add call stacks
* more call stacks
* fix test
* disable failing test
* add delay between the tests
* make delay more visible
* remove change in error message
* reduce test delay, increase timeout
* increase delay between the tests
* run each test with a database in a different folder
* folder name
* refactor
* update nix file, more stacks
2023-01-31 11:07:48 +00:00
Evgeny Poberezkin
f5f61c5806
core: update simplexmq, v4.5.0.0
2023-01-28 13:59:46 +00:00
Evgeny Poberezkin
77d0f70270
update simplexmq
2023-01-24 13:39:12 +00:00
JRoberts
2a20f78877
core: use batch connection deletion api ( #1814 )
2023-01-24 16:24:34 +04:00
Evgeny Poberezkin
006a30e65c
update simplexmq
2023-01-19 19:41:19 +00:00
JRoberts
e8cab01c03
core: update simplexmq (fkey indexes) ( #1786 )
2023-01-17 16:41:19 +04:00
JRoberts
df6cec6a32
core: update simplexmq (session mode, users commands) ( #1757 )
2023-01-16 17:00:24 +04:00
JRoberts
892b91e958
core: update simplexmq (subscribe users in different sessions) ( #1734 )
2023-01-13 15:14:46 +04:00
JRoberts
424328b9d1
core: agent users ( #1727 )
2023-01-13 13:54:07 +04:00
Evgeny Poberezkin
a1b27e9a99
update simplexmq (better handling of quota errors)
2023-01-04 15:07:33 +00:00
Evgeny Poberezkin
13090ff6ed
core: do not log TLS handshake errors by default, option to enable ( #1652 )
...
* core: do not log TLS handshake errors by default, option to enable
* update simplexmq
2022-12-27 12:05:13 +00:00
Evgeny Poberezkin
74245d3f2b
core: agent stats ( #1650 )
2022-12-26 22:24:34 +00:00
Evgeny Poberezkin
95cc9e1e55
core: verify connection ( #1530 )
...
* core: verify connection
* update commands
* api to get/set verification code/status
* add migration
* refactor
* change command / response names
* reset verified status if code from agent doesn't match
2022-12-09 15:26:43 +00:00