Skip to content

Redo local channel tracking for route generation #149

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

Closed
TheBlueMatt opened this issue Sep 5, 2018 · 5 comments
Closed

Redo local channel tracking for route generation #149

TheBlueMatt opened this issue Sep 5, 2018 · 5 comments

Comments

@TheBlueMatt
Copy link
Collaborator

Currently we require users to interrogate ChannelManager for info on non-public local channels, which makes it particularly hard to comply with BOLT 7 "SHOULD accept channel_updates for its own channels (even if non-public), in order to learn the associated origin nodes' forwarding parameters." I think the obvious solution is to track local channels in Router.

Tagging 0.1 so I can call BOLT 7 completed in #129 "with the exception of other 0.1-tagged issues"

@TheBlueMatt TheBlueMatt added this to the 0.1 milestone Sep 5, 2018
@ariard
Copy link

ariard commented Oct 6, 2018

Seems to me best is to pass ChannelDetails (or a subset of it) as Event to Router when channels go to ChannelFunded, so Router will handle Event and add what needed to its maps. Maybe can be used to extend network map in the future from others sources than ChannelManager. I'm gonna work on that

@TheBlueMatt
Copy link
Collaborator Author

I feel a bit gross passing data back and forth between Router and ChannelManager as events, maybe just duplicate the channel_update message event handling calls to call both/

@ariard
Copy link

ariard commented Oct 6, 2018

Call both ? Sorry doesn't seems clear to me, how Router is suppose to have access to ChannelManager local channels if it have any reference to it ?

@TheBlueMatt
Copy link
Collaborator Author

Sorry, as in add a handle_channel_update fn in ChannelMessageHandler and just have peer_handler call both the chan_handler.handle_channel_update and the route_handler.handle_channel_update.

ariard pushed a commit to ariard/rust-lightning that referenced this issue Oct 12, 2018
ariard pushed a commit to ariard/rust-lightning that referenced this issue Nov 16, 2018
@TheBlueMatt
Copy link
Collaborator Author

Effectively fixed in #841.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants