Added no disconnecting with metadata requests, and we answer now with a
bogus status call and proper prefix for both status and metadata
request. This changes allows for nimbus nodes to connect to us and
actually stay connected.
Now we are sending correct metadata responses
We disconnect from peer no matter if we fail to respond to them once we
receive a goodbye message
We close all writers once we are done writing to signal our peer
* separated the encoding
* picking random peer node
* sending ping request
* updated enconding and reading
* requesting ping interval and more verbose vars
* disconnecting from unresponsive peers
* penalizing instead of disconnecting for irresponsiveness
* closing stream for streamCodec
* solved meged issues
* changed back
* separated const values
* requesting ping interval to 1 sec
* added closing of read and write stream && receiving responses!
* fixecd typo
* general sending request function
* added constants of resqresp topics
* fixed uncorrect name
* refactored sending requests
* added todo
* little detail
* moved to main
* no need to sleep
* sending request retries until timeout
* type
* lint
* added subscription to gossip
* added all handlers with logs
* disconnecting from peers with goodbye message received
* added time out for stream
* wip
* Remove unused
* remove extra structs
* status handler
* minor clean up
* add structs for altair light client
* begin writing out altair light client sync protocol to figure out what other structs are needed
* remove sszgen
* cleanup pt 1
* cleanup pt 2
* remove go 1.19 function
* less ambigious variable name
* run go fmt
* rename snappy_ssz to ssz_snappy to better align with wire name
* move more structs over
* poof set deadline
Co-authored-by: Enrique Jose Avila Asapche <eavilaasapche@gmail.com>
Co-authored-by: a <a@a.a>
* added subscription to topics
* keeping track of topic subscription
* subscribing to beaconBlock
* listening to messages
* ops
* not processing our own messages
* ops
* separated convertions into utils.go
* added log to bad peers
* more verbose errors and names
* warn when banning bad peer
* has and get in function name
* space
* lint
* ops
* little rename
* deleted unused func
* revert