1
0
mirror of https://git.openwrt.org/feed/packages.git synced 2024-06-15 11:53:59 +02:00
openwrt-packages/libs/avahi/patches/100-p2p-no-iff_multicast-required.patch
Ilya Lipnitskiy 5d8d4fbbcb
treewide: Run refresh on all packages
The crude loop I wrote to come up with this changeset:

  find -L package/feeds/packages/ -name patches | \
  sed 's/patches$/refresh/' | sort | xargs make

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-02-20 16:02:15 -08:00

46 lines
2.2 KiB
Diff

commit 2b6bccca5d9d8ab7f11219a639707b325910a0b1
Author: Philip Prindeville <philipp@redfish-solutions.com>
Date: Thu Sep 17 00:27:55 2020 +0000
Logic for p2p on tunnels incorrectly requires IFF_MULTICAST (#305)
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
--- a/avahi-core/iface-linux.c
+++ b/avahi-core/iface-linux.c
@@ -105,8 +105,8 @@ static void netlink_callback(AvahiNetlin
(ifinfomsg->ifi_flags & IFF_UP) &&
(!m->server->config.use_iff_running || (ifinfomsg->ifi_flags & IFF_RUNNING)) &&
((ifinfomsg->ifi_flags & IFF_LOOPBACK) ||
- (ifinfomsg->ifi_flags & IFF_MULTICAST)) &&
- (m->server->config.allow_point_to_point || !(ifinfomsg->ifi_flags & IFF_POINTOPOINT));
+ (ifinfomsg->ifi_flags & IFF_MULTICAST) ||
+ ((ifinfomsg->ifi_flags & IFF_POINTOPOINT) && m->server->config.allow_point_to_point));
/* Handle interface attributes */
l = NLMSG_PAYLOAD(n, sizeof(struct ifinfomsg));
--- a/avahi-core/iface-pfroute.c
+++ b/avahi-core/iface-pfroute.c
@@ -81,8 +81,8 @@ static void rtm_info(struct rt_msghdr *r
(ifm->ifm_flags & IFF_UP) &&
(!m->server->config.use_iff_running || (ifm->ifm_flags & IFF_RUNNING)) &&
((ifm->ifm_flags & IFF_LOOPBACK) ||
- (ifm->ifm_flags & IFF_MULTICAST)) &&
- (m->server->config.allow_point_to_point || !(ifm->ifm_flags & IFF_POINTOPOINT));
+ (ifm->ifm_flags & IFF_MULTICAST) ||
+ ((ifm->ifm_flags & IFF_POINTOPOINT) && m->server->config.allow_point_to_point));
avahi_free(hw->name);
hw->name = avahi_strndup(sdl->sdl_data, sdl->sdl_nlen);
@@ -428,8 +428,8 @@ static void if_add_interface(struct lifr
(flags & IFF_UP) &&
(!m->server->config.use_iff_running || (flags & IFF_RUNNING)) &&
((flags & IFF_LOOPBACK) ||
- (flags & IFF_MULTICAST)) &&
- (m->server->config.allow_point_to_point || !(flags & IFF_POINTOPOINT));
+ (flags & IFF_MULTICAST) ||
+ ((flags & IFF_POINTOPOINT) && m->server->config.allow_point_to_point));
hw->name = avahi_strdup(lifreq->lifr_name);
hw->mtu = mtu;
/* TODO get mac address */