Evgeny Poberezkin
6126e72d4f
Merge branch 'master' into v5
2021-12-02 18:06:42 +00:00
Evgeny Poberezkin
606bbf5062
URI syntax for SMP queues and connection requests ( #210 )
...
* URI syntax for SMP queues and connection requests
* fix connection request parsing/serializing
* add ConnectionRequest sqlite instances
2021-12-02 17:43:05 +00:00
Evgeny Poberezkin
bebd1e5fb9
simplex URI request
2021-11-29 23:00:26 +00:00
Evgeny Poberezkin
db509d0311
update protocol docs ( #209 )
...
* update protocol docs
* more protocol corrections
* update connection request syntax
* Update protocol/agent-protocol.md
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* Update protocol/agent-protocol.md
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* Update protocol/agent-protocol.md
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* Update protocol/agent-protocol.md
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* Update protocol/simplex-messaging.md
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
2021-11-28 21:01:34 +00:00
Evgeny Poberezkin
e1002d5ac0
GADTs for cryptographic keys ( #208 )
...
* GADTs for cryptographic keys
* update tests (signature timing tests still fail)
* fix signature verification timing tests
* configurable algorithm to sign commands to SMP queues (Ed448 by default)
* add dummy Ed keys, add timing tests for Ed keys
* re-enable Connection subscriptions tests
2021-11-28 11:44:22 +00:00
Evgeny Poberezkin
99b3749890
simplify RSA private key types ( #207 )
...
* simplify RSA private key types
* remove updateSignKey method
2021-11-28 07:08:47 +00:00
Efim Poberezkin
ab875198ed
SMP protocol typo
2021-11-27 02:31:15 +10:00
Evgeny Poberezkin
f3d79ebcda
update SMP protocol to include server signature and encryption keys
2021-11-25 17:24:00 +00:00
Evgeny Poberezkin
01e8c232f0
change syntax for queue URI and connection request ( #205 )
...
* change syntax for queue URI and connection request
* separate queue URI into separate section
* correction
2021-11-22 19:08:19 +00:00
Evgeny Poberezkin
eb7fcae31b
update transport protocol to use TLS ( #204 )
...
* update transport protocol to use TLS
* typos
* s/serverKeyHash/serverIdentity/
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* Update protocol/simplex-messaging.md
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* corrections
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
2021-11-22 08:52:39 +00:00
Evgeny Poberezkin
eb941f7435
simplify pending message delivery ( #202 )
...
* simplify pending message delivery (WIP)
* refactor
2021-11-19 16:26:51 +00:00
Evgeny Poberezkin
227d83d0e7
SMP commands for notifications (NKEY/NID and NSUB/NMSG) with separate queue ID and key ( #199 )
...
* SMP commands for notifications (LSTN, NTFY) with separate queue IDs and keys
* rename Notifier types
* remove notify key and id from NEW and IDS commands (TODO add other commands)
* fix StoreLog serialization
* add commands for managing notifications
* add notification subscribers to server state, add notifier ID and key to store log
* add notifier ID and key to the queue
* refactor END notification to work for both types of subscriptions, deliver message notification (NMSG)
* process NSUB command - subscribe to message notifications
* test for message notifications
* fix SMP client function for NSUB command
* fix parse/serialize NID command
* refactor use ifM
* check duplicate notifier ID only against other notifier IDs
* refactor getQueue
* test notifier ID and key with store log
* Update src/Simplex/Messaging/Client.hs
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* Update src/Simplex/Messaging/Server.hs
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
* store log: s/NOTIFY/NOTIFIER/
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
2021-11-14 18:52:29 +00:00
Evgeny Poberezkin
057d5eeb24
AES encription with auth tag after cypher text (the order in WebCrypto etc.); upgrade GHC to 8.10.7 ( #197 )
2021-10-24 21:03:41 +01:00
Efim Poberezkin
bfcbe4bcd8
remove build matrix and create release in the end of build to avoid downtime in binary availability ( #196 )
2021-10-02 18:49:24 +10:00
Evgeny Poberezkin
6b5427b826
update DigitalOcean image manifest and init script to install the latest server release, add docs ( #195 )
2021-09-12 14:21:09 +01:00
Evgeny Poberezkin
35e6593581
0.4.1
v0.4.1
2021-09-11 18:55:31 +01:00
Evgeny Poberezkin
33de5f6fec
include migrations in the package, update docs, versions ( #194 )
...
* include migrations in the package, update versions
* update DigitalOcean version
2021-09-11 18:36:12 +01:00
Evgeny Poberezkin
d1d7d51fe0
0.4.0
v0.4.0
2021-09-11 12:03:51 +01:00
Evgeny Poberezkin
0f9226ba2a
update version (0.4.0) and changelog ( #193 )
...
* update version (0.4.0) and changelog
* changelog corrections
* make tests more stable
2021-09-11 10:26:51 +01:00
Efim Poberezkin
862f25500d
v4 ( #192 )
2021-09-09 01:30:39 +10:00
Efim Poberezkin
da071a0abf
Merge pull request #160 from simplex-chat/v4
...
v4
2021-09-09 01:19:01 +10:00
Efim Poberezkin
51491d9cd5
Merge branch 'master' into v4
2021-09-09 01:10:41 +10:00
Evgeny Poberezkin
d973c834a5
update protocols ( #190 )
...
Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com >
2021-09-08 00:25:04 +10:00
Evgeny Poberezkin
e07bedac0e
move tryError to Simplex.Messaging.Util ( #191 )
2021-09-04 19:01:54 +01:00
Evgeny Poberezkin
2ac903a2dd
do not allow "," and ";" separators in smp-server hostname ( #189 )
2021-09-03 20:35:48 +01:00
Evgeny Poberezkin
d23254f44a
SMP block size via config, the client can override size set by the server ( #188 )
2021-09-03 20:16:10 +01:00
Evgeny Poberezkin
9a3afda290
ACK command, ackMessage, do not send ACK to SMP server on MSG (after the initial handshake) ( #187 )
2021-09-01 08:29:12 +01:00
Evgeny Poberezkin
68f24f90d1
export withAgentLock and do not acquire agent lock in functional API ( #186 )
2021-08-30 18:29:13 +01:00
Evgeny Poberezkin
75259d70cf
set block size to 4096 bytes ( #185 )
2021-08-30 10:47:22 +01:00
Evgeny Poberezkin
96c6339306
fix error handling of sending pending messages; set block size to 8192 ( #184 )
...
* fix error handling of sending pending messages
* s/tryAction/tryError/
2021-08-29 13:10:59 +01:00
Evgeny Poberezkin
7b5ebf7bd2
change type of agent sendMessage result to AgentMsgId ( #183 )
2021-08-26 23:25:49 +01:00
Evgeny Poberezkin
cb950ae2e4
add SMP queue quota to server config (and use TBQueue for messages) ( #182 )
2021-08-26 22:54:51 +01:00
Evgeny Poberezkin
26b0edabfc
refactor with RecordWildCards ( #181 )
2021-08-22 13:19:38 +01:00
Evgeny Poberezkin
cda02a3b30
support 3072 bits RSA key size ( #180 )
2021-08-22 10:04:49 +01:00
Evgeny Poberezkin
dd5137c336
asynchronous message sending to allow accepting messages when agent (or server) is offline ( #179 )
...
* asynchronous message sending to allow accepting messages when agent (or server) is offline
* send pending messages after agent restart; test for pending messages delivery when server restarted
* test pending message delivery after agent restart
* message delivery process per server
* test layout
2021-08-12 22:15:55 +01:00
Evgeny Poberezkin
e045774caa
reconnect server and resubscribe connections after disconnection ( #178 )
2021-08-09 08:49:49 +01:00
Evgeny Poberezkin
dd6a53b0d2
funding.yml ( #177 )
2021-08-05 19:47:22 +01:00
Evgeny Poberezkin
d9084522af
agent lock to avoid running subscriber and client processing in parallel; remove check that the connection is active when delivering a message ( #176 )
...
* agent lock to avoid running subscriber and client processing in parallel; remove check that the connection is active when delivering a message
* use agent lock in agent functions
2021-08-05 08:33:48 +01:00
Evgeny Poberezkin
3829479a21
Remove introductions, rename CONF/LET to REQ/ACPT ( #175 )
...
* remove intros and functions in Reader monad
* rename CONF/LET to REQ/ACPT, allowConnection to acceptConnection
2021-08-05 08:27:44 +01:00
Efim Poberezkin
8a4bced569
decrease initial delay for HELLO retries on online activation ( #174 )
...
* decrease initial delay for HELLO retries on online activation
* move retry interval to config
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2021-08-01 13:51:40 +01:00
Nikita Poberezkin
8ac4b77777
create cfg dir before server initialization ( #173 )
2021-07-25 20:29:47 +01:00
Evgeny Poberezkin
30c36b488a
commit simplexmq.cabal to remove stack DEPRECATED warning ( #172 )
2021-07-25 20:27:09 +01:00
Evgeny Poberezkin
10fcb9771a
use explicit immediate transactions in all functions that change db ( #170 )
2021-07-20 21:21:30 +01:00
Nikita Poberezkin
65782d7ef6
add digital ocean deployment instruction ( #168 )
...
* add digital ocean deployment instruction
* fix instruction
* fix image link and remove ssh instruction link
2021-07-12 17:22:35 +01:00
Efim Poberezkin
5e380e1d47
add tests for establishing connection asynchronously; retrieve correct key for activation on restart ( #169 )
2021-07-10 20:02:48 +10:00
Efim Poberezkin
9f945492dd
fix markdown error in crypto rfc ( #167 )
2021-07-09 04:27:07 +10:00
Evgeny Poberezkin
8ba3e3e45a
remove connection ID parameter from agent functions ( #166 )
...
* remove connection ID parameter from agent functions
* remove unused extension
2021-07-03 20:18:37 +01:00
Efim Poberezkin
3d9ceff691
ask client for confirmation of sender; make establishment of connection asynchronous ( #163 )
...
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com >
2021-07-04 04:48:24 +10:00
Evgeny Poberezkin
daad3315eb
upgrade stack resolver to lts-18.0 ( #165 )
...
* upgrade stack resolver to lts-18.0
* fix random package version
2021-06-30 10:35:50 +01:00
Evgeny Poberezkin
e4d9b481ec
refactor message meta to MsgMeta type ( #164 )
2021-06-30 10:29:45 +01:00