]> code.ossystems Code Review - openembedded-core.git/commitdiff
busybox: Backport patch to fix zcip false-conflict
authorBrad Mouring <brad.mouring@ni.com>
Sat, 26 Mar 2016 02:20:05 +0000 (21:20 -0500)
committerJoshua Lock <joshua.g.lock@intel.com>
Fri, 6 May 2016 14:51:14 +0000 (15:51 +0100)
Busybox upstream fixed the issue where an incorrect comparison of
addresses led to bogus renegotiation of a new ll ip in 1.24. Backport
this change to 1.23.1.

Signed-off-by: Brad Mouring <brad.mouring@ni.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
meta/recipes-core/busybox/busybox/0001-zcip-fix-wrong-comparison-of-source-IP-with-our-IP.patch [new file with mode: 0644]
meta/recipes-core/busybox/busybox_1.23.1.bb

diff --git a/meta/recipes-core/busybox/busybox/0001-zcip-fix-wrong-comparison-of-source-IP-with-our-IP.patch b/meta/recipes-core/busybox/busybox/0001-zcip-fix-wrong-comparison-of-source-IP-with-our-IP.patch
new file mode 100644 (file)
index 0000000..83bd114
--- /dev/null
@@ -0,0 +1,34 @@
+From 4d15068d83054a9f82b3f8842706cd6deb401e25 Mon Sep 17 00:00:00 2001
+From: Vladislav Grishenko <themiron@mail.ru>
+Date: Thu, 19 Mar 2015 16:19:35 +0500
+Subject: [PATCH] zcip: fix wrong comparison of source IP with our IP
+
+Commit "zcip: fix link-local IP conflict detection" has introduced
+wrong comparsion of source IP with our IP. This leads to a new IP
+being picked unnecessarily on every incoming ARP packet.
+
+Signed-off-by: Vladislav Grishenko <themiron@mail.ru>
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
+Signed-off-by: Brad Mouring <brad.mouring@ni.com>
+
+Upstream-Status: Backport (4d15068, added in 1.24)
+---
+ networking/zcip.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/networking/zcip.c b/networking/zcip.c
+index a3307c5..962ba2e 100644
+--- a/networking/zcip.c
++++ b/networking/zcip.c
+@@ -521,7 +521,7 @@ int zcip_main(int argc UNUSED_PARAM, char **argv)
+                       target_ip_conflict = 0;
+                       if (memcmp(&p.arp.arp_sha, &eth_addr, ETH_ALEN) != 0) {
+-                              if (memcmp(p.arp.arp_spa, &ip.s_addr, sizeof(struct in_addr))) {
++                              if (memcmp(p.arp.arp_spa, &ip.s_addr, sizeof(struct in_addr)) == 0) {
+                                       /* A probe or reply with source_ip == chosen ip */
+                                       source_ip_conflict = 1;
+                               }
+-- 
+2.7.3
+
index 7c3ed843945df57b8cd4b9f7e0148e17a55808f2..2360fa9a968eac5b80b8d454257826501bb48e36 100644 (file)
@@ -30,6 +30,7 @@ SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://login-utilities.cfg \
            file://recognize_connmand.patch \
            file://busybox-cross-menuconfig.patch \
+           file://0001-zcip-fix-wrong-comparison-of-source-IP-with-our-IP.patch \
 "
 
 SRC_URI[tarball.md5sum] = "5c94d6301a964cd91619bd4d74605245"