]> git.meshlink.io Git - meshlink/commit
Handle network change detection on macOS and iOS.
authorGuus Sliepen <guus@meshlink.io>
Sun, 18 Oct 2020 20:50:50 +0000 (22:50 +0200)
committerGuus Sliepen <guus@meshlink.io>
Thu, 15 Apr 2021 18:30:51 +0000 (20:30 +0200)
commitc68c5ebd8abf7a91f3d0ea3d05aa872b6a40d78e
tree83384d36e5c8e6a58e75dd91775c371188d90c88
parent3d383945903a482acc17ee0254ee03ea479fe52c
Handle network change detection on macOS and iOS.

Apple has no usable PFROUTE sockets anymore, instead network change
detection should be done via SystemConfiguration callbacks. However,
actually parsing the messages is very annoying in C, so we only use it to
get notified of changes, we use getifaddrs() to get the actual list of
network interfaces and addresses.

The only issue is that interface up/down state changes do not result in a
notification, only interface and address addition/removal.
configure.ac
src/discovery.c
src/meshlink_internal.h