Evgeny Poberezkin
b741b65700
use online status in network information ( #1094 )
...
* use online status in network information
* test
* refactor
* flip condition
* fix
2024-04-12 22:22:24 +01:00
Alexander Bondarenko
036b7523a5
xftp: matrix test for new versions ( #1093 )
...
* xftp: matrix test for new versions
* manual matrix
* more, faster
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-04-12 13:28:16 +01:00
spaced4ndy
3b1dd6dff9
agent: notify about available quota ( #1087 )
...
* agent: notify about available quota
* rename
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-04-11 09:38:12 +01:00
Evgeny Poberezkin
fbc25b171e
xftp: reply ERR AUTH when file is removed from server storage ( #1091 )
2024-04-10 23:02:48 +01:00
Evgeny Poberezkin
8fa9ed6317
wait for user network availability ( #1085 )
...
* ghc-options
* wait for user network availability
* test
* update
* comment
* refactor
* slow config
* line
* waitForUserNetwork in xftp and ntf workers
* refactor
* refactor with registerDelay
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-04-10 21:50:05 +01:00
Alexander Bondarenko
91cf6841e0
http2: fix client setup ( #1090 )
...
* http2: cancel client action on setup timeout
* ignore incompatible server keys
2024-04-10 21:00:39 +01:00
Evgeny Poberezkin
1219446996
dispose agent instances, fix tests, ( #1089 )
...
* dispose agent instances in tests
* fix quota test
* tests: fix tests with -threaded (#1088 )
* fix some tests
* match RTS opts with apps
* less verbose rts stats
* enable sqlite extended error codes
* clean up
* unfocus
* remove extendedErrorCode
It's actually setExtendedResultCodes, which isn't yet available.
* diff
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* fix switch test
* fix
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2024-04-10 19:34:02 +01:00
Evgeny Poberezkin
b994fd9f0f
use sendRequest for HTTP2
2024-04-09 21:14:10 +01:00
Alexander Bondarenko
4c20ff6d00
xftp: negotiate protocol with ALPN ( #1047 )
...
* xftp: negotiate protocol with ALPN
* add RFC
* add handshake implementation
* implement extended handshake
* enable authentication
* update rfc
* Apply suggestions from code review
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* cleanup
* discard trailing data
* cleanup diff
* use find
* rename
* refactor
* add x509 tests
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-04-09 15:03:40 +01:00
spaced4ndy
791368c7be
export lock function ( #1073 )
...
* export lock functions
* rename with tick
* simplify
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-04-04 15:37:31 +01:00
Alexander Bondarenko
a4cfcfcc85
ntf-server: fix test token handling ( #1083 )
...
* use formatted logger
* fix DeviceToken parser for apns_null
* exclude PPNull from token stats
2024-04-04 14:46:40 +01:00
Evgeny Poberezkin
84b8c8417b
revert base64 change ( #1081 )
2024-04-03 09:27:36 +01:00
Alexander Bondarenko
be9a84905f
servers: read stores by chunks ( #1080 )
2024-04-01 19:42:30 +01:00
Alexander Bondarenko
a698f9a0c4
xftp-server: run expiration checks on start ( #1042 )
...
* xftp-server: run expiration checks on start
* rename
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-04-01 11:29:19 +01:00
Evgeny Poberezkin
39bb804fab
xftp: fix repeated replica creation if it was in uploaded status ( #1079 )
...
* test with failing files (in progress)
* print
* add replica uploading state
* Revert "add replica uploading state"
This reverts commit 7068213aa6 .
* <=
* fix
* prints
* test no redundancy
* all tests no redundancy
* revert delay
* refactor
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-04-01 13:37:35 +04:00
Evgeny Poberezkin
6ded721daa
remove monad typeclasses to reduce overhead ( #1077 )
...
* remove monad typeclasses to reduce overhead
* remove unliftIO
* StrictData
* inline
* optional agent port
* avoid MonadUnliftIO instance (#1078 )
* avoid MonadUnliftIO instance
* simpler liftError'
* rename
* narrow down instance
* revert
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
* logServer
---------
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com >
2024-03-31 20:50:35 +01:00
Evgeny Poberezkin
44410535fd
do not pass key to control port of xftp server ( #1074 )
2024-03-28 18:16:36 +00:00
Alexander Bondarenko
bbc9eccf4d
xftp: prevent overwriting completed upload ( #1063 )
...
* xftp: prevent overwriting completed upload
* add size check for skipCommitted
* fix import
* fail on incorrect size
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-28 18:12:48 +00:00
Alexander Bondarenko
ee90ea6a69
replace base64-bytestring with base64 ( #1065 )
...
* replace base64-bytestring with base64
* minify
* use bytestring-0.10 compatible fork
PR pending...
* bump base64 fork with text compat
* move compat details to modules
* switch repo
* add back module
* cleanup
* minify
* clean imports
* rename
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-27 23:35:09 +00:00
Alexander Bondarenko
5e0123313c
log control port commands, authentication for control port ( #1071 )
...
* log control port commands
* auth
* add auth to xftp, config and commands
* log missing auth
* put smp save under auth
* corrections
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-26 18:04:28 +00:00
Evgeny Poberezkin
2712fbc711
add key to XFTP server control port command ( #1070 )
...
* add key to XFTP server control port command
* name
2024-03-26 09:38:28 +00:00
Evgeny Poberezkin
dbaef5a0f8
fix SMP server msgCount stat ( #1069 )
2024-03-25 16:26:40 +00:00
Alexander Bondarenko
ff1d7f2fac
ntf-server: break processing transaction ( #1067 )
...
* ntf-server: break processing transaction
* make resubscribe sync
* diff
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-25 15:35:33 +00:00
Evgeny Poberezkin
b32259d048
notify about critical error on agent crash ( #1062 )
...
* notify about critical error on agent crash
* waitUntilActive
* disposeAgent
* fix
2024-03-21 14:54:57 +00:00
Alexander Bondarenko
a48c22ea36
core: fix leak in serverDown handler ( #1061 )
2024-03-21 12:03:19 +00:00
Alexander Bondarenko
9eacae5492
xftp: remove duplicate check in receiveServerFile ( #1057 )
2024-03-20 15:50:38 +00:00
Alexander Bondarenko
d68ff7e22f
xftp-server: set initial usedStorage from actual file records ( #1045 )
2024-03-19 13:53:02 +00:00
Evgeny Poberezkin
46e49fa823
xftp: return OK on duplicate upload attempt
2024-03-19 13:52:07 +00:00
Alexander Bondarenko
db3bddecca
xftp-server: fix receiveServerFile ( #1048 )
...
* xftp-server: fix receiveServerFile
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-19 13:34:21 +00:00
Alexander Bondarenko
097cec1c35
utils: add stateless compress1 ( #1053 )
2024-03-19 12:13:42 +00:00
Alexander Bondarenko
ca68eca86e
agent: fix leak in getChunkDigest ( #1051 )
2024-03-15 12:18:15 +04:00
Alexander Bondarenko
ace09cc07d
xftp: force single chunk for redirect descriptions ( #1050 )
...
* xftp: force single chunk for redirect descriptions
* Update src/Simplex/FileTransfer/Client/Main.hs
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com >
2024-03-15 12:08:52 +04:00
spaced4ndy
293a2ca3f1
agent: remove withStoreCtx ( #1044 )
2024-03-13 13:33:59 +04:00
spaced4ndy
e93ea6df71
xftp: fix sending large files ( #1043 )
2024-03-13 13:33:43 +04:00
Alexander Bondarenko
2cad0cb201
core: check ACK handling with return type ( #1041 )
...
* core: check ACK handling with return type
* fix ratchet sync
* add SQL Locked to dbBusyLoop
* rename
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-11 19:06:53 +00:00
Evgeny Poberezkin
b4c90781bb
pqdr: update envelope sizes
2024-03-10 17:53:57 +00:00
Evgeny Poberezkin
851ed2d02e
pqdr: more tests, pass e2e version to rcEncrypt from config ( #1040 )
...
* pqdr: more tests, pass e2e version to rcEncrypt from config
* fix
2024-03-10 13:29:03 +00:00
Evgeny Poberezkin
054b6edb14
pqdr: clean up ( #1039 )
2024-03-10 11:27:31 +00:00
Evgeny Poberezkin
dab55e0a9b
pqdr: return agent version from connection request version & PQ support check api
2024-03-08 23:13:21 +00:00
Alexander Bondarenko
8cdd49b912
core: restore Eq instances ( #1038 )
...
* core: restore Eq instances
* remove duplicates from tests
2024-03-08 13:43:33 +00:00
Alexander Bondarenko
b4e55146b8
core: fix VersionRange JSON instances ( #1037 )
2024-03-08 10:58:45 +00:00
Evgeny Poberezkin
03d73f442f
JSON instance for VersionRange ( #1036 )
2024-03-08 10:01:58 +00:00
Evgeny Poberezkin
8ff4c628b5
pqdr: make envelope sizes dependent on version, test enabling PQ ( #1035 )
2024-03-08 08:28:15 +00:00
spaced4ndy
5e23fa6cfc
agent pq: connRequestPQSupport api ( #1034 )
2024-03-07 19:44:48 +04:00
Alexander Bondarenko
dd22b5c823
core: tweak compress api ( #1029 )
...
* convert compress to a wrapper with passthrough fallback
* add compress1 for non-batched compression
* use original size as upper bound for scratch
* refactor
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-07 14:17:32 +00:00
Evgeny Poberezkin
11288866f9
pqdr: refactor
2024-03-07 12:41:10 +00:00
Evgeny Poberezkin
07fa75ec49
pqdr: agent api to confirm PQ encryption support during connection handshake, fix incorrect PQ support ( #1032 )
...
* pqdr: agent api to confirm PQ encryption support during connection handshake
* fix CONF, tests
* fix REQ, tests
* remove unused
2024-03-07 08:35:40 +00:00
Evgeny Poberezkin
4ffb6a348a
pqdr: use different newtypes for supporting and enabling PQ encryption in connections ( #1031 )
...
* pqdr: use different newtypes for supporting and enabling PQ encryption in connections
* rename field, fix test
* refactor
2024-03-06 21:28:03 +00:00
Evgeny Poberezkin
b435a4dacb
envelope sizes dependent on PQ encryption ( #1028 )
...
* envelope sizes dependent on PQ encryption (WIP)
* add "supported" flag to ratchets, update this flag on ratchet resync
* change connection PQ status on sendMessage
* comment, fix
* refactor
2024-03-06 16:38:30 +00:00
Alexander Bondarenko
e04705d9c5
utils: add generic batching and compression ( #1018 )
...
* extract batchTransmissions_
* add Simplex.Messaging.Compression
* add combined compression/batching
* force NonEmpty for batching
* hide FFI and allocation related IO
* split packing
* remove batch compression, tweak API
* OCD over API
* remove Empty, extract passthrough const
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com >
2024-03-06 09:10:49 +00:00