Commit Graph

58 Commits

Author SHA1 Message Date
Derrick Hammer a0dcc52d63
refactor: remove dedicated interfaces and minimize interfaces 2024-01-28 23:59:43 -05:00
Derrick Hammer 31ccfb8c0b
refactor: major rewrite of message structure and wiring, reducing complexity 2024-01-28 23:39:40 -05:00
Derrick Hammer 6b9a4fb7dc
fix: EncodeEndian call needs to be a length of 2 2024-01-24 16:33:31 -05:00
Derrick Hammer afa38f1424
fix: use private key 2024-01-24 11:57:48 -05:00
Derrick Hammer 34bb591bfe
feat: implement PrepareProvideMessage 2024-01-24 02:53:56 -05:00
Derrick Hammer dced32ab21
fix: use PutUInt 2024-01-15 14:13:27 -05:00
Derrick Hammer 1b6925c296
refactor: change abused to abuser 2024-01-15 13:50:04 -05:00
Derrick Hammer d0d6745d60
fix: only log if peer was not flagged for abuse 2024-01-15 13:49:07 -05:00
Derrick Hammer c2ab3b4651
refactor: switch to EndForAbuse 2024-01-15 13:37:49 -05:00
Derrick Hammer 5e80831335
fix: only block and log if we are actually blocking, and make it all debug messages 2024-01-15 13:19:46 -05:00
Derrick Hammer d76bfc6daf
fix: use Get/PutUInt 2024-01-15 13:10:15 -05:00
Derrick Hammer 3ddf2595b9
fix: use Get/PutUInt 2024-01-15 13:03:49 -05:00
Derrick Hammer 743ba71e4b
fix: use PutUInt 2024-01-15 12:58:46 -05:00
Derrick Hammer def05376f5
fix: only block peer id if we can get the id 2024-01-15 12:13:17 -05:00
Derrick Hammer 0ce9b139b1
fix: use outgoingPeerBlocklist 2024-01-15 12:09:25 -05:00
Derrick Hammer bbb407b0e1
fix: add incoming peer to ip block too, and add more logging 2024-01-15 11:45:25 -05:00
Derrick Hammer ab53dbdf08
fix: only block peer if we have the id, and the maps were flipped 2024-01-15 11:38:38 -05:00
Derrick Hammer e7026459b4
fix: if peer sends us someone we have blocked outbound, block them inbound too 2024-01-15 11:04:41 -05:00
Derrick Hammer 3f0af1587b
fix: set outgoingPeerBlocklist and incomingPeerBlockList correctly 2024-01-15 10:59:45 -05:00
Derrick Hammer b9bf531663
fix: init outgoingPeerFailures 2024-01-15 10:58:03 -05:00
Derrick Hammer 883f50b198
feat: add incoming and outgoing peer blocking to handle abuse 2024-01-15 10:54:31 -05:00
Derrick Hammer 3d41119f74
fix: add a new property on messages and peers to prevent messages from being processed before the handshake is done 2024-01-13 11:22:01 -05:00
Derrick Hammer 36f087dc83
fix: malformed selfConnectionUri 2024-01-12 15:10:24 -05:00
Derrick Hammer 19fb3b9967
fix: move everything using endian to uint64 2024-01-10 11:00:01 -05:00
Derrick Hammer f9a0bd863c
fix: typo 2024-01-10 09:53:45 -05:00
Derrick Hammer 7ab602ce23
feat: store http api config in selfConnectionUris 2024-01-10 09:36:55 -05:00
Derrick Hammer 123f28ac19
refactor: run initial peer connect async 2024-01-10 07:42:04 -05:00
Derrick Hammer 528e1a6c27
chore: remove debug lines 2024-01-09 17:17:45 -05:00
Derrick Hammer 1e94f378f3
fix: save the node votes 2024-01-09 15:51:02 -05:00
Derrick Hammer 646f69e920
fix: dont use a callback with CreateBucket 2024-01-09 15:50:43 -05:00
Derrick Hammer c137d75b24
fix: we need to run all bucket actions via transactions and cannot store a pointer to the bucket 2024-01-09 15:49:23 -05:00
Derrick Hammer 185d0636ef
refactor: use Kind 2024-01-09 12:50:28 -05:00
Derrick Hammer 1678b40d82
fix: add a peerPending map to track and ensure we don't try to connect to a peer again until removed, even if we haven't gotten a handshake done 2024-01-09 10:42:21 -05:00
Derrick Hammer 8281729888
refactor: need to add in node level wait group to optionally wait and keep the node running 2024-01-09 09:11:36 -05:00
Derrick Hammer ff1db75f14
fix: need to run OnNewPeer in a goroutine 2024-01-09 08:39:52 -05:00
Derrick Hammer bb68bf3be1
feat: implement SendHashRequest, UpVote, DownVote 2024-01-09 06:59:12 -05:00
Derrick Hammer e11f3065d3
feat: implement saveNodeVotes 2024-01-09 06:58:03 -05:00
Derrick Hammer 266f9ada0e
fix: add missing return 2024-01-09 06:57:26 -05:00
Derrick Hammer 62fb8da6aa
refactor: rename ReadNodeScore to readNodeVotes 2024-01-09 06:55:37 -05:00
Derrick Hammer e011d452d5
refactor: ToMessage isnt needed 2024-01-08 12:07:19 -05:00
Derrick Hammer 2a0a817006
fix: OnNewPeer needs to use a wait group with OnNewPeerListen 2024-01-08 12:06:53 -05:00
Derrick Hammer 17d7eda377
fix: handle delay being nil 2024-01-08 10:51:38 -05:00
Derrick Hammer a9fb6aedb9
fix: need to store a reference to the handler to itself so we can access it by the proper type in a parent method 2024-01-07 10:37:42 -05:00
Derrick Hammer 00c8a081f6
feat: add secure message signing and encoding 2024-01-07 09:13:02 -05:00
Derrick Hammer 2e9b07c6bd
refactor: dont use pointers with interfaces 2024-01-07 06:47:01 -05:00
Derrick Hammer 52b7426a7a
refactor: change how we manage peers, create getter/setters on Peer/BasePeer, and refactor WebSocketPeer to use new ws package and add Connect/NewPeer 2024-01-07 06:33:32 -05:00
Derrick Hammer 8f6ebbd3e2
fix: nil pointer reference 2024-01-07 05:31:24 -05:00
Derrick Hammer 581ff5120d
fix: scheme doesnt use colons 2024-01-07 05:28:05 -05:00
Derrick Hammer f7a86fd2a5
fix: don't try to init 2024-01-07 05:23:45 -05:00
Derrick Hammer 29f7563d75
fix: set inited 2024-01-07 05:23:11 -05:00