-
Notifications
You must be signed in to change notification settings - Fork 5
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
feat: send UDP datagrams #71
Conversation
|
0c58a25
to
5ba57e9
Compare
5ba57e9
to
9086db0
Compare
@jpcsmith I've made most of the changes we discussed offline today. What I haven't touched yet is the setup of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey Markus, looks good, just a couple of ideas for removing the vector allocation when encoding and other refinements.
I still not sold on the extract()
as I feel that the map
implementation that you implemented already provides 90% of the benefit with an already accepted semantic in rust.
I suspect we may be missing an address type: ScionAddress
or similar that is an IsdAsn + Host, as SocketAddr was used in places where a port should not be necessary. I will add an issue for this.
@jpcsmith Again, thank you very much for the valuable suggestions. I've addressed most of them, there are just a couple of open questions from my side. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thank you for your thorough implementation. I think my remaining comments can be delayed until the library grows a bit.
I think SendError enum can be simplified a bit with a few manual From<> implementations, but otherwise, this is good to go.
- move datagram to scion-proto - reorganize modules, in particular in `scion_proto::packet` - distinguish between `ScionPacketRaw` and `ScionPacketUdp` - more consistent encoding implementations with the `WireEncode` and `WireEncodeVec` traits
ff38b8e
to
3e5a811
Compare
Depends on #68
Closes #60