Commit Graph

104 Commits

Author SHA1 Message Date
Derrick Hammer 883f50b198
feat: add incoming and outgoing peer blocking to handle abuse 2024-01-15 10:54:31 -05:00
Derrick Hammer d79455c68c
refactor: rename GetHandler to GetHttpRouter 2024-01-14 22:06:57 -05:00
Derrick Hammer 3d12cff53e
refactor: use setter for the http handler 2024-01-14 22:06:18 -05:00
Derrick Hammer 38e330e02b
feat: add an interface for handling http methods to be handled abstractly and implement the basic upload endpoint 2024-01-14 20:53:44 -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 7b17c1898b
fix: bad debug formatting 2024-01-10 11:25:46 -05:00
Derrick Hammer 5df9ac2256
fix: need to add peer to wg 2024-01-10 11:21:07 -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 584057fb8a
feat: initial HTTP service with version and P2P endpoints 2024-01-10 09:19:21 -05:00
Derrick Hammer 123f28ac19
refactor: run initial peer connect async 2024-01-10 07:42:04 -05:00
Derrick Hammer 6591b2a79f
fix: need to spin emit off 2024-01-10 07:32:34 -05:00
Derrick Hammer 773a66207d
fix: we use fire, as the event name 2024-01-10 07:20:09 -05:00
Derrick Hammer 180b76ee3c
feat: add listen method 2024-01-10 07:05:13 -05:00
Derrick Hammer 2cfbacbcd7
refactor: remove un-needed else 2024-01-10 06:47:30 -05:00
Derrick Hammer 65727b8cc5
fix: ensure registry is setup in construction 2024-01-10 06:42:17 -05:00
Derrick Hammer 6bf557346d
feat: initial registry service support 2024-01-10 06:29:03 -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 04611d83eb
refactor: add interface check 2024-01-09 06:54:46 -05:00
Derrick Hammer 75db7bcc7a
feat: implement upvote and downvote 2024-01-09 06:54:22 -05:00
Derrick Hammer f9e94ce205
fix: ensure NewNodeVotes defaults to 0 2024-01-09 06:53:51 -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 602ece249a
chore: delete unneeded package 2024-01-07 04:17:36 -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