$OpenBSD: patch-gio_gnetworkmonitornetlink_c,v 1.1 2014/04/06 12:17:29 ajacoutot Exp $

From c7a661988eb8fd18fb02565d83f52b0136fd3e85 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Olivier=20Cr=C3=AAte?= <olivier.crete@collabora.com>
Date: Wed, 26 Mar 2014 19:45:52 -0400
Subject: networkmonitornetlink: IN6_IS_ADDR_MC_LINKLOCAL is only guaranteed to

--- gio/gnetworkmonitornetlink.c.orig	Mon Feb  3 18:40:41 2014
+++ gio/gnetworkmonitornetlink.c	Sun Apr  6 13:52:40 2014
@@ -382,10 +382,13 @@ read_netlink_messages (GSocket      *socket,
                * IPv6 link-local multicast routes, which are added and
                * removed all the time for some reason.
                */
+#define UNALIGNED_IN6_IS_ADDR_MC_LINKLOCAL(a)           \
+              ((a[0] == 0xff) && ((a[1] & 0xf) == 0x2))
+
               if (!nl->priv->dump_networks &&
                   rtmsg->rtm_family == AF_INET6 &&
                   rtmsg->rtm_dst_len != 0 &&
-                  IN6_IS_ADDR_MC_LINKLOCAL (dest))
+                  UNALIGNED_IN6_IS_ADDR_MC_LINKLOCAL (dest))
                 continue;
 
               if (msg->nlmsg_type == RTM_NEWROUTE)
