Commit Graph

186 Commits

Author SHA1 Message Date
Dmitry Zuikov 1623b5b1a4 fixed pexinfo fix 2023-10-20 19:48:24 +03:00
Dmitry Zuikov 4d756d6eaf fixed? tcp pex 2023-10-20 19:45:40 +03:00
Dmitry Zuikov 4aeb91a4b2 removed http download 2023-10-20 13:14:50 +03:00
Dmitry Zuikov 98e589fe6f fixed-block-download-control 2023-10-20 11:16:11 +03:00
Dmitry Zuikov bac3f99588 fix exception in main loop thread 2023-10-18 19:47:58 +03:00
Dmitry Zuikov a1bbc634f4 QBLF regression fixed
Multi-client unix socket failure
2023-10-18 15:14:32 +03:00
Dmitry Zuikov 246518cd34 ghc 9.4.6 2023-10-16 06:13:27 +03:00
Dmitry Zuikov 3bccfa2e98 minor refactoring 2023-10-15 09:01:45 +03:00
Dmitry Zuikov 64400a425e dynamic polling management 2023-10-13 10:06:17 +03:00
Dmitry Zuikov 8842843ffb hbs2-git-to-new-rpc 2023-10-07 14:29:40 +03:00
Dmitry Zuikov 850354c529 done expose-all-new-rpc 2023-10-06 05:48:17 +03:00
Dmitry Zuikov 15d6a1d06f modular-rpc-api
1. Making the API modular
2. Running all via single socket, including storage
2023-10-05 11:54:36 +03:00
Dmitry Zuikov 28163d0123 storage rpc 2023-10-04 16:52:25 +03:00
Dmitry Zuikov 613f26e418 moved to RPC2
New RPC works over a Unix socket and assumes synchronous
requests with callService.

A new protocol, 'ServiceProto,' is introduced.

New RPC operates over a Unix socket.

Note the setting: (rpc2 unix "/tmp/hbs2-rpc2.socket").

The default rpc2 socket is located at /tmp/hbs2-rpc2.socket.

In the future, TCP RPC may be introduced, requiring only:

1. Authorization/Authentication

This might be accomplished through another wrapped protocol, for instance.

"Dialog"-associated elements are commented out for now,
as they will likely require their own Unix socket.
2023-10-04 10:54:39 +03:00
Dmitry Zuikov 09e070e38f merged 2023-09-21 08:40:05 +03:00
Dmitry Zuikov a980569ce4 qblf merged
- Requires testing and bugfixing
- Needs high CPU usage investigation (polling/packet flood?)
- Bundles are downloading repeatedly, that is weird
2023-09-21 08:40:05 +03:00
Dmitry Zuikov 51597c58cb Revert "merged"
This reverts commit eeb2735c4dc10409ba996b37cf83ba2fb178d392.
2023-09-21 08:10:16 +03:00
Sergey Ivanov 08c95bc9a9 Typelevel dialog server spec 2023-09-15 20:18:15 +04:00
Sergey Ivanov b22dc35283 Move encryption keys to ProxyMessaging
Change key for encryption key map from PeerData to EncryptionKeyIDKey

Test for quasidistributiveness of the encodeFrames

Move Dialog to HBS2.Net

Fixes with hlint:   hbs2-peer/app/PeerMain/DialogCliCommand.hs
2023-09-15 18:43:21 +04:00
Dmitry Zuikov 93137d8f4c minor-fix: extracted SignedBox and code sweeped 2023-09-15 09:43:05 +03:00
Sergey Ivanov 3a04d7f0ab use native Exception.handle to respawn 2023-08-16 16:54:45 +04:00
Sergey Ivanov b7079c2915 Revert "PR CG2C18TK8v "account asyncs, respawn node on errors""
This reverts commit 8904704edc.
2023-08-16 16:50:16 +04:00
Dmitry Zuikov 8904704edc PR CG2C18TK8v "account asyncs, respawn node on errors" 2023-08-11 06:10:09 +03:00
Dmitry Zuikov 7274c6ceeb current refchan-notify and multiple fixes 2023-07-31 13:56:33 +03:00
Dmitry Zuikov 71e325f8bc PR 3nmxU5Ro8b dialog-proto 2023-07-28 15:36:50 +03:00
Dmitry Zuikov 0c645d5fbf reduced noise in log 2023-07-27 11:33:31 +03:00
Dmitry Zuikov 42309096e1 reduced noise in log 2023-07-27 11:21:15 +03:00
Dmitry Zuikov c52be7cf5e merged PR 8ey8Fnr4c4 remove-lref-commands 2023-07-27 10:00:01 +03:00
Dmitry Zuikov 97f1bd2f8a added refchan-notify skeleton 2023-07-27 07:14:07 +03:00
Sergey Ivanov c60a0b4696 update after merge 2023-07-26 21:14:41 +04:00
Sergey Ivanov 75f03b9c95 Merge iv/integrate-encryption-test-dev2 into refchan-merge-2 (using imerge) 2023-07-25 16:11:47 +04:00
Dmitry Zuikov 819cec6402 wip, refchanget proto skeleton, no log merge 2023-07-25 12:27:43 +03:00
Dmitry Zuikov c6f6a398f7 wip, rpc for refchan get 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 609551b43e wip 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 697c79133e wip, renamed some stuff 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 2bb5b83eb9 wip, emitting accept message 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 28590c6936 wip, semion semionovich... 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 781c9ded4b very basic acls work 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 51d03f2265 wip 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 075a28d9bf got rid of Block ByteString everywhere 2023-07-25 12:27:43 +03:00
Dmitry Zuikov e71ff57773 wip, tryin to fetch refchan head 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 8e567c87d0 wip 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 0e1959dfe5 wip, tryin to fetch refchan head 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 42be590baa wip, respect only polled refchans 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 2a9b43397e wip, cli refchan head get 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 72d0c8222c wip 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 50d843e4f0 wip 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 82aa6576b5 wip 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 36a0282256 wip, posting refchan head transaction 2023-07-25 12:27:43 +03:00
Dmitry Zuikov e59d64bf0d wip, posting refchan head transaction 2023-07-25 12:27:43 +03:00
Dmitry Zuikov 04a274f7cc wip, dump refchan head block 2023-07-25 12:27:43 +03:00
Sergey Ivanov 56537f0b68 call setEncryptionKey .. (Just symmk) in considerPeerAsymmKey 2023-07-19 01:23:29 +04:00
Sergey Ivanov 15b9438406 pass peer to setEncryptionKey 2023-07-19 00:42:37 +04:00
Sergey Ivanov 3316bb3d44 traces encryption events 2023-07-19 00:35:14 +04:00
Sergey Ivanov 21e5f4ac59 Implemented encryption key clearing on PeerExpiredEventKey 2023-07-18 23:49:47 +04:00
Sergey Ivanov 00bac2047f do not pass PeerData to encHandshake_considerPeerAsymmKey 2023-07-18 23:14:15 +04:00
Sergey Ivanov a0334f5dee Actual handlers for ProxyMessaging 2023-07-18 23:10:48 +04:00
Sergey Ivanov 9bad166566 Move types 2023-07-18 21:43:35 +04:00
Sergey Ivanov dd9cbcd284 Change encryption handshake brains methods 2023-07-13 01:08:28 +04:00
Sergey Ivanov 686ac2523d wip 2023-07-13 00:17:50 +04:00
Sergey Ivanov e53c6e84fc move emit PeerAsymmInfoKey to PeerMain 2023-07-12 23:27:51 +04:00
Sergey Ivanov e43f2c439d wip 2023-07-12 23:24:37 +04:00
Sergey Ivanov 9eed3a6d3f wip 2023-07-12 23:00:13 +04:00
Sergey Ivanov fdf5a72765 wip 2023-07-07 16:33:21 +04:00
Sergey Ivanov d1318c6fd1 Added encryptionHandshakeProto to PeerMain "all protos" thread 2023-07-04 23:46:52 +04:00
Sergey Ivanov 75232557f3 Extracted EncryptionHandshake from PeerHandshake 2023-07-04 22:47:26 +04:00
Sergey Ivanov c403b77556 wip 2023-07-04 21:39:35 +04:00
Sergey Ivanov 5ecbd93594 Experiment with clearing symmetric key 2023-07-04 19:24:35 +04:00
Dmitry Zuikov 01982d37c1 Squashed commit of the following:
commit cc3d5a357eee5c0e01f530808f8122f83b5103a2
Author: Dmitry Zuikov <dzuikov@gmail.com>
Date:   Tue Jul 4 15:29:09 2023 +0300

    fixme

commit abae50a7895fdfc70e3a9204288a1af1a00f1c77
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Mon Jul 3 20:05:08 2023 +0400

    encryption debug -> traces

commit e8cab85da295ad81896726bf41f118bc2eb6e79e
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Mon Jul 3 00:21:34 2023 +0400

    bus encryption fixed

commit cbb3e796b0d919d6d425a5d8c669cfce2ed02182
Merge: a740db8 55cdf97
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Sat Jul 1 23:17:52 2023 +0400

    Merge branch 'master' into iv/bus-crypt

commit a740db82351dcbc40604413df9af210212e1cbc1
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Jun 21 16:08:05 2023 +0400

    drop one traceShowId uasge

commit 82de8d8c675cf21e732dc8db9b64139c7c2407ad
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Jun 21 13:33:34 2023 +0400

    Edit README.md fix typo

commit ec4dc7733215f19009da9334b82fd568e16eb143
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Jun 21 13:32:54 2023 +0400

    Rename deserialiseTrace -> deserialiseCustom

commit 863394449798d8c534c58dc2d69add3e5a807e56
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Thu Jun 15 05:37:52 2023 +0400

    PR bus-crypt

commit 78dd65959906944935f99371ee973fc6c2c659b9
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Thu Jun 15 05:33:13 2023 +0400

    Drop unused lines

commit 9736077a96061c62e928b657e7c7558f9172636c
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Thu Jun 15 05:24:33 2023 +0400

    Encryption works

commit c69aede965242281b525c088e1f27708a6741651
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Jun 14 20:52:48 2023 +0400

    wip

commit 88fc2aac5b4fc1d452e74bf99213a57dad09b1c3
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Jun 14 15:52:32 2023 +0400

    Test roundtrip combineNonceBS/extractNonce

commit 2d2f6945f4c917347c8f30e195764e2b0837fb25
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Tue Jun 13 14:08:56 2023 +0400

    wip

commit 31466fd036d74d8c4b769c7ffb0fa9dfda03eb26
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Tue Jun 13 10:03:15 2023 +0400

    trace locked requests

commit 85eb68a6747fb307c07fb0fcf681118250b37fab
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Mon Jun 12 20:02:32 2023 +0400

    added Show instances

commit 74383bd7db9dd6838b4d026a3997c5c5b4799fa4
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Mon Jun 12 09:56:14 2023 +0400

    DEBUG

commit d62b30dbcdae6584f78cc2b6d8a801ff46cfdfa8
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Sun Jun 11 18:28:49 2023 +0400

    wip

commit 78b3f24ae1c4b632756f3a28873f4d03bbaa1330
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Sun Jun 11 08:45:58 2023 +0400

    trace encrypted receiveing

commit 93e2b9f7a7c2b579e5e46b6329a6509b8e5119de
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Sat Jun 10 16:57:59 2023 +0400

    wip

commit 4686274d0fb401b722fca10ec0c2dbee00a4c68a
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Fri Jun 9 23:38:56 2023 +0400

    Use PeerDataExt

commit 0c24c2702b47db262fa086efb6cff108b8ce28e8
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Thu Jun 8 03:04:39 2023 +0400

    Encrypted Handshake

commit 789536f20bc4f95320d2a4779a4a5b06d52b98f2
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Jun 7 00:56:34 2023 +0400

    Fixed fillPeerMeta timeout algorithm

commit d52ac19777ba1c47f1123c5452309da4391ca21f
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Fri Jun 2 01:50:17 2023 +0400

    wip

commit ea6833f812f9f137880229547622a3cf1ae55222
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Tue May 30 22:14:25 2023 +0400

    wip

commit 4ffdfc60ccc5c053da2d81ea16847f25f14c6220
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Sat May 27 21:42:01 2023 +0400

    Symmetrical encryption in ProxyMessaging

commit 7cd1214e9e00901fcd3d9e2966348dd800ab4119
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Fri May 26 15:03:43 2023 +0400

    pex monitor
2023-07-04 15:29:54 +03:00
Dmitry Zuikov 1c5a90984f fixing tcp pex 2023-06-30 13:43:53 +03:00
Dmitry Zuikov 27b8fb9f40 trying to close tcp stuff on respawn 2023-05-26 07:05:51 +03:00
Dmitry Zuikov 52284f61ab respawn process on error 2023-05-26 07:05:51 +03:00
Dmitry Zuikov 453b7fd822 introducing resourcet 2023-05-26 07:05:51 +03:00
Dmitry Zuikov 69abfcf7e5 removed-extra-spaces 2023-05-26 07:05:51 +03:00
Dmitry Zuikov e3dca38522 typo fixed 2023-05-26 07:05:51 +03:00
Sergey Ivanov 69b7a56695 Move fillPeerMeta to it's own module, add tcp-prop-wait config param 2023-05-26 07:05:51 +03:00
Sergey Ivanov fbed52c921 wip 2023-05-26 07:05:50 +03:00
Sergey Ivanov 78bb0c45c1 wip 2023-05-26 07:05:50 +03:00
Sergey Ivanov 829c7378fd wip 2023-05-26 07:05:50 +03:00
Sergey Ivanov 956ca8638c Fail fast on errors in peerThread, do not eat exceptions 2023-05-26 07:05:50 +03:00
Sergey Ivanov 382cb2c9fc wip tcp-pex 2023-05-26 07:05:50 +03:00
Dmitry Zuikov c8395f38ed making-reflogs-eventually-constistent 2023-04-18 13:21:12 +03:00
Sergey Ivanov efc48d1c34 Added listen-tcp to PeerMeta 2023-04-14 14:31:11 +04:00
Dmitry Zuikov ed47e18d24 done oYxxWDF4nX-seems-like-a-bad-idea 2023-04-14 09:07:19 +03:00
Dmitry Zuikov 4424466c84 tcp 2023-04-13 19:02:25 +03:00
Dmitry Zuikov 731f9c8209 merged CzgtqSWJQN
Squashed commit of the following:

commit f392c62836977b635f440437cf53859c891aa8c4
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Thu Apr 13 18:18:24 2023 +0400

    Fixes by review

commit 9a805fcb587071f88c68d85c3b85c81daa6ddeea
Author: Dmitry Zuikov <dzuikov@gmail.com>
Date:   Thu Apr 13 07:09:47 2023 +0300

    review

commit 8062035ceb1eb99f570df9c275aa875d5bf2a089
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Apr 12 17:51:21 2023 +0400

    Tune updatePeerHttpAddrs

commit cd5423d10be5359869b5399fec3470bc1902934d
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Apr 12 02:03:23 2023 +0400

    Update PR implement-http-block-download-worker

commit c1b32d9b7d4ad46f1924bf340374d64c29cefb67
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Wed Apr 12 01:58:45 2023 +0400

    Fixed blockHttpDownloadLoop

commit 8eaa3e3d84e2611f3781db471c59d8591ace9b68
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Mon Apr 3 01:42:01 2023 +0400

    http block download worker

commit 32f7ae80e15c1ff71f1a33359b34c0728b19b4ef
Author: Sergey Ivanov <ivanovs-4@yandex.ru>
Date:   Mon Mar 27 19:21:21 2023 +0400

    modified:   .fixme/log
2023-04-13 18:36:29 +03:00
Dmitry Zuikov 1c8f6b978b merged refactor-crypto-remove-l4-protocol-dependency 2023-04-06 09:22:45 +03:00
Dmitry Zuikov f035827731 fixed 6kx1sdj7ej 2023-04-05 05:04:13 +03:00
Dmitry Zuikov cfd5a5bdbd merged PR 5dkZ3UqkiT hbs2-peer-median-rtt 2023-04-04 06:43:22 +03:00
Dmitry Zuikov 585f2a8025 rtt peer selection 2023-04-02 13:29:56 +03:00
Dmitry Zuikov fd7b0e31d5 ping rtt measurement 2023-04-02 12:57:52 +03:00
Dmitry Zuikov d89e6d0ec5 fix proxy-fetch-for 2023-04-01 12:16:02 +03:00
Dmitry Zuikov 56c0ac4bc1 better-download-algorithm 2023-04-01 09:30:28 +03:00
Dmitry Zuikov e10fae26db block-download-fix 2023-03-29 16:32:27 +03:00
Dmitry Zuikov 83decc3bfb minor fix 2023-03-29 07:14:38 +03:00
Dmitry Zuikov 76eb115d03 merged PR#4dMi3uox8r whitelist-config-option 2023-03-29 06:27:37 +03:00
Dmitry Zuikov 4ccb58f8c0 9Y2v3fXdhz lesser-ping-period 2023-03-28 12:03:20 +03:00
Dmitry Zuikov 5f77b26520 hbs2-git: lotsa stuff 2023-03-24 19:54:07 +03:00
Dmitry Zuikov 6d7e587a24 hbs-git alpha 2023-03-23 20:48:44 +03:00
Dmitry Zuikov ea881ac507 known-peer-options-for-config
Squashed commit of the following:

commit 343417c5d8
Author: Vladimir Krutkin <krutkinvs@gmail.com>
Date:   Thu Mar 9 16:27:24 2023 +0300

    Refactoring

commit cadcfc38f1
Author: Vladimir Krutkin <krutkinvs@gmail.com>
Date:   Thu Mar 2 23:35:09 2023 +0300

    Refactoring

commit 02be353096
Author: Vladimir Krutkin <krutkinvs@gmail.com>
Date:   Thu Mar 2 23:24:13 2023 +0300

    Add `known-peers-file` config option

commit eaa4f38989
Author: Vladimir Krutkin <krutkinvs@gmail.com>
Date:   Thu Mar 2 15:22:41 2023 +0300

    Refactoring

commit 784fd2b437
Author: Vladimir Krutkin <krutkinvs@gmail.com>
Date:   Tue Feb 28 22:52:57 2023 +0300

    Typo

commit 4e487b3a03
Author: Vladimir Krutkin <krutkinvs@gmail.com>
Date:   Tue Feb 28 22:54:39 2023 +0300

    Add `known-peer` config option
2023-03-10 09:01:22 +03:00