Commit Graph

45 Commits

Author SHA1 Message Date
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
Derrick Hammer 54f0a53f77
refactor: need to crease a base protocol package to solve import cycle 2024-01-07 05:12:43 -05:00
Derrick Hammer ea872fedc4
refactor: move nodeVotes to a dedicated file 2024-01-07 04:03:36 -05:00
Derrick Hammer 4678d406fc
refactor: use interfaces, rename struct to be an impl 2024-01-07 03:57:46 -05:00
Derrick Hammer 713bcf98c3
refactor: major refactor to split major components into interfaces due to import cycles 2024-01-07 03:13:35 -05:00
Derrick Hammer 2a21ca4d60
refactor: move node and storage to its own package 2024-01-06 13:21:09 -05:00
Derrick Hammer eefbfa06d0
feat: initial node scoring support 2024-01-06 10:54:03 -05:00
Derrick Hammer 9654fadfee
refactor: abstract button creation to a generic utility method 2024-01-06 09:46:01 -05:00
Derrick Hammer 8c29a284ce
feat: wip networking 2024-01-06 06:34:15 -05:00