X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-core%2Fiface-linux.c;h=c8ed9e05c6e913a58b7a9e9c30f4690b4c513a05;hb=f37ae8b0f302a089baae50b18195b03c2f789ea4;hp=985fe3f9ef1413f37e451ab69f6a4bd234eaf018;hpb=3073103812f0ea376582eb0ff1479945a847b361;p=catta diff --git a/avahi-core/iface-linux.c b/avahi-core/iface-linux.c index 985fe3f..c8ed9e0 100644 --- a/avahi-core/iface-linux.c +++ b/avahi-core/iface-linux.c @@ -34,6 +34,16 @@ #include "iface.h" #include "iface-linux.h" +#ifndef IFLA_RTA +#include +#define IFLA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg)))) +#endif + +#ifndef IFA_RTA +#include +#define IFA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifaddrmsg)))) +#endif + static int netlink_list_items(AvahiNetlink *nl, uint16_t type, unsigned *ret_seq) { struct nlmsghdr *n; struct rtgenmsg *gen; @@ -98,7 +108,7 @@ static void netlink_callback(AvahiNetlink *nl, struct nlmsghdr *n, void* userdat (!m->server->config.use_iff_running || (ifinfomsg->ifi_flags & IFF_RUNNING)) && !(ifinfomsg->ifi_flags & IFF_LOOPBACK) && (ifinfomsg->ifi_flags & IFF_MULTICAST) && - !(ifinfomsg->ifi_flags & IFF_POINTOPOINT); + (m->server->config.allow_point_to_point || !(ifinfomsg->ifi_flags & IFF_POINTOPOINT)); /* Handle interface attributes */ l = NLMSG_PAYLOAD(n, sizeof(struct ifinfomsg));