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

Bug fix for race condition and unpredictable presence of DONE packet. #227

Merged
merged 1 commit into from
Nov 3, 2023

Conversation

jbaublitz
Copy link
Owner

Closes #223
Closes #214

This commit addresses two separate issues:

1. There was previously a short window where a message was sent to the
netlink socket, but the sequence number had not yet been registered
for routing back to the context that it was sent from. This caused
messages to periodically disappear unexpectedly.
2. There was some inconsistency in how Nlmsg::Done packets were handled.
This commit standardizes on always returning them from the iteratora.
While this may not be preferable from a user standpoint, it will
significantly simplify the code, resulting in less room for error in the
future.
@cgzones
Copy link
Contributor

cgzones commented Sep 13, 2023

This indeed resolve #214; thanks!

Could you include a regression test to prevent future breakage?

@jbaublitz
Copy link
Owner Author

Absolutely. Is the specific operation you were running that triggered the bug sufficient to just add to a unit test or did you want something more involved?

@cgzones
Copy link
Contributor

cgzones commented Sep 15, 2023

Is the specific operation you were running that triggered the bug sufficient to just add to a unit test or did you want something more involved?

Should be sufficient, since it was 100% reproducible for me.

@jbaublitz
Copy link
Owner Author

I'll try to get to this early next week.

@jbaublitz jbaublitz merged commit fc27987 into main Nov 3, 2023
44 checks passed
@dlon
Copy link

dlon commented Nov 8, 2023

Thank you for fixing this! @jbaublitz could you release a new version containing the fix?

@jbaublitz
Copy link
Owner Author

@dlon Working on #224 tonight and will hopefully release 0.7.0-rc3 by tomorrow.

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

Successfully merging this pull request may close these issues.

Iterating NlRouterReceiverHandle blocks forever GETROUTE does not receive responses in 0.7rc
3 participants