Change behavior of Subscribe
to non-blocking. Fix test.
#941
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When listening for IPv6 address changes, I found that a netlink socket that is subscribed to a group is not returning from
Receive
when there is message in the socket. After some researching, I found that libnl suggest setting socket to non-blocking when subscribing to groups. Ref This is probably caused by a bug in kernel.My test machine runs in 5.10, before,
addrSubscribeAt
would only exit on timeout; after the patch, it correctly sending addr to channels on each new addr.Also fixed test related to BareUDP, which requires "bareudp" kmod. Ref