Apple “Feedback” #12149764.
man 3 getifaddrs:
The ifa_dstaddr field references the destination address on a P2P interface, if one exists, otherwise it contains the broadcast address.
In my testing the
ifa_dstaddr field is never non-null. I’m not sure I have any suitably configured P2P interfaces, but I definitely have interfaces with broadcast capabilities and
getifaddrs reports them as having no broadcast address (even though it correctly notes they support broadcasting, in
This is on macOS Ventura 13.3.1. I have no idea if this applies to other versions of macOS, or other OS’s.
It appears there’s a workaround, though – the broadcast address is deterministic based on the IP address & netmask, according to Wikipedia, so you don’t technically need
getifaddrs to spell it out for you. That’s for AF_INET (IPv4) networks. IPv6 doesn’t really have the same notion of a broadcast address anyway, and for other network types I have no idea if the concept applies or if there’s workarounds for this