Commit Graph

1153 Commits

Author SHA1 Message Date
Evgeny Poberezkin f3045563ed Merge branch 'master' into master-ghc8107 2023-11-04 12:51:07 +00:00
Evgeny Poberezkin e9b5a849ab update http2 to 4.2.2 (#879) 2023-11-01 10:57:19 +00:00
Evgeny Poberezkin 4660ee9cff agent: revert to TVar (#883) 2023-11-01 09:15:51 +00:00
Evgeny Poberezkin b5f733d2db agent: use IORef for DRG (#882) 2023-10-31 23:52:13 +00:00
Evgeny Poberezkin 3a2969c44a Merge branch 'master' into master-ghc8107 2023-10-29 16:46:26 +00:00
Alexander Bondarenko 0410948b56 add runTransportWith (#875)
* Cut transport server to allow custom tcp servers

Allows socket inspection before wrapping up in a transport/prototocol.

* rename

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-10-27 14:40:53 +01:00
Evgeny Poberezkin 26b551132e Merge branch 'master' into master-ghc8107 2023-10-26 10:24:01 +01:00
Evgeny Poberezkin 511d793b92 derive JSON instances with TH (#869)
* derive JSON instances with TH

* defaultJSON

* remove ToJSON
2023-10-26 09:20:30 +01:00
Evgeny Poberezkin 5f750a6783 docs: amend SMP protocol transmission encoding (#843)
* docs: amend SMP protocol transmission encoding

* base64 encoding

* remove "optional"
2023-10-25 17:52:02 +01:00
spaced4ndy bba7ad3494 Merge branch 'master' into master-ghc8107 2023-10-25 10:25:29 +04:00
spaced4ndy d920a2504b agent: check confirmed snd queue doesn't exist before replacing (#871) 2023-10-25 09:48:54 +04:00
spaced4ndy 6e2bb08026 Merge branch 'master' into master-ghc8107 2023-10-24 17:21:31 +04:00
spaced4ndy 55a6157880 agent: change invLocks key type to ByteString 2023-10-24 17:20:39 +04:00
spaced4ndy 05a794b5fd Merge branch 'master' into master-ghc8107 2023-10-24 16:57:06 +04:00
spaced4ndy 73d7f84ee3 agent: take invitation lock on join (#870) 2023-10-24 16:55:57 +04:00
Evgeny Poberezkin 9dfc0e0e92 Merge branch 'master' into master-ghc8107 2023-10-22 12:02:19 +01:00
Evgeny Poberezkin cf8b9c12ff remove test dependencies (#861)
* remove test dependencies

* .hlint.yaml
2023-10-22 10:50:36 +01:00
sh 9994375c16 docker: workaround for xftp quota format (#862) 2023-10-22 09:26:36 +01:00
Evgeny Poberezkin 9d12d76078 add fourmolu (#868)
* add fourmolu

* linebreak

* simplify

* comment
2023-10-22 09:20:14 +01:00
spaced4ndy deb3fc7359 agent: order by internal id when retrieving pending messages (#867) 2023-10-19 20:17:12 +04:00
spaced4ndy 80905c0822 test concurrent send and receipts (#866) 2023-10-19 20:08:58 +04:00
Evgeny Poberezkin decf25d7dc refactor http2 file (#864)
* refactor http2 file

* move fileBlockSize to HTTP2.File
2023-10-19 10:25:21 +01:00
Evgeny Poberezkin 5e047f3199 update http2 to 4.1.4 2023-10-18 13:26:38 +01:00
spaced4ndy 2a43717738 Merge branch 'master' into master-ghc8107 2023-10-16 19:25:26 +04:00
spaced4ndy 1ad69cf74f agent: always parse connection request uri as simplex:/ (#863) 2023-10-16 18:25:56 +04:00
Evgeny Poberezkin 696fa652a5 agent: always return simplex:/ links in invitations 2023-10-12 14:54:37 +01:00
Evgeny Poberezkin 9f0f53d2ec Merge branch 'master' into master-ghc8107 2023-10-07 18:02:57 +01:00
Evgeny Poberezkin 6b0da8ac50 export JSON tags as patterns 2023-10-07 14:21:15 +01:00
Evgeny Poberezkin 9195509485 update aeson to add tag to platform-specific single field JSON encoding (#859)
* update aeson to add tag to platform-specific single field JSON encoding

* refactor
2023-10-07 12:30:26 +01:00
Evgeny Poberezkin cf7fbf8a54 Merge branch 'master' into master-ghc8107 2023-10-05 22:30:15 +01:00
Alexander Bondarenko 96a38505d6 add FromJSON instances (#856)
* Add FromJSON instances

* add missing FromJSON instances

* more JSON instances

* update comments

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-10-05 15:57:53 +01:00
Evgeny Poberezkin 6087628c59 Merge branch 'master' into master-ghc8107 2023-10-05 12:01:12 +01:00
Alexander Bondarenko 753a6c7542 add X509 cert and TLS credentials generator (#857)
* Add X509 cert and TLS credentials generator

* Expand Crypto toolkit and rewrite tls credentials with it

* Exclude X keys from SignatureAlgorithmX509 and TLS.PrivKey

* Add helpers for DB marshalling and fingerprints

* Derive public key from private

* remove module name from selectors

* Remove StrEncoding (PrivateKey Ed25519)

* remove comment

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2023-10-03 13:43:21 +01:00
Evgeny Poberezkin 899d26e8c8 Merge branch 'master' into master-ghc8107 2023-09-29 12:35:30 +01:00
Alexander Bondarenko ec1b72cb80 Run HTTP2 sessions over existing TLS transport (#852)
* Split HTTP2 server and client setup

For attaching to an existing TLS session.

* Add genTlsCredentials

* Allow chain construction from separate credentials

So the CA may be stored and leaf ephemeral.

* Rewrap X509 fingerprint into simplex KeyHash used in transport

* Fix docstring

* Remove TLS.Credentials generator
2023-09-27 17:29:39 +01:00
Evgeny Poberezkin e7bd0fb31a Merge branch 'master' into master-ghc8107 2023-09-27 15:46:15 +01:00
Evgeny Poberezkin fda1284ae4 agent: support closing and re-opening store (#855)
* agent: support closing and re-opening store

* add closed flag, tests
2023-09-27 12:50:24 +01:00
Evgeny Poberezkin 53c793d559 Merge branch 'master' into master-ghc8107 2023-09-21 11:59:46 +01:00
Evgeny Poberezkin 8d47f69083 agent: fix creating empty file for XFTP to close file (#851) 2023-09-21 11:57:00 +01:00
Evgeny Poberezkin 3828a9591c unpin unix package (#850) 2023-09-20 18:32:03 +01:00
Evgeny Poberezkin 81385e39bf Merge branch 'master-ghc9' 2023-09-18 21:18:45 +01:00
Evgeny Poberezkin 3438655532 Merge branch 'master-ghc9' into master-ghc8107 without applying any changes 2023-09-18 21:05:36 +01:00
Evgeny Poberezkin fee897f367 fix unix to 2.8.1.1 2023-09-18 20:59:02 +01:00
sh f2d832fe20 Dockerfile: update cabal and ghc versions (#848) 2023-09-18 13:27:18 +03:00
Evgeny Poberezkin 57d08c0e36 Merge branch 'master' into master-ghc9 v5.4.0-beta.3 2023-09-17 22:30:46 +01:00
Evgeny Poberezkin 00b48babf3 5.4.0.3: ntf 1.6.2 2023-09-17 22:23:00 +01:00
Evgeny Poberezkin 0b488ceb66 ntf server: faster restoring from store log (#846)
* ntf server: faster restoring from store log

* only log sub status when changed
2023-09-17 15:16:24 +01:00
Evgeny Poberezkin 887ccbcf6c Merge branch 'master' into master-ghc9 v5.4.0-beta.2 2023-09-10 18:00:33 +01:00
Evgeny Poberezkin 0cabe0690b 5.4.0.2: xftp 1.1.1, ntf 1.6.1 2023-09-10 17:44:37 +01:00
Evgeny Poberezkin 84ce037867 extend SMP protocol to allow creating new queues without subscriptions (#839)
* Trace auto-subs flag

* Replace Bools with SubscriptionMode

* Handle SMOnlyCreate

* Wire remaining todos

* Update tests and fix

* Bump protocol level

* Apply suggestions from code review

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>

* Scrub needs_sub from agent DB

* Scrub a few more needSubs from the agent api

* change API, fix test

* agent: do not subscribe to queue when creating reply queue

* fix encoding

* WIP: SMOnlyCreate test

* Add SM guard for confirmQueue

Allows the test case to pump the allowConnection
reply without getting PROHIBITED.

* Remove tracing

* add noMessages, remove unnecessary getConnectionMessage from test

* add sending messages to the test

---------

Co-authored-by: IC Rainbow <aenor.realm@gmail.com>
Co-authored-by: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com>
2023-09-10 17:07:19 +01:00