Nick Briggs
Nick Briggs
`sizeof(*rtm)` rather than `sizeof(&rtm)` if you're not going to use `sizeof(struct rt_msghdr)` But even with that correction, it still takes a segmentation fault (on FreeBSD) if you add or delete...
The documentation for FreeBSD route(4) says > > The RTM_IFINFO message uses a if_msghdr header, the RTM_NEWADDR and > RTM_DELADDR messages use a ifa_msghdr header, the RTM_NEWMADDR and > RTM_DELMADDR...
No SIGSEGVs now. It does get a bit confused if you delete the only IPv4 address off the interface it's listening on -- a situation that wouldn't have made sense...
I just had a quick look to see if it was actually easy to implement the IPv6 part, at least for collecting the information for the "face" (interface.c:if_new). It looks...
More on the SIOCGIFCONF etc. The code in kiface.c (from ripd's kroute.c) appears to predate the getifaddrs() call, which should probably replace the sysctl() calls in fetchifs(), and fetches all...
I'll try to have a look soon-- I have a FreeBSD 12.0 32-bit system plus a load of macOS/iOS devices on a network with IPv6 enabled. There are some windows...
The first thing I ran into was in mdnsd/mdnsd.c:155 where you are using a "struct sockaddr addr" for storage on the stack. It's not big enough (should probably be sockaddr_storage)...
@twinshadow -- I looked at the change you made regarding the sockaddr_storage. You left it passing `sizeof(sockaddr)`, being the size of a generic sockaddr_storage, which results in an invalid argument...
Likewise for the FreeBSD port -- it uses codeload.github.com to pick up 0.7, which doesn't have the latest logging changes.
Thanks, that worked. It would be helpful if the README.md also mentioned what parts of setting up a new publisher are done already by the "gmake setup ..." and what...