mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
Fix adding ports to OVS bridges without VLAN tags
The introduction of the new VLAN code, along with the fix
from 5e465df6be
, caused the
addition of OVS ports to fail with the following message:
ovs-vsctl: 00002|vsctl|ERR|: missing column name
This fix takes into account the VLAN arguments are optional,
and correctly sets up the command line to run the "ovs-vsctl"
command to add ports to the OVS bridge.
Signed-off-by: Kyle Mestery <kmestery@cisco.com>
CC: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
f781e27653
commit
7b9d55e629
@ -104,9 +104,15 @@ int virNetDevOpenvswitchAddPort(const char *brname, const char *ifname,
|
||||
}
|
||||
|
||||
cmd = virCommandNew(OVSVSCTL);
|
||||
|
||||
virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
|
||||
brname, ifname, NULL);
|
||||
|
||||
if (virBufferUse(&buf) != 0)
|
||||
virCommandAddArgList(cmd, virBufferCurrentContent(&buf), NULL);
|
||||
|
||||
if (ovsport->profileID[0] == '\0') {
|
||||
virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
|
||||
brname, ifname, virBufferCurrentContent(&buf),
|
||||
virCommandAddArgList(cmd,
|
||||
"--", "set", "Interface", ifname, attachedmac_ex_id,
|
||||
"--", "set", "Interface", ifname, ifaceid_ex_id,
|
||||
"--", "set", "Interface", ifname, vmid_ex_id,
|
||||
@ -114,8 +120,7 @@ int virNetDevOpenvswitchAddPort(const char *brname, const char *ifname,
|
||||
"external-ids:iface-status=active",
|
||||
NULL);
|
||||
} else {
|
||||
virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
|
||||
brname, ifname, virBufferCurrentContent(&buf),
|
||||
virCommandAddArgList(cmd,
|
||||
"--", "set", "Interface", ifname, attachedmac_ex_id,
|
||||
"--", "set", "Interface", ifname, ifaceid_ex_id,
|
||||
"--", "set", "Interface", ifname, vmid_ex_id,
|
||||
|
Loading…
Reference in New Issue
Block a user