mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
lxc conf2xml: convert lxc.network.name for veth networks
This commit is contained in:
parent
3ba0469ce6
commit
7c10a77422
@ -339,7 +339,8 @@ lxcCreateNetDef(const char *type,
|
|||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
const char *mac,
|
const char *mac,
|
||||||
const char *flag,
|
const char *flag,
|
||||||
const char *macvlanmode)
|
const char *macvlanmode,
|
||||||
|
const char *name)
|
||||||
{
|
{
|
||||||
virDomainNetDefPtr net = NULL;
|
virDomainNetDefPtr net = NULL;
|
||||||
virMacAddr macAddr;
|
virMacAddr macAddr;
|
||||||
@ -354,6 +355,8 @@ lxcCreateNetDef(const char *type,
|
|||||||
net->linkstate = VIR_DOMAIN_NET_INTERFACE_LINK_STATE_DOWN;
|
net->linkstate = VIR_DOMAIN_NET_INTERFACE_LINK_STATE_DOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (VIR_STRDUP(net->ifname_guest, name) < 0)
|
||||||
|
goto error;
|
||||||
|
|
||||||
if (mac && virMacAddrParse(mac, &macAddr) == 0)
|
if (mac && virMacAddrParse(mac, &macAddr) == 0)
|
||||||
net->mac = macAddr;
|
net->mac = macAddr;
|
||||||
@ -417,7 +420,8 @@ lxcAddNetworkDefinition(virDomainDefPtr def,
|
|||||||
const char *mac,
|
const char *mac,
|
||||||
const char *flag,
|
const char *flag,
|
||||||
const char *macvlanmode,
|
const char *macvlanmode,
|
||||||
const char *vlanid)
|
const char *vlanid,
|
||||||
|
const char *name)
|
||||||
{
|
{
|
||||||
virDomainNetDefPtr net = NULL;
|
virDomainNetDefPtr net = NULL;
|
||||||
virDomainHostdevDefPtr hostdev = NULL;
|
virDomainHostdevDefPtr hostdev = NULL;
|
||||||
@ -453,7 +457,7 @@ lxcAddNetworkDefinition(virDomainDefPtr def,
|
|||||||
goto error;
|
goto error;
|
||||||
def->hostdevs[def->nhostdevs - 1] = hostdev;
|
def->hostdevs[def->nhostdevs - 1] = hostdev;
|
||||||
} else {
|
} else {
|
||||||
if (!(net = lxcCreateNetDef(type, linkdev, mac, flag, macvlanmode)))
|
if (!(net = lxcCreateNetDef(type, linkdev, mac, flag, macvlanmode, name)))
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
if (VIR_EXPAND_N(def->nets, def->nnets, 1) < 0)
|
if (VIR_EXPAND_N(def->nets, def->nnets, 1) < 0)
|
||||||
@ -477,6 +481,7 @@ typedef struct {
|
|||||||
char *flag;
|
char *flag;
|
||||||
char *macvlanmode;
|
char *macvlanmode;
|
||||||
char *vlanid;
|
char *vlanid;
|
||||||
|
char *name;
|
||||||
bool privnet;
|
bool privnet;
|
||||||
size_t networks;
|
size_t networks;
|
||||||
} lxcNetworkParseData;
|
} lxcNetworkParseData;
|
||||||
@ -493,7 +498,8 @@ lxcNetworkWalkCallback(const char *name, virConfValuePtr value, void *data)
|
|||||||
parseData->link, parseData->mac,
|
parseData->link, parseData->mac,
|
||||||
parseData->flag,
|
parseData->flag,
|
||||||
parseData->macvlanmode,
|
parseData->macvlanmode,
|
||||||
parseData->vlanid);
|
parseData->vlanid,
|
||||||
|
parseData->name);
|
||||||
|
|
||||||
if (status < 0)
|
if (status < 0)
|
||||||
return -1;
|
return -1;
|
||||||
@ -509,6 +515,7 @@ lxcNetworkWalkCallback(const char *name, virConfValuePtr value, void *data)
|
|||||||
parseData->flag = NULL;
|
parseData->flag = NULL;
|
||||||
parseData->macvlanmode = NULL;
|
parseData->macvlanmode = NULL;
|
||||||
parseData->vlanid = NULL;
|
parseData->vlanid = NULL;
|
||||||
|
parseData->name = NULL;
|
||||||
|
|
||||||
/* Keep the new value */
|
/* Keep the new value */
|
||||||
parseData->type = value->str;
|
parseData->type = value->str;
|
||||||
@ -523,6 +530,8 @@ lxcNetworkWalkCallback(const char *name, virConfValuePtr value, void *data)
|
|||||||
parseData->macvlanmode = value->str;
|
parseData->macvlanmode = value->str;
|
||||||
else if (STREQ(name, "lxc.network.vlan.id"))
|
else if (STREQ(name, "lxc.network.vlan.id"))
|
||||||
parseData->vlanid = value->str;
|
parseData->vlanid = value->str;
|
||||||
|
else if (STREQ(name, "lxc.network.name"))
|
||||||
|
parseData->name = value->str;
|
||||||
else if (STRPREFIX(name, "lxc.network"))
|
else if (STRPREFIX(name, "lxc.network"))
|
||||||
VIR_WARN("Unhandled network property: %s = %s",
|
VIR_WARN("Unhandled network property: %s = %s",
|
||||||
name,
|
name,
|
||||||
@ -536,7 +545,7 @@ lxcConvertNetworkSettings(virDomainDefPtr def, virConfPtr properties)
|
|||||||
{
|
{
|
||||||
int status;
|
int status;
|
||||||
lxcNetworkParseData data = {def, NULL, NULL, NULL, NULL,
|
lxcNetworkParseData data = {def, NULL, NULL, NULL, NULL,
|
||||||
NULL, NULL, true, 0};
|
NULL, NULL, NULL, true, 0};
|
||||||
|
|
||||||
virConfWalk(properties, lxcNetworkWalkCallback, &data);
|
virConfWalk(properties, lxcNetworkWalkCallback, &data);
|
||||||
|
|
||||||
@ -544,7 +553,8 @@ lxcConvertNetworkSettings(virDomainDefPtr def, virConfPtr properties)
|
|||||||
status = lxcAddNetworkDefinition(def, data.type, data.link,
|
status = lxcAddNetworkDefinition(def, data.type, data.link,
|
||||||
data.mac, data.flag,
|
data.mac, data.flag,
|
||||||
data.macvlanmode,
|
data.macvlanmode,
|
||||||
data.vlanid);
|
data.vlanid,
|
||||||
|
data.name);
|
||||||
if (status < 0)
|
if (status < 0)
|
||||||
return -1;
|
return -1;
|
||||||
else if (status > 0)
|
else if (status > 0)
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
lxc.network.type = phys
|
lxc.network.type = phys
|
||||||
lxc.network.link = eth0
|
lxc.network.link = eth0
|
||||||
|
lxc.network.name = eth1
|
||||||
|
|
||||||
lxc.rootfs = /var/lib/lxc/migrate_test/rootfs
|
lxc.rootfs = /var/lib/lxc/migrate_test/rootfs
|
||||||
lxc.utsname = migrate_test
|
lxc.utsname = migrate_test
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
<interface type='bridge'>
|
<interface type='bridge'>
|
||||||
<mac address='02:00:15:8f:05:c1'/>
|
<mac address='02:00:15:8f:05:c1'/>
|
||||||
<source bridge='virbr0'/>
|
<source bridge='virbr0'/>
|
||||||
|
<guest dev='eth0'/>
|
||||||
<link state='up'/>
|
<link state='up'/>
|
||||||
</interface>
|
</interface>
|
||||||
<console type='pty'>
|
<console type='pty'>
|
||||||
|
Loading…
Reference in New Issue
Block a user