Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Tracking] Implement discv4 to connect to p2p peers #17

Closed
14 tasks done
mpaulucci opened this issue Jun 12, 2024 · 0 comments
Closed
14 tasks done

[Tracking] Implement discv4 to connect to p2p peers #17

mpaulucci opened this issue Jun 12, 2024 · 0 comments
Labels
network Issues related to network communication

Comments

@juanbono juanbono added this to the 2 - P2P Network milestone Jun 14, 2024
juanbono pushed a commit that referenced this issue Jun 26, 2024
@MegaRedHand MegaRedHand moved this to Blocked in ethrex_l1 Jun 27, 2024
@MegaRedHand MegaRedHand moved this from Blocked to In Progress in ethrex_l1 Jun 27, 2024
@MegaRedHand MegaRedHand self-assigned this Jun 27, 2024
@MegaRedHand MegaRedHand added the network Issues related to network communication label Jun 27, 2024
@MegaRedHand MegaRedHand changed the title Implement discv4 to connect to p2p peers [Tracking] Implement discv4 to connect to p2p peers Jun 27, 2024
@MegaRedHand MegaRedHand moved this from In Progress to Todo in ethrex_l1 Jun 27, 2024
@MegaRedHand MegaRedHand moved this from Todo to Blocked in ethrex_l1 Jun 27, 2024
@MegaRedHand MegaRedHand removed their assignment Jun 27, 2024
@MegaRedHand MegaRedHand pinned this issue Jun 28, 2024
MegaRedHand added a commit that referenced this issue Jul 3, 2024
**Motivation**

According to the spec:
> Implementations should ignore any additional elements in the
`packet-data` list as well as any extra data after the list.

We're currently failing if any of that happens.

**Description**

This PR introduces `Decoder::finish_unchecked`, which ignores any
trailing bytes instead of failing, and uses that to allow for additional
elements inside the packet-data. Also, it replaces some usage of
`RLPDecode::decode` with `RLPDecode::decode_unfinished` to allow for
extra data after the message.

As an extra, it refactors out the big `match` inside of both `Message`
encode and decode functions, since it's expected those will change often
in the next PRs.

Related to #17
@github-project-automation github-project-automation bot moved this from Blocked to Done in ethrex_l1 Jul 19, 2024
@mpaulucci mpaulucci unpinned this issue Jul 26, 2024
mpaulucci pushed a commit to mpaulucci/lambda_ethereum_rust that referenced this issue Oct 16, 2024
mpaulucci pushed a commit to mpaulucci/lambda_ethereum_rust that referenced this issue Oct 16, 2024
**Motivation**

According to the spec:
> Implementations should ignore any additional elements in the
`packet-data` list as well as any extra data after the list.

We're currently failing if any of that happens.

**Description**

This PR introduces `Decoder::finish_unchecked`, which ignores any
trailing bytes instead of failing, and uses that to allow for additional
elements inside the packet-data. Also, it replaces some usage of
`RLPDecode::decode` with `RLPDecode::decode_unfinished` to allow for
extra data after the message.

As an extra, it refactors out the big `match` inside of both `Message`
encode and decode functions, since it's expected those will change often
in the next PRs.

Related to lambdaclass#17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
network Issues related to network communication
Projects
Status: Done
Development

No branches or pull requests

3 participants