]> 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>
Tue, 26 Jan 2021 20:43:45 +0000 (21:43 +0100)
commite8f5354b354e8e875beab6bcc7351bac88c8f28a
tree96b2cda45246fdf034b38440049f214007855506
parent2581d11ae296bf908f0a3754135a16187400232d
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