mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
Rename virVirtualPortProfileParams & APIs
Rename the virVirtualPortProfileParams struct to be virNetDevVPortProfile, and rename the APIs to match this prefix. * src/util/network.c, src/util/network.h: Rename port profile APIs * src/conf/domain_conf.c, src/conf/domain_conf.h, src/conf/network_conf.c, src/conf/network_conf.h, src/network/bridge_driver.c, src/qemu/qemu_hotplug.c, src/util/macvtap.c, src/util/macvtap.h: Update for renamed APIs/structs
This commit is contained in:
parent
b1451b6c07
commit
767e01ceb1
@ -3112,8 +3112,8 @@ virDomainActualNetDefParseXML(xmlNodePtr node,
|
|||||||
|
|
||||||
virtPortNode = virXPathNode("./virtualport", ctxt);
|
virtPortNode = virXPathNode("./virtualport", ctxt);
|
||||||
if (virtPortNode &&
|
if (virtPortNode &&
|
||||||
virVirtualPortProfileParseXML(virtPortNode,
|
virNetDevVPortProfileParse(virtPortNode,
|
||||||
&actual->data.direct.virtPortProfile) < 0) {
|
&actual->data.direct.virtPortProfile) < 0) {
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3169,7 +3169,7 @@ virDomainNetDefParseXML(virCapsPtr caps,
|
|||||||
char *mode = NULL;
|
char *mode = NULL;
|
||||||
char *linkstate = NULL;
|
char *linkstate = NULL;
|
||||||
virNWFilterHashTablePtr filterparams = NULL;
|
virNWFilterHashTablePtr filterparams = NULL;
|
||||||
virVirtualPortProfileParamsPtr virtPort = NULL;
|
virNetDevVPortProfilePtr virtPort = NULL;
|
||||||
virDomainActualNetDefPtr actual = NULL;
|
virDomainActualNetDefPtr actual = NULL;
|
||||||
xmlNodePtr oldnode = ctxt->node;
|
xmlNodePtr oldnode = ctxt->node;
|
||||||
int ret;
|
int ret;
|
||||||
@ -3221,7 +3221,7 @@ virDomainNetDefParseXML(virCapsPtr caps,
|
|||||||
((def->type == VIR_DOMAIN_NET_TYPE_DIRECT) ||
|
((def->type == VIR_DOMAIN_NET_TYPE_DIRECT) ||
|
||||||
(def->type == VIR_DOMAIN_NET_TYPE_NETWORK)) &&
|
(def->type == VIR_DOMAIN_NET_TYPE_NETWORK)) &&
|
||||||
xmlStrEqual(cur->name, BAD_CAST "virtualport")) {
|
xmlStrEqual(cur->name, BAD_CAST "virtualport")) {
|
||||||
if (virVirtualPortProfileParseXML(cur, &virtPort) < 0)
|
if (virNetDevVPortProfileParse(cur, &virtPort) < 0)
|
||||||
goto error;
|
goto error;
|
||||||
} else if ((network == NULL) &&
|
} else if ((network == NULL) &&
|
||||||
((def->type == VIR_DOMAIN_NET_TYPE_SERVER) ||
|
((def->type == VIR_DOMAIN_NET_TYPE_SERVER) ||
|
||||||
@ -9722,7 +9722,7 @@ virDomainActualNetDefFormat(virBufferPtr buf,
|
|||||||
}
|
}
|
||||||
virBufferAsprintf(buf, " mode='%s'/>\n", mode);
|
virBufferAsprintf(buf, " mode='%s'/>\n", mode);
|
||||||
virBufferAdjustIndent(buf, 8);
|
virBufferAdjustIndent(buf, 8);
|
||||||
virVirtualPortProfileFormat(buf, def->data.direct.virtPortProfile);
|
virNetDevVPortProfileFormat(def->data.direct.virtPortProfile, buf);
|
||||||
virBufferAdjustIndent(buf, -8);
|
virBufferAdjustIndent(buf, -8);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -9769,7 +9769,7 @@ virDomainNetDefFormat(virBufferPtr buf,
|
|||||||
def->data.network.portgroup);
|
def->data.network.portgroup);
|
||||||
virBufferAddLit(buf, "/>\n");
|
virBufferAddLit(buf, "/>\n");
|
||||||
virBufferAdjustIndent(buf, 6);
|
virBufferAdjustIndent(buf, 6);
|
||||||
virVirtualPortProfileFormat(buf, def->data.network.virtPortProfile);
|
virNetDevVPortProfileFormat(def->data.network.virtPortProfile, buf);
|
||||||
virBufferAdjustIndent(buf, -6);
|
virBufferAdjustIndent(buf, -6);
|
||||||
if ((flags & VIR_DOMAIN_XML_INTERNAL_ACTUAL_NET) &&
|
if ((flags & VIR_DOMAIN_XML_INTERNAL_ACTUAL_NET) &&
|
||||||
(virDomainActualNetDefFormat(buf, def->data.network.actual) < 0))
|
(virDomainActualNetDefFormat(buf, def->data.network.actual) < 0))
|
||||||
@ -9819,7 +9819,7 @@ virDomainNetDefFormat(virBufferPtr buf,
|
|||||||
virMacvtapModeTypeToString(def->data.direct.mode));
|
virMacvtapModeTypeToString(def->data.direct.mode));
|
||||||
virBufferAddLit(buf, "/>\n");
|
virBufferAddLit(buf, "/>\n");
|
||||||
virBufferAdjustIndent(buf, 6);
|
virBufferAdjustIndent(buf, 6);
|
||||||
virVirtualPortProfileFormat(buf, def->data.direct.virtPortProfile);
|
virNetDevVPortProfileFormat(def->data.direct.virtPortProfile, buf);
|
||||||
virBufferAdjustIndent(buf, -6);
|
virBufferAdjustIndent(buf, -6);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -13079,7 +13079,7 @@ virDomainNetGetActualDirectMode(virDomainNetDefPtr iface)
|
|||||||
return iface->data.network.actual->data.direct.mode;
|
return iface->data.network.actual->data.direct.mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
virVirtualPortProfileParamsPtr
|
virNetDevVPortProfilePtr
|
||||||
virDomainNetGetActualDirectVirtPortProfile(virDomainNetDefPtr iface)
|
virDomainNetGetActualDirectVirtPortProfile(virDomainNetDefPtr iface)
|
||||||
{
|
{
|
||||||
if (iface->type == VIR_DOMAIN_NET_TYPE_DIRECT)
|
if (iface->type == VIR_DOMAIN_NET_TYPE_DIRECT)
|
||||||
|
@ -508,7 +508,7 @@ struct _virDomainActualNetDef {
|
|||||||
struct {
|
struct {
|
||||||
char *linkdev;
|
char *linkdev;
|
||||||
int mode; /* enum virMacvtapMode from util/macvtap.h */
|
int mode; /* enum virMacvtapMode from util/macvtap.h */
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile;
|
virNetDevVPortProfilePtr virtPortProfile;
|
||||||
} direct;
|
} direct;
|
||||||
} data;
|
} data;
|
||||||
virNetDevBandwidthPtr bandwidth;
|
virNetDevBandwidthPtr bandwidth;
|
||||||
@ -542,7 +542,7 @@ struct _virDomainNetDef {
|
|||||||
struct {
|
struct {
|
||||||
char *name;
|
char *name;
|
||||||
char *portgroup;
|
char *portgroup;
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile;
|
virNetDevVPortProfilePtr virtPortProfile;
|
||||||
/* actual has info about the currently used physical
|
/* actual has info about the currently used physical
|
||||||
* device (if the network is of type
|
* device (if the network is of type
|
||||||
* bridge/private/vepa/passthrough). This is saved in the
|
* bridge/private/vepa/passthrough). This is saved in the
|
||||||
@ -564,7 +564,7 @@ struct _virDomainNetDef {
|
|||||||
struct {
|
struct {
|
||||||
char *linkdev;
|
char *linkdev;
|
||||||
int mode; /* enum virMacvtapMode from util/macvtap.h */
|
int mode; /* enum virMacvtapMode from util/macvtap.h */
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile;
|
virNetDevVPortProfilePtr virtPortProfile;
|
||||||
} direct;
|
} direct;
|
||||||
} data;
|
} data;
|
||||||
struct {
|
struct {
|
||||||
@ -1795,7 +1795,7 @@ int virDomainNetGetActualType(virDomainNetDefPtr iface);
|
|||||||
char *virDomainNetGetActualBridgeName(virDomainNetDefPtr iface);
|
char *virDomainNetGetActualBridgeName(virDomainNetDefPtr iface);
|
||||||
char *virDomainNetGetActualDirectDev(virDomainNetDefPtr iface);
|
char *virDomainNetGetActualDirectDev(virDomainNetDefPtr iface);
|
||||||
int virDomainNetGetActualDirectMode(virDomainNetDefPtr iface);
|
int virDomainNetGetActualDirectMode(virDomainNetDefPtr iface);
|
||||||
virVirtualPortProfileParamsPtr
|
virNetDevVPortProfilePtr
|
||||||
virDomainNetGetActualDirectVirtPortProfile(virDomainNetDefPtr iface);
|
virDomainNetGetActualDirectVirtPortProfile(virDomainNetDefPtr iface);
|
||||||
virNetDevBandwidthPtr
|
virNetDevBandwidthPtr
|
||||||
virDomainNetGetActualBandwidth(virDomainNetDefPtr iface);
|
virDomainNetGetActualBandwidth(virDomainNetDefPtr iface);
|
||||||
|
@ -790,8 +790,8 @@ virNetworkPortGroupParseXML(virPortGroupDefPtr def,
|
|||||||
|
|
||||||
virtPortNode = virXPathNode("./virtualport", ctxt);
|
virtPortNode = virXPathNode("./virtualport", ctxt);
|
||||||
if (virtPortNode &&
|
if (virtPortNode &&
|
||||||
(virVirtualPortProfileParseXML(virtPortNode,
|
(virNetDevVPortProfileParse(virtPortNode,
|
||||||
&def->virtPortProfile) < 0)) {
|
&def->virtPortProfile) < 0)) {
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -894,8 +894,8 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt)
|
|||||||
|
|
||||||
virtPortNode = virXPathNode("./virtualport", ctxt);
|
virtPortNode = virXPathNode("./virtualport", ctxt);
|
||||||
if (virtPortNode &&
|
if (virtPortNode &&
|
||||||
(virVirtualPortProfileParseXML(virtPortNode,
|
(virNetDevVPortProfileParse(virtPortNode,
|
||||||
&def->virtPortProfile) < 0)) {
|
&def->virtPortProfile) < 0)) {
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1268,7 +1268,7 @@ virPortGroupDefFormat(virBufferPtr buf,
|
|||||||
}
|
}
|
||||||
virBufferAddLit(buf, ">\n");
|
virBufferAddLit(buf, ">\n");
|
||||||
virBufferAdjustIndent(buf, 4);
|
virBufferAdjustIndent(buf, 4);
|
||||||
virVirtualPortProfileFormat(buf, def->virtPortProfile);
|
virNetDevVPortProfileFormat(def->virtPortProfile, buf);
|
||||||
virNetDevBandwidthFormat(def->bandwidth, buf);
|
virNetDevBandwidthFormat(def->bandwidth, buf);
|
||||||
virBufferAdjustIndent(buf, -4);
|
virBufferAdjustIndent(buf, -4);
|
||||||
virBufferAddLit(buf, " </portgroup>\n");
|
virBufferAddLit(buf, " </portgroup>\n");
|
||||||
@ -1354,7 +1354,7 @@ char *virNetworkDefFormat(const virNetworkDefPtr def)
|
|||||||
}
|
}
|
||||||
|
|
||||||
virBufferAdjustIndent(&buf, 2);
|
virBufferAdjustIndent(&buf, 2);
|
||||||
virVirtualPortProfileFormat(&buf, def->virtPortProfile);
|
virNetDevVPortProfileFormat(def->virtPortProfile, &buf);
|
||||||
virBufferAdjustIndent(&buf, -2);
|
virBufferAdjustIndent(&buf, -2);
|
||||||
|
|
||||||
for (ii = 0; ii < def->nPortGroups; ii++)
|
for (ii = 0; ii < def->nPortGroups; ii++)
|
||||||
|
@ -122,7 +122,7 @@ typedef virPortGroupDef *virPortGroupDefPtr;
|
|||||||
struct _virPortGroupDef {
|
struct _virPortGroupDef {
|
||||||
char *name;
|
char *name;
|
||||||
bool isDefault;
|
bool isDefault;
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile;
|
virNetDevVPortProfilePtr virtPortProfile;
|
||||||
virNetDevBandwidthPtr bandwidth;
|
virNetDevBandwidthPtr bandwidth;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -151,7 +151,7 @@ struct _virNetworkDef {
|
|||||||
virNetworkIpDefPtr ips; /* ptr to array of IP addresses on this network */
|
virNetworkIpDefPtr ips; /* ptr to array of IP addresses on this network */
|
||||||
|
|
||||||
virNetworkDNSDefPtr dns; /* ptr to dns related configuration */
|
virNetworkDNSDefPtr dns; /* ptr to dns related configuration */
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile;
|
virNetDevVPortProfilePtr virtPortProfile;
|
||||||
|
|
||||||
size_t nPortGroups;
|
size_t nPortGroups;
|
||||||
virPortGroupDefPtr portGroups;
|
virPortGroupDefPtr portGroups;
|
||||||
|
@ -786,9 +786,9 @@ virSocketAddrParseIPv4;
|
|||||||
virSocketAddrParseIPv6;
|
virSocketAddrParseIPv6;
|
||||||
virSocketAddrPrefixToNetmask;
|
virSocketAddrPrefixToNetmask;
|
||||||
virSocketAddrSetPort;
|
virSocketAddrSetPort;
|
||||||
virVirtualPortProfileEqual;
|
virNetDevVPortProfileEqual;
|
||||||
virVirtualPortProfileFormat;
|
virNetDevVPortProfileFormat;
|
||||||
virVirtualPortProfileParseXML;
|
virNetDevVPortProfileParse;
|
||||||
|
|
||||||
|
|
||||||
# network_conf.h
|
# network_conf.h
|
||||||
|
@ -2766,7 +2766,7 @@ networkAllocateActualDevice(virDomainNetDefPtr iface)
|
|||||||
(netdef->forwardType == VIR_NETWORK_FORWARD_PRIVATE) ||
|
(netdef->forwardType == VIR_NETWORK_FORWARD_PRIVATE) ||
|
||||||
(netdef->forwardType == VIR_NETWORK_FORWARD_VEPA) ||
|
(netdef->forwardType == VIR_NETWORK_FORWARD_VEPA) ||
|
||||||
(netdef->forwardType == VIR_NETWORK_FORWARD_PASSTHROUGH)) {
|
(netdef->forwardType == VIR_NETWORK_FORWARD_PASSTHROUGH)) {
|
||||||
virVirtualPortProfileParamsPtr virtport = NULL;
|
virNetDevVPortProfilePtr virtport = NULL;
|
||||||
|
|
||||||
/* <forward type='bridge|private|vepa|passthrough'> are all
|
/* <forward type='bridge|private|vepa|passthrough'> are all
|
||||||
* VIR_DOMAIN_NET_TYPE_DIRECT.
|
* VIR_DOMAIN_NET_TYPE_DIRECT.
|
||||||
@ -2838,7 +2838,7 @@ networkAllocateActualDevice(virDomainNetDefPtr iface)
|
|||||||
((netdef->forwardType == VIR_NETWORK_FORWARD_PRIVATE) &&
|
((netdef->forwardType == VIR_NETWORK_FORWARD_PRIVATE) &&
|
||||||
iface->data.network.actual->data.direct.virtPortProfile &&
|
iface->data.network.actual->data.direct.virtPortProfile &&
|
||||||
(iface->data.network.actual->data.direct.virtPortProfile->virtPortType
|
(iface->data.network.actual->data.direct.virtPortProfile->virtPortType
|
||||||
== VIR_VIRTUALPORT_8021QBH))) {
|
== VIR_NETDEV_VPORT_PROFILE_8021QBH))) {
|
||||||
/* pick first dev with 0 usageCount */
|
/* pick first dev with 0 usageCount */
|
||||||
|
|
||||||
for (ii = 0; ii < netdef->nForwardIfs; ii++) {
|
for (ii = 0; ii < netdef->nForwardIfs; ii++) {
|
||||||
@ -2965,7 +2965,7 @@ networkNotifyActualDevice(virDomainNetDefPtr iface)
|
|||||||
((netdef->forwardType == VIR_NETWORK_FORWARD_PRIVATE) &&
|
((netdef->forwardType == VIR_NETWORK_FORWARD_PRIVATE) &&
|
||||||
iface->data.network.actual->data.direct.virtPortProfile &&
|
iface->data.network.actual->data.direct.virtPortProfile &&
|
||||||
(iface->data.network.actual->data.direct.virtPortProfile->virtPortType
|
(iface->data.network.actual->data.direct.virtPortProfile->virtPortType
|
||||||
== VIR_VIRTUALPORT_8021QBH)))) {
|
== VIR_NETDEV_VPORT_PROFILE_8021QBH)))) {
|
||||||
networkReportError(VIR_ERR_INTERNAL_ERROR,
|
networkReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("network '%s' claims dev='%s' is already in use by a different domain"),
|
_("network '%s' claims dev='%s' is already in use by a different domain"),
|
||||||
netdef->name, actualDev);
|
netdef->name, actualDev);
|
||||||
|
@ -1238,7 +1238,7 @@ int qemuDomainChangeNet(struct qemud_driver *driver,
|
|||||||
case VIR_DOMAIN_NET_TYPE_NETWORK:
|
case VIR_DOMAIN_NET_TYPE_NETWORK:
|
||||||
if (STRNEQ_NULLABLE(olddev->data.network.name, dev->data.network.name) ||
|
if (STRNEQ_NULLABLE(olddev->data.network.name, dev->data.network.name) ||
|
||||||
STRNEQ_NULLABLE(olddev->data.network.portgroup, dev->data.network.portgroup) ||
|
STRNEQ_NULLABLE(olddev->data.network.portgroup, dev->data.network.portgroup) ||
|
||||||
!virVirtualPortProfileEqual(olddev->data.network.virtPortProfile, dev->data.network.virtPortProfile)) {
|
!virNetDevVPortProfileEqual(olddev->data.network.virtPortProfile, dev->data.network.virtPortProfile)) {
|
||||||
qemuReportError(VIR_ERR_NO_SUPPORT,
|
qemuReportError(VIR_ERR_NO_SUPPORT,
|
||||||
_("cannot modify network device configuration"));
|
_("cannot modify network device configuration"));
|
||||||
return -1;
|
return -1;
|
||||||
@ -1257,7 +1257,7 @@ int qemuDomainChangeNet(struct qemud_driver *driver,
|
|||||||
case VIR_DOMAIN_NET_TYPE_DIRECT:
|
case VIR_DOMAIN_NET_TYPE_DIRECT:
|
||||||
if (STRNEQ_NULLABLE(olddev->data.direct.linkdev, dev->data.direct.linkdev) ||
|
if (STRNEQ_NULLABLE(olddev->data.direct.linkdev, dev->data.direct.linkdev) ||
|
||||||
olddev->data.direct.mode != dev->data.direct.mode ||
|
olddev->data.direct.mode != dev->data.direct.mode ||
|
||||||
!virVirtualPortProfileEqual(olddev->data.direct.virtPortProfile, dev->data.direct.virtPortProfile)) {
|
!virNetDevVPortProfileEqual(olddev->data.direct.virtPortProfile, dev->data.direct.virtPortProfile)) {
|
||||||
qemuReportError(VIR_ERR_NO_SUPPORT,
|
qemuReportError(VIR_ERR_NO_SUPPORT,
|
||||||
_("cannot modify direct network device configuration"));
|
_("cannot modify direct network device configuration"));
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -89,11 +89,11 @@ VIR_ENUM_IMPL(virMacvtapMode, VIR_MACVTAP_MODE_LAST,
|
|||||||
# define LLDPAD_PID_FILE "/var/run/lldpad.pid"
|
# define LLDPAD_PID_FILE "/var/run/lldpad.pid"
|
||||||
|
|
||||||
|
|
||||||
enum virVirtualPortOp {
|
enum virNetDevVPortProfileLinkOp {
|
||||||
ASSOCIATE = 0x1,
|
VIR_NETDEV_VPORT_PROFILE_LINK_OP_ASSOCIATE = 0x1,
|
||||||
DISASSOCIATE = 0x2,
|
VIR_NETDEV_VPORT_PROFILE_LINK_OP_DISASSOCIATE = 0x2,
|
||||||
PREASSOCIATE = 0x3,
|
VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE = 0x3,
|
||||||
PREASSOCIATE_RR = 0x4,
|
VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE_RR = 0x4,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -267,7 +267,7 @@ openMacvtapTap(const char *tgifname,
|
|||||||
enum virMacvtapMode mode,
|
enum virMacvtapMode mode,
|
||||||
int vnet_hdr,
|
int vnet_hdr,
|
||||||
const unsigned char *vmuuid,
|
const unsigned char *vmuuid,
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile,
|
virNetDevVPortProfilePtr virtPortProfile,
|
||||||
char **res_ifname,
|
char **res_ifname,
|
||||||
enum virVMOperationType vmOp,
|
enum virVMOperationType vmOp,
|
||||||
char *stateDir,
|
char *stateDir,
|
||||||
@ -404,7 +404,7 @@ delMacvtap(const char *ifname,
|
|||||||
const unsigned char *macaddr,
|
const unsigned char *macaddr,
|
||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
int mode,
|
int mode,
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile,
|
virNetDevVPortProfilePtr virtPortProfile,
|
||||||
char *stateDir)
|
char *stateDir)
|
||||||
{
|
{
|
||||||
if (mode == VIR_MACVTAP_MODE_PASSTHRU) {
|
if (mode == VIR_MACVTAP_MODE_PASSTHRU) {
|
||||||
@ -866,8 +866,8 @@ getPhysdevAndVlan(const char *ifname, int *root_ifindex, char *root_ifname,
|
|||||||
static int
|
static int
|
||||||
doPortProfileOp8021Qbg(const char *ifname,
|
doPortProfileOp8021Qbg(const char *ifname,
|
||||||
const unsigned char *macaddr,
|
const unsigned char *macaddr,
|
||||||
const virVirtualPortProfileParamsPtr virtPort,
|
const virNetDevVPortProfilePtr virtPort,
|
||||||
enum virVirtualPortOp virtPortOp)
|
enum virNetDevVPortProfileLinkOp virtPortOp)
|
||||||
{
|
{
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
|
|
||||||
@ -908,13 +908,13 @@ doPortProfileOp8021Qbg(const char *ifname,
|
|||||||
portVsi.vsi_type_id[0] = virtPort->u.virtPort8021Qbg.typeID;
|
portVsi.vsi_type_id[0] = virtPort->u.virtPort8021Qbg.typeID;
|
||||||
|
|
||||||
switch (virtPortOp) {
|
switch (virtPortOp) {
|
||||||
case PREASSOCIATE:
|
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE:
|
||||||
op = PORT_REQUEST_PREASSOCIATE;
|
op = PORT_REQUEST_PREASSOCIATE;
|
||||||
break;
|
break;
|
||||||
case ASSOCIATE:
|
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_ASSOCIATE:
|
||||||
op = PORT_REQUEST_ASSOCIATE;
|
op = PORT_REQUEST_ASSOCIATE;
|
||||||
break;
|
break;
|
||||||
case DISASSOCIATE:
|
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_DISASSOCIATE:
|
||||||
op = PORT_REQUEST_DISASSOCIATE;
|
op = PORT_REQUEST_DISASSOCIATE;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -983,9 +983,9 @@ err_exit:
|
|||||||
static int
|
static int
|
||||||
doPortProfileOp8021Qbh(const char *ifname,
|
doPortProfileOp8021Qbh(const char *ifname,
|
||||||
const unsigned char *macaddr,
|
const unsigned char *macaddr,
|
||||||
const virVirtualPortProfileParamsPtr virtPort,
|
const virNetDevVPortProfilePtr virtPort,
|
||||||
const unsigned char *vm_uuid,
|
const unsigned char *vm_uuid,
|
||||||
enum virVirtualPortOp virtPortOp)
|
enum virNetDevVPortProfileLinkOp virtPortOp)
|
||||||
{
|
{
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
|
|
||||||
@ -1018,8 +1018,8 @@ doPortProfileOp8021Qbh(const char *ifname,
|
|||||||
goto err_exit;
|
goto err_exit;
|
||||||
|
|
||||||
switch (virtPortOp) {
|
switch (virtPortOp) {
|
||||||
case PREASSOCIATE_RR:
|
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE_RR:
|
||||||
case ASSOCIATE:
|
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_ASSOCIATE:
|
||||||
errno = virGetHostUUID(hostuuid);
|
errno = virGetHostUUID(hostuuid);
|
||||||
if (errno) {
|
if (errno) {
|
||||||
rc = -1;
|
rc = -1;
|
||||||
@ -1034,7 +1034,7 @@ doPortProfileOp8021Qbh(const char *ifname,
|
|||||||
vm_uuid,
|
vm_uuid,
|
||||||
hostuuid,
|
hostuuid,
|
||||||
vf,
|
vf,
|
||||||
(virtPortOp == PREASSOCIATE_RR) ?
|
(virtPortOp == VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE_RR) ?
|
||||||
PORT_REQUEST_PREASSOCIATE_RR
|
PORT_REQUEST_PREASSOCIATE_RR
|
||||||
: PORT_REQUEST_ASSOCIATE);
|
: PORT_REQUEST_ASSOCIATE);
|
||||||
if (rc == -2)
|
if (rc == -2)
|
||||||
@ -1050,7 +1050,7 @@ doPortProfileOp8021Qbh(const char *ifname,
|
|||||||
PORT_REQUEST_DISASSOCIATE);
|
PORT_REQUEST_DISASSOCIATE);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DISASSOCIATE:
|
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_DISASSOCIATE:
|
||||||
rc = doPortProfileOpCommon(nltarget_kernel, NULL, ifindex,
|
rc = doPortProfileOpCommon(nltarget_kernel, NULL, ifindex,
|
||||||
NULL,
|
NULL,
|
||||||
vlanid,
|
vlanid,
|
||||||
@ -1097,7 +1097,7 @@ int
|
|||||||
vpAssociatePortProfileId(const char *macvtap_ifname,
|
vpAssociatePortProfileId(const char *macvtap_ifname,
|
||||||
const unsigned char *macvtap_macaddr,
|
const unsigned char *macvtap_macaddr,
|
||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
const virVirtualPortProfileParamsPtr virtPort,
|
const virNetDevVPortProfilePtr virtPort,
|
||||||
const unsigned char *vmuuid,
|
const unsigned char *vmuuid,
|
||||||
enum virVMOperationType vmOp)
|
enum virVMOperationType vmOp)
|
||||||
{
|
{
|
||||||
@ -1112,24 +1112,24 @@ vpAssociatePortProfileId(const char *macvtap_ifname,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
switch (virtPort->virtPortType) {
|
switch (virtPort->virtPortType) {
|
||||||
case VIR_VIRTUALPORT_NONE:
|
case VIR_NETDEV_VPORT_PROFILE_NONE:
|
||||||
case VIR_VIRTUALPORT_TYPE_LAST:
|
case VIR_NETDEV_VPORT_PROFILE_LAST:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBG:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBG:
|
||||||
rc = doPortProfileOp8021Qbg(macvtap_ifname, macvtap_macaddr,
|
rc = doPortProfileOp8021Qbg(macvtap_ifname, macvtap_macaddr,
|
||||||
virtPort,
|
virtPort,
|
||||||
(vmOp == VIR_VM_OP_MIGRATE_IN_START)
|
(vmOp == VIR_VM_OP_MIGRATE_IN_START)
|
||||||
? PREASSOCIATE
|
? VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE
|
||||||
: ASSOCIATE);
|
: VIR_NETDEV_VPORT_PROFILE_LINK_OP_ASSOCIATE);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBH:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBH:
|
||||||
rc = doPortProfileOp8021Qbh(linkdev, macvtap_macaddr,
|
rc = doPortProfileOp8021Qbh(linkdev, macvtap_macaddr,
|
||||||
virtPort, vmuuid,
|
virtPort, vmuuid,
|
||||||
(vmOp == VIR_VM_OP_MIGRATE_IN_START)
|
(vmOp == VIR_VM_OP_MIGRATE_IN_START)
|
||||||
? PREASSOCIATE_RR
|
? VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE_RR
|
||||||
: ASSOCIATE);
|
: VIR_NETDEV_VPORT_PROFILE_LINK_OP_ASSOCIATE);
|
||||||
if (vmOp != VIR_VM_OP_MIGRATE_IN_START && !rc)
|
if (vmOp != VIR_VM_OP_MIGRATE_IN_START && !rc)
|
||||||
ifaceUp(linkdev);
|
ifaceUp(linkdev);
|
||||||
break;
|
break;
|
||||||
@ -1154,7 +1154,7 @@ int
|
|||||||
vpDisassociatePortProfileId(const char *macvtap_ifname,
|
vpDisassociatePortProfileId(const char *macvtap_ifname,
|
||||||
const unsigned char *macvtap_macaddr,
|
const unsigned char *macvtap_macaddr,
|
||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
const virVirtualPortProfileParamsPtr virtPort,
|
const virNetDevVPortProfilePtr virtPort,
|
||||||
enum virVMOperationType vmOp)
|
enum virVMOperationType vmOp)
|
||||||
{
|
{
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
@ -1168,22 +1168,23 @@ vpDisassociatePortProfileId(const char *macvtap_ifname,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
switch (virtPort->virtPortType) {
|
switch (virtPort->virtPortType) {
|
||||||
case VIR_VIRTUALPORT_NONE:
|
case VIR_NETDEV_VPORT_PROFILE_NONE:
|
||||||
case VIR_VIRTUALPORT_TYPE_LAST:
|
case VIR_NETDEV_VPORT_PROFILE_LAST:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBG:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBG:
|
||||||
rc = doPortProfileOp8021Qbg(macvtap_ifname, macvtap_macaddr,
|
rc = doPortProfileOp8021Qbg(macvtap_ifname, macvtap_macaddr,
|
||||||
virtPort, DISASSOCIATE);
|
virtPort, VIR_NETDEV_VPORT_PROFILE_LINK_OP_DISASSOCIATE);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBH:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBH:
|
||||||
/* avoid disassociating twice */
|
/* avoid disassociating twice */
|
||||||
if (vmOp == VIR_VM_OP_MIGRATE_IN_FINISH)
|
if (vmOp == VIR_VM_OP_MIGRATE_IN_FINISH)
|
||||||
break;
|
break;
|
||||||
ifaceDown(linkdev);
|
ifaceDown(linkdev);
|
||||||
rc = doPortProfileOp8021Qbh(linkdev, macvtap_macaddr,
|
rc = doPortProfileOp8021Qbh(linkdev, macvtap_macaddr,
|
||||||
virtPort, NULL, DISASSOCIATE);
|
virtPort, NULL,
|
||||||
|
VIR_NETDEV_VPORT_PROFILE_LINK_OP_DISASSOCIATE);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ int openMacvtapTap(const char *ifname,
|
|||||||
enum virMacvtapMode mode,
|
enum virMacvtapMode mode,
|
||||||
int vnet_hdr,
|
int vnet_hdr,
|
||||||
const unsigned char *vmuuid,
|
const unsigned char *vmuuid,
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile,
|
virNetDevVPortProfilePtr virtPortProfile,
|
||||||
char **res_ifname,
|
char **res_ifname,
|
||||||
enum virVMOperationType vmop,
|
enum virVMOperationType vmop,
|
||||||
char *stateDir,
|
char *stateDir,
|
||||||
@ -69,20 +69,20 @@ void delMacvtap(const char *ifname,
|
|||||||
const unsigned char *macaddress,
|
const unsigned char *macaddress,
|
||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
int mode,
|
int mode,
|
||||||
virVirtualPortProfileParamsPtr virtPortProfile,
|
virNetDevVPortProfilePtr virtPortProfile,
|
||||||
char *stateDir);
|
char *stateDir);
|
||||||
|
|
||||||
int vpAssociatePortProfileId(const char *macvtap_ifname,
|
int vpAssociatePortProfileId(const char *macvtap_ifname,
|
||||||
const unsigned char *macvtap_macaddr,
|
const unsigned char *macvtap_macaddr,
|
||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
const virVirtualPortProfileParamsPtr virtPort,
|
const virNetDevVPortProfilePtr virtPort,
|
||||||
const unsigned char *vmuuid,
|
const unsigned char *vmuuid,
|
||||||
enum virVMOperationType vmOp);
|
enum virVMOperationType vmOp);
|
||||||
|
|
||||||
int vpDisassociatePortProfileId(const char *macvtap_ifname,
|
int vpDisassociatePortProfileId(const char *macvtap_ifname,
|
||||||
const unsigned char *macvtap_macaddr,
|
const unsigned char *macvtap_macaddr,
|
||||||
const char *linkdev,
|
const char *linkdev,
|
||||||
const virVirtualPortProfileParamsPtr virtPort,
|
const virNetDevVPortProfilePtr virtPort,
|
||||||
enum virVMOperationType vmOp);
|
enum virVMOperationType vmOp);
|
||||||
|
|
||||||
# endif /* WITH_MACVTAP */
|
# endif /* WITH_MACVTAP */
|
||||||
|
@ -679,14 +679,14 @@ error:
|
|||||||
|
|
||||||
/* virtualPortProfile utilities */
|
/* virtualPortProfile utilities */
|
||||||
|
|
||||||
VIR_ENUM_IMPL(virVirtualPort, VIR_VIRTUALPORT_TYPE_LAST,
|
VIR_ENUM_IMPL(virNetDevVPort, VIR_NETDEV_VPORT_PROFILE_LAST,
|
||||||
"none",
|
"none",
|
||||||
"802.1Qbg",
|
"802.1Qbg",
|
||||||
"802.1Qbh")
|
"802.1Qbh")
|
||||||
|
|
||||||
int
|
int
|
||||||
virVirtualPortProfileParseXML(xmlNodePtr node,
|
virNetDevVPortProfileParse(xmlNodePtr node,
|
||||||
virVirtualPortProfileParamsPtr *def)
|
virNetDevVPortProfilePtr *def)
|
||||||
{
|
{
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
char *virtPortType;
|
char *virtPortType;
|
||||||
@ -695,7 +695,7 @@ virVirtualPortProfileParseXML(xmlNodePtr node,
|
|||||||
char *virtPortTypeIDVersion = NULL;
|
char *virtPortTypeIDVersion = NULL;
|
||||||
char *virtPortInstanceID = NULL;
|
char *virtPortInstanceID = NULL;
|
||||||
char *virtPortProfileID = NULL;
|
char *virtPortProfileID = NULL;
|
||||||
virVirtualPortProfileParamsPtr virtPort = NULL;
|
virNetDevVPortProfilePtr virtPort = NULL;
|
||||||
xmlNodePtr cur = node->children;
|
xmlNodePtr cur = node->children;
|
||||||
|
|
||||||
if (VIR_ALLOC(virtPort) < 0) {
|
if (VIR_ALLOC(virtPort) < 0) {
|
||||||
@ -725,11 +725,11 @@ virVirtualPortProfileParseXML(xmlNodePtr node,
|
|||||||
cur = cur->next;
|
cur = cur->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtPort->virtPortType = VIR_VIRTUALPORT_NONE;
|
virtPort->virtPortType = VIR_NETDEV_VPORT_PROFILE_NONE;
|
||||||
|
|
||||||
switch (virVirtualPortTypeFromString(virtPortType)) {
|
switch (virNetDevVPortTypeFromString(virtPortType)) {
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBG:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBG:
|
||||||
if (virtPortManagerID != NULL && virtPortTypeID != NULL &&
|
if (virtPortManagerID != NULL && virtPortTypeID != NULL &&
|
||||||
virtPortTypeIDVersion != NULL) {
|
virtPortTypeIDVersion != NULL) {
|
||||||
unsigned int val;
|
unsigned int val;
|
||||||
@ -791,7 +791,7 @@ virVirtualPortProfileParseXML(xmlNodePtr node,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
virtPort->virtPortType = VIR_VIRTUALPORT_8021QBG;
|
virtPort->virtPortType = VIR_NETDEV_VPORT_PROFILE_8021QBG;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
virSocketError(VIR_ERR_XML_ERROR, "%s",
|
virSocketError(VIR_ERR_XML_ERROR, "%s",
|
||||||
@ -800,11 +800,11 @@ virVirtualPortProfileParseXML(xmlNodePtr node,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBH:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBH:
|
||||||
if (virtPortProfileID != NULL) {
|
if (virtPortProfileID != NULL) {
|
||||||
if (virStrcpyStatic(virtPort->u.virtPort8021Qbh.profileID,
|
if (virStrcpyStatic(virtPort->u.virtPort8021Qbh.profileID,
|
||||||
virtPortProfileID) != NULL) {
|
virtPortProfileID) != NULL) {
|
||||||
virtPort->virtPortType = VIR_VIRTUALPORT_8021QBH;
|
virtPort->virtPortType = VIR_NETDEV_VPORT_PROFILE_8021QBH;
|
||||||
} else {
|
} else {
|
||||||
virSocketError(VIR_ERR_XML_ERROR, "%s",
|
virSocketError(VIR_ERR_XML_ERROR, "%s",
|
||||||
_("profileid parameter too long"));
|
_("profileid parameter too long"));
|
||||||
@ -819,8 +819,8 @@ virVirtualPortProfileParseXML(xmlNodePtr node,
|
|||||||
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
case VIR_VIRTUALPORT_NONE:
|
case VIR_NETDEV_VPORT_PROFILE_NONE:
|
||||||
case VIR_VIRTUALPORT_TYPE_LAST:
|
case VIR_NETDEV_VPORT_PROFILE_LAST:
|
||||||
virSocketError(VIR_ERR_XML_ERROR, "%s",
|
virSocketError(VIR_ERR_XML_ERROR, "%s",
|
||||||
_("unknown virtualport type"));
|
_("unknown virtualport type"));
|
||||||
goto error;
|
goto error;
|
||||||
@ -843,7 +843,7 @@ error:
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
virVirtualPortProfileEqual(virVirtualPortProfileParamsPtr a, virVirtualPortProfileParamsPtr b)
|
virNetDevVPortProfileEqual(virNetDevVPortProfilePtr a, virNetDevVPortProfilePtr b)
|
||||||
{
|
{
|
||||||
/* NULL resistant */
|
/* NULL resistant */
|
||||||
if (!a && !b)
|
if (!a && !b)
|
||||||
@ -856,10 +856,10 @@ virVirtualPortProfileEqual(virVirtualPortProfileParamsPtr a, virVirtualPortProfi
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
switch (a->virtPortType) {
|
switch (a->virtPortType) {
|
||||||
case VIR_VIRTUALPORT_NONE:
|
case VIR_NETDEV_VPORT_PROFILE_NONE:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBG:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBG:
|
||||||
if (a->u.virtPort8021Qbg.managerID != b->u.virtPort8021Qbg.managerID ||
|
if (a->u.virtPort8021Qbg.managerID != b->u.virtPort8021Qbg.managerID ||
|
||||||
a->u.virtPort8021Qbg.typeID != b->u.virtPort8021Qbg.typeID ||
|
a->u.virtPort8021Qbg.typeID != b->u.virtPort8021Qbg.typeID ||
|
||||||
a->u.virtPort8021Qbg.typeIDVersion != b->u.virtPort8021Qbg.typeIDVersion ||
|
a->u.virtPort8021Qbg.typeIDVersion != b->u.virtPort8021Qbg.typeIDVersion ||
|
||||||
@ -867,7 +867,7 @@ virVirtualPortProfileEqual(virVirtualPortProfileParamsPtr a, virVirtualPortProfi
|
|||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBH:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBH:
|
||||||
if (STRNEQ(a->u.virtPort8021Qbh.profileID, b->u.virtPort8021Qbh.profileID))
|
if (STRNEQ(a->u.virtPort8021Qbh.profileID, b->u.virtPort8021Qbh.profileID))
|
||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
@ -880,23 +880,23 @@ virVirtualPortProfileEqual(virVirtualPortProfileParamsPtr a, virVirtualPortProfi
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
virVirtualPortProfileFormat(virBufferPtr buf,
|
virNetDevVPortProfileFormat(virNetDevVPortProfilePtr virtPort,
|
||||||
virVirtualPortProfileParamsPtr virtPort)
|
virBufferPtr buf)
|
||||||
{
|
{
|
||||||
char uuidstr[VIR_UUID_STRING_BUFLEN];
|
char uuidstr[VIR_UUID_STRING_BUFLEN];
|
||||||
|
|
||||||
if (!virtPort || virtPort->virtPortType == VIR_VIRTUALPORT_NONE)
|
if (!virtPort || virtPort->virtPortType == VIR_NETDEV_VPORT_PROFILE_NONE)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
virBufferAsprintf(buf, "<virtualport type='%s'>\n",
|
virBufferAsprintf(buf, "<virtualport type='%s'>\n",
|
||||||
virVirtualPortTypeToString(virtPort->virtPortType));
|
virNetDevVPortTypeToString(virtPort->virtPortType));
|
||||||
|
|
||||||
switch (virtPort->virtPortType) {
|
switch (virtPort->virtPortType) {
|
||||||
case VIR_VIRTUALPORT_NONE:
|
case VIR_NETDEV_VPORT_PROFILE_NONE:
|
||||||
case VIR_VIRTUALPORT_TYPE_LAST:
|
case VIR_NETDEV_VPORT_PROFILE_LAST:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBG:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBG:
|
||||||
virUUIDFormat(virtPort->u.virtPort8021Qbg.instanceID,
|
virUUIDFormat(virtPort->u.virtPort8021Qbg.instanceID,
|
||||||
uuidstr);
|
uuidstr);
|
||||||
virBufferAsprintf(buf,
|
virBufferAsprintf(buf,
|
||||||
@ -908,7 +908,7 @@ virVirtualPortProfileFormat(virBufferPtr buf,
|
|||||||
uuidstr);
|
uuidstr);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_VIRTUALPORT_8021QBH:
|
case VIR_NETDEV_VPORT_PROFILE_8021QBH:
|
||||||
virBufferAsprintf(buf,
|
virBufferAsprintf(buf,
|
||||||
" <parameters profileid='%s'/>\n",
|
" <parameters profileid='%s'/>\n",
|
||||||
virtPort->u.virtPort8021Qbh.profileID);
|
virtPort->u.virtPort8021Qbh.profileID);
|
||||||
|
@ -114,21 +114,21 @@ int virSocketAddrPrefixToNetmask(unsigned int prefix,
|
|||||||
# define LIBVIRT_IFLA_VF_PORT_PROFILE_MAX 40
|
# define LIBVIRT_IFLA_VF_PORT_PROFILE_MAX 40
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
enum virVirtualPortType {
|
enum virNetDevVPortProfile {
|
||||||
VIR_VIRTUALPORT_NONE,
|
VIR_NETDEV_VPORT_PROFILE_NONE,
|
||||||
VIR_VIRTUALPORT_8021QBG,
|
VIR_NETDEV_VPORT_PROFILE_8021QBG,
|
||||||
VIR_VIRTUALPORT_8021QBH,
|
VIR_NETDEV_VPORT_PROFILE_8021QBH,
|
||||||
|
|
||||||
VIR_VIRTUALPORT_TYPE_LAST,
|
VIR_NETDEV_VPORT_PROFILE_LAST,
|
||||||
};
|
};
|
||||||
|
|
||||||
VIR_ENUM_DECL(virVirtualPort)
|
VIR_ENUM_DECL(virNetDevVPort)
|
||||||
|
|
||||||
/* profile data for macvtap (VEPA) */
|
/* profile data for macvtap (VEPA) */
|
||||||
typedef struct _virVirtualPortProfileParams virVirtualPortProfileParams;
|
typedef struct _virNetDevVPortProfile virNetDevVPortProfile;
|
||||||
typedef virVirtualPortProfileParams *virVirtualPortProfileParamsPtr;
|
typedef virNetDevVPortProfile *virNetDevVPortProfilePtr;
|
||||||
struct _virVirtualPortProfileParams {
|
struct _virNetDevVPortProfile {
|
||||||
enum virVirtualPortType virtPortType;
|
enum virNetDevVPortProfile virtPortType;
|
||||||
union {
|
union {
|
||||||
struct {
|
struct {
|
||||||
uint8_t managerID;
|
uint8_t managerID;
|
||||||
@ -143,14 +143,15 @@ struct _virVirtualPortProfileParams {
|
|||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
virVirtualPortProfileParseXML(xmlNodePtr node,
|
virNetDevVPortProfileParse(xmlNodePtr node,
|
||||||
virVirtualPortProfileParamsPtr *virtPort);
|
virNetDevVPortProfilePtr *def);
|
||||||
void
|
|
||||||
virVirtualPortProfileFormat(virBufferPtr buf,
|
|
||||||
virVirtualPortProfileParamsPtr virtPort);
|
|
||||||
|
|
||||||
bool virVirtualPortProfileEqual(virVirtualPortProfileParamsPtr a,
|
void
|
||||||
virVirtualPortProfileParamsPtr b);
|
virNetDevVPortProfileFormat(virNetDevVPortProfilePtr virtPort,
|
||||||
|
virBufferPtr buf);
|
||||||
|
|
||||||
|
bool virNetDevVPortProfileEqual(virNetDevVPortProfilePtr a,
|
||||||
|
virNetDevVPortProfilePtr b);
|
||||||
|
|
||||||
virNetDevBandwidthPtr virNetDevBandwidthParse(xmlNodePtr node)
|
virNetDevBandwidthPtr virNetDevBandwidthParse(xmlNodePtr node)
|
||||||
ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;
|
ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user