Hello community,

here is the log from the commit of package wicked for openSUSE:Factory checked 
in at 2016-02-25 21:42:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wicked (Old)
 and      /work/SRC/openSUSE:Factory/.wicked.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "wicked"

Changes:
--------
--- /work/SRC/openSUSE:Factory/wicked/wicked.changes    2016-02-05 
00:30:15.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.wicked.new/wicked.changes       2016-02-25 
21:42:09.000000000 +0100
@@ -1,0 +2,7 @@
+Mon Feb 22 12:24:21 UTC 2016 - [email protected]
+
+- fsm: do not segfault on device hierarchy loops (bnc#959356);
+  corrected pull#618 fix to not reset master and use its name then.
+  [+ 0001-fsm-do-not-use-master-name-after-reset-bsc-959356.patch]
+
+-------------------------------------------------------------------

New:
----
  0001-fsm-do-not-use-master-name-after-reset-bsc-959356.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ wicked.spec ++++++
--- /var/tmp/diff_new_pack.j5LaqI/_old  2016-02-25 21:42:10.000000000 +0100
+++ /var/tmp/diff_new_pack.j5LaqI/_new  2016-02-25 21:42:10.000000000 +0100
@@ -34,6 +34,8 @@
 # exception will be silently removed with the next version update.
 # Please use pull requests at https://github.com/openSUSE/wicked/ instead.
 #
+Patch1:         0001-fsm-do-not-use-master-name-after-reset-bsc-959356.patch
+
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  autoconf
 BuildRequires:  automake
@@ -167,6 +169,7 @@
 
 %prep
 %setup
+%patch1 -p1
 
 %build
 test -x ./configure || autoreconf --force --install

++++++ 0001-fsm-do-not-use-master-name-after-reset-bsc-959356.patch ++++++
>From 2468b755e9c9c682b48d5609e7e5c976a09e035e Mon Sep 17 00:00:00 2001
From: Marius Tomaschewski <[email protected]>
Date: Fri, 19 Feb 2016 08:55:22 +0100
Subject: [PATCH] fsm: do not use master name after reset (bsc#959356)

---
 src/fsm.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/fsm.c b/src/fsm.c
index 1e6d760..02c43ff 100644
--- a/src/fsm.c
+++ b/src/fsm.c
@@ -2981,26 +2981,26 @@ ni_ifworker_references_ok(const ni_ifworker_array_t 
*guard, ni_ifworker_t *w)
 {
        if (w->masterdev && w->lowerdev && ((w->masterdev == w->lowerdev) ||
            ni_string_eq(w->masterdev->name, w->lowerdev->name))) {
+               ni_ifworker_fail(w, "references %s as master and as lower 
device",
+                               w->masterdev->name);
                ni_ifworker_array_remove(&w->lowerdev->lowerdev_for, w);
                ni_ifworker_array_remove(&w->masterdev->children, w);
                ni_ifworker_set_ref(&w->lowerdev, NULL);
                ni_ifworker_set_ref(&w->masterdev, NULL);
-               ni_ifworker_fail(w, "references %s as master and as lower 
device",
-                               w->masterdev->name);
                return FALSE;
        }
 
        if (w == w->lowerdev || (w->lowerdev && ni_string_eq(w->name, 
w->lowerdev->name))) {
+               ni_ifworker_fail(w, "references itself as lower device");
                ni_ifworker_array_remove(&w->lowerdev->lowerdev_for, w);
                ni_ifworker_set_ref(&w->lowerdev, NULL);
-               ni_ifworker_fail(w, "references itself as lower device");
                return FALSE;
        }
 
        if (w == w->masterdev || (w->masterdev && ni_string_eq(w->name, 
w->masterdev->name))) {
+               ni_ifworker_fail(w, "references itself as master device");
                ni_ifworker_array_remove(&w->masterdev->children, w);
                ni_ifworker_set_ref(&w->masterdev, NULL);
-               ni_ifworker_fail(w, "references itself as master device");
                return FALSE;
        }
 
-- 
2.6.2


Reply via email to