From: Christos Sfakianakis <csfakian(a)redhat.com>
Ensure objects in a namespace are updated properly when setting
values for remote devices.
Signed-off-by: Christos Sfakianakis <csfakian(a)redhat.com>
---
lnst/Controller/Namespace.py | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/lnst/Controller/Namespace.py b/lnst/Controller/Namespace.py
index 35155be..88f82eb 100644
--- a/lnst/Controller/Namespace.py
+++ b/lnst/Controller/Namespace.py
@@ -145,6 +145,12 @@ class Namespace(object):
if isinstance(value, RemoteDevice):
if value.ifindex is not None:
+ if value.netns is self:
+ if name not in self._objects:
+ self._objects[name] = value
+ elif self._objects[name] is not value:
+ raise HostError("Different object with same name is already
assined")
+ return True
old_ns = value.netns
old_ns._unset(value)
self._machine.remote_device_set_netns(value, self, old_ns)
--
2.17.1