mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
bridge_driver: Introduce a helper for virNetworkObjSetMacMap()
Currently, whenever virNetworkObjSetMacMap() is called the same pattern is used: 1) call virMacMapFileName() to generate a filename, 2) pass this filename to virMacMapNew(), and finally 3) pass retval from previous step to virNetworkObjSetMacMap(). Move this code into a helper (networkSetMacMap()) and replace both pattern occurrences with its call. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
107dfcea34
commit
2efd0dd9c3
@ -443,6 +443,24 @@ networkUpdatePort(virNetworkPortDef *port,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
networkSetMacMap(virNetworkDriverState *driver,
|
||||||
|
virNetworkObj *obj)
|
||||||
|
{
|
||||||
|
virNetworkDef *def = virNetworkObjGetDef(obj);
|
||||||
|
g_autoptr(virMacMap) macmap = NULL;
|
||||||
|
g_autofree char *macMapFile = NULL;
|
||||||
|
|
||||||
|
if (!(macMapFile = virMacMapFileName(driver->dnsmasqStateDir,
|
||||||
|
def->bridge)))
|
||||||
|
return -1;
|
||||||
|
if (!(macmap = virMacMapNew(macMapFile)))
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
virNetworkObjSetMacMap(obj, &macmap);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
networkUpdateState(virNetworkObj *obj,
|
networkUpdateState(virNetworkObj *obj,
|
||||||
void *opaque)
|
void *opaque)
|
||||||
@ -450,8 +468,6 @@ networkUpdateState(virNetworkObj *obj,
|
|||||||
virNetworkDef *def;
|
virNetworkDef *def;
|
||||||
virNetworkDriverState *driver = opaque;
|
virNetworkDriverState *driver = opaque;
|
||||||
g_autoptr(dnsmasqCaps) dnsmasq_caps = networkGetDnsmasqCaps(driver);
|
g_autoptr(dnsmasqCaps) dnsmasq_caps = networkGetDnsmasqCaps(driver);
|
||||||
g_autoptr(virMacMap) macmap = NULL;
|
|
||||||
g_autofree char *macMapFile = NULL;
|
|
||||||
VIR_LOCK_GUARD lock = virObjectLockGuard(obj);
|
VIR_LOCK_GUARD lock = virObjectLockGuard(obj);
|
||||||
|
|
||||||
if (!virNetworkObjIsActive(obj))
|
if (!virNetworkObjIsActive(obj))
|
||||||
@ -468,15 +484,9 @@ networkUpdateState(virNetworkObj *obj,
|
|||||||
if (!(def->bridge && virNetDevExists(def->bridge) == 1))
|
if (!(def->bridge && virNetDevExists(def->bridge) == 1))
|
||||||
virNetworkObjSetActive(obj, false);
|
virNetworkObjSetActive(obj, false);
|
||||||
|
|
||||||
if (!(macMapFile = virMacMapFileName(driver->dnsmasqStateDir,
|
if (networkSetMacMap(driver, obj) < 0)
|
||||||
def->bridge)))
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (!(macmap = virMacMapNew(macMapFile)))
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
virNetworkObjSetMacMap(obj, &macmap);
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_NETWORK_FORWARD_BRIDGE:
|
case VIR_NETWORK_FORWARD_BRIDGE:
|
||||||
@ -1938,8 +1948,6 @@ networkStartNetworkVirtual(virNetworkDriverState *driver,
|
|||||||
virErrorPtr save_err = NULL;
|
virErrorPtr save_err = NULL;
|
||||||
virNetworkIPDef *ipdef;
|
virNetworkIPDef *ipdef;
|
||||||
virNetDevIPRoute *routedef;
|
virNetDevIPRoute *routedef;
|
||||||
g_autoptr(virMacMap) macmap = NULL;
|
|
||||||
g_autofree char *macMapFile = NULL;
|
|
||||||
bool dnsmasqStarted = false;
|
bool dnsmasqStarted = false;
|
||||||
bool devOnline = false;
|
bool devOnline = false;
|
||||||
bool firewalRulesAdded = false;
|
bool firewalRulesAdded = false;
|
||||||
@ -1966,13 +1974,9 @@ networkStartNetworkVirtual(virNetworkDriverState *driver,
|
|||||||
if (virNetDevBridgeCreate(def->bridge, &def->mac) < 0)
|
if (virNetDevBridgeCreate(def->bridge, &def->mac) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (!(macMapFile = virMacMapFileName(driver->dnsmasqStateDir,
|
if (networkSetMacMap(driver, obj) < 0)
|
||||||
def->bridge)) ||
|
|
||||||
!(macmap = virMacMapNew(macMapFile)))
|
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
virNetworkObjSetMacMap(obj, &macmap);
|
|
||||||
|
|
||||||
/* Set bridge options */
|
/* Set bridge options */
|
||||||
|
|
||||||
if (def->mtu && virNetDevSetMTU(def->bridge, def->mtu) < 0)
|
if (def->mtu && virNetDevSetMTU(def->bridge, def->mtu) < 0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user