[libvirt] [PATCH 3/5] ip link needs 'name' in 3.16 to create the veth pair

Cédric Bosdonnat cbosdonnat at suse.com
Mon Nov 24 20:54:44 UTC 2014


Due to a change (or bug?) in ip link implementation, the command
    'ip link add vnet0...'
is forced into
    'ip link add name vnet0...'
The changed command also works on older versions of iproute2, just the
'name' parameter has been made mandatory.
---
 src/util/virnetdevveth.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/util/virnetdevveth.c b/src/util/virnetdevveth.c
index e9d6f9c..ad30e1d 100644
--- a/src/util/virnetdevveth.c
+++ b/src/util/virnetdevveth.c
@@ -89,7 +89,7 @@ static int virNetDevVethGetFreeNum(int startDev)
  * @veth2: pointer to return name for container end of veth pair
  *
  * Creates a veth device pair using the ip command:
- * ip link add veth1 type veth peer name veth2
+ * ip link add name veth1 type veth peer name veth2
  * If veth1 points to NULL on entry, it will be a valid interface on
  * return.  veth2 should point to NULL on entry.
  *
@@ -146,7 +146,7 @@ int virNetDevVethCreate(char** veth1, char** veth2)
         }
 
         cmd = virCommandNew("ip");
-        virCommandAddArgList(cmd, "link", "add",
+        virCommandAddArgList(cmd, "link", "add", "name",
                              *veth1 ? *veth1 : veth1auto,
                              "type", "veth", "peer", "name",
                              *veth2 ? *veth2 : veth2auto,
-- 
2.1.2




More information about the libvir-list mailing list