-
Notifications
You must be signed in to change notification settings - Fork 978
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(upnp): add implementation based on IGD protocol #4156
Conversation
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.
Great work! I left some comments :)
You will need to exclude this from WASM to have CI pass. |
Something i was going to do in the future for testing was write a small server that would emulate a gateway for igd. Maybe this is something you could do is have a server and run test against that? |
there's also the |
Is there an option to use a different SSL stack? |
for a channel that polls the futures on an async task.
unfortunately the |
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.
Excited for this to land. Only drive-by comments.
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.
Some more questions!
This pull request has merge conflicts. Could you please resolve them @jxs? 🙏 |
This pull request has merge conflicts. Could you please resolve them @jxs? 🙏 |
hum, how could that be possible? We spawn the |
Yeah that is what I would expect. I know that |
This pull request has merge conflicts. Could you please resolve them @jxs? 🙏 |
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.
I am fine moving forward here, i.e. merge. In case there is anything we can do to reduce the dependency footprint, that would be very much appreciated.
This pull request has merge conflicts. Could you please resolve them @jxs? 🙏 |
b948bbb
to
b642cd9
Compare
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.
Thank you for your patience @jxs! I think this is the right path forward :)
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 great! Well done and sorry for so much back and forth :)
Let's go! |
@jxs can you go through the open conversations and resolve them if they are addressed? Github won't let us merge otherwise :) |
done Thomas, thanks! Merged 🎉 |
@jxs Mind updating the roadmap? https://github.com/libp2p/rust-libp2p/blob/master/ROADMAP.md#automate-port-forwarding-eg-via-upnp |
btw, can we release |
Description
Implements UPnP via the IGD protocol. The usage of IGD is an implementation detail and is planned to be extended to support NATpnp.
Resolves: #3903.
Notes & open questions
As discussed, this hasn't yet any type of tests, since we need a network with a gateway with igd support. Feel free to suggest any ideas for testing.
Change checklist