src: add driver support for networkDefineXMLFlags()

I have added new driver functions which define network with given
flags. I have also replaced definitions of the functions without
flags with function calls to the new ones.

Signed-off-by: Kristina Hanicova <khanicov@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Kristina Hanicova 2021-08-23 18:50:10 +02:00 committed by Michal Privoznik
parent 652eac2437
commit a4d8bd34a5
4 changed files with 49 additions and 6 deletions

View File

@ -274,7 +274,8 @@ esxBandwidthToShapingPolicy(virNetDevBandwidth *bandwidth,
static virNetworkPtr
esxNetworkDefineXML(virConnectPtr conn, const char *xml)
esxNetworkDefineXMLFlags(virConnectPtr conn, const char *xml,
unsigned int flags)
{
virNetworkPtr network = NULL;
esxPrivate *priv = conn->privateData;
@ -291,6 +292,8 @@ esxNetworkDefineXML(virConnectPtr conn, const char *xml)
unsigned char md5[VIR_CRYPTO_HASH_SIZE_MD5]; /* VIR_CRYPTO_HASH_SIZE_MD5 = VIR_UUID_BUFLEN = 16 */
virCheckFlags(0, NULL);
if (esxVI_EnsureSession(priv->primary) < 0)
return NULL;
@ -494,6 +497,14 @@ esxNetworkDefineXML(virConnectPtr conn, const char *xml)
static virNetworkPtr
esxNetworkDefineXML(virConnectPtr conn, const char *xml)
{
return esxNetworkDefineXMLFlags(conn, xml, 0);
}
static int
esxNetworkUndefine(virNetworkPtr network)
{
@ -933,6 +944,7 @@ virNetworkDriver esxNetworkDriver = {
.networkLookupByUUID = esxNetworkLookupByUUID, /* 0.10.0 */
.networkLookupByName = esxNetworkLookupByName, /* 0.10.0 */
.networkDefineXML = esxNetworkDefineXML, /* 0.10.0 */
.networkDefineXMLFlags = esxNetworkDefineXMLFlags, /* 7.7.0 */
.networkUndefine = esxNetworkUndefine, /* 0.10.0 */
.networkGetXMLDesc = esxNetworkGetXMLDesc, /* 0.10.0 */
.networkGetAutostart = esxNetworkGetAutostart, /* 0.10.0 */

View File

@ -3516,8 +3516,9 @@ networkCreateXML(virConnectPtr conn,
static virNetworkPtr
networkDefineXML(virConnectPtr conn,
const char *xml)
networkDefineXMLFlags(virConnectPtr conn,
const char *xml,
unsigned int flags)
{
virNetworkDriverState *driver = networkGetDriver();
virNetworkDef *def = NULL;
@ -3526,10 +3527,12 @@ networkDefineXML(virConnectPtr conn,
virNetworkPtr net = NULL;
virObjectEvent *event = NULL;
virCheckFlags(0, NULL);
if (!(def = virNetworkDefParseString(xml, network_driver->xmlopt)))
goto cleanup;
if (virNetworkDefineXMLEnsureACL(conn, def) < 0)
if (virNetworkDefineXMLFlagsEnsureACL(conn, def) < 0)
goto cleanup;
if (networkValidate(driver, def) < 0)
@ -3571,6 +3574,14 @@ networkDefineXML(virConnectPtr conn,
}
static virNetworkPtr
networkDefineXML(virConnectPtr conn,
const char *xml)
{
return networkDefineXMLFlags(conn, xml, 0);
}
static int
networkUndefine(virNetworkPtr net)
{
@ -5618,6 +5629,7 @@ static virNetworkDriver networkDriver = {
.networkLookupByName = networkLookupByName, /* 0.2.0 */
.networkCreateXML = networkCreateXML, /* 0.2.0 */
.networkDefineXML = networkDefineXML, /* 0.2.0 */
.networkDefineXMLFlags = networkDefineXMLFlags, /* 7.7.0 */
.networkUndefine = networkUndefine, /* 0.2.0 */
.networkUpdate = networkUpdate, /* 0.10.2 */
.networkCreate = networkCreate, /* 0.2.0 */

View File

@ -5607,8 +5607,9 @@ testNetworkCreateXML(virConnectPtr conn, const char *xml)
static virNetworkPtr
testNetworkDefineXML(virConnectPtr conn,
const char *xml)
testNetworkDefineXMLFlags(virConnectPtr conn,
const char *xml,
unsigned int flags)
{
testDriver *privconn = conn->privateData;
virNetworkDef *newDef;
@ -5617,6 +5618,8 @@ testNetworkDefineXML(virConnectPtr conn,
virNetworkPtr net = NULL;
virObjectEvent *event = NULL;
virCheckFlags(0, NULL);
if ((newDef = virNetworkDefParseString(xml, NULL)) == NULL)
goto cleanup;
@ -5639,6 +5642,14 @@ testNetworkDefineXML(virConnectPtr conn,
}
static virNetworkPtr
testNetworkDefineXML(virConnectPtr conn,
const char *xml)
{
return testNetworkDefineXMLFlags(conn, xml, 0);
}
static int
testNetworkUndefine(virNetworkPtr net)
{
@ -9712,6 +9723,7 @@ static virNetworkDriver testNetworkDriver = {
.networkLookupByName = testNetworkLookupByName, /* 0.3.2 */
.networkCreateXML = testNetworkCreateXML, /* 0.3.2 */
.networkDefineXML = testNetworkDefineXML, /* 0.3.2 */
.networkDefineXMLFlags = testNetworkDefineXMLFlags, /* 7.7.0 */
.networkUndefine = testNetworkUndefine, /* 0.3.2 */
.networkUpdate = testNetworkUpdate, /* 0.10.2 */
.networkCreate = testNetworkCreate, /* 0.3.2 */

View File

@ -565,6 +565,12 @@ static virNetworkPtr vboxNetworkDefineXML(virConnectPtr conn, const char *xml)
return vboxNetworkDefineCreateXML(conn, xml, false, 0);
}
static virNetworkPtr vboxNetworkDefineXMLFlags(virConnectPtr conn, const char *xml,
unsigned int flags)
{
return vboxNetworkDefineCreateXML(conn, xml, false, flags);
}
static int
vboxNetworkUndefineDestroy(virNetworkPtr network, bool removeinterface)
{
@ -924,6 +930,7 @@ virNetworkDriver vboxNetworkDriver = {
.networkLookupByName = vboxNetworkLookupByName, /* 0.6.4 */
.networkCreateXML = vboxNetworkCreateXML, /* 0.6.4 */
.networkDefineXML = vboxNetworkDefineXML, /* 0.6.4 */
.networkDefineXMLFlags = vboxNetworkDefineXMLFlags, /* 7.7.0 */
.networkUndefine = vboxNetworkUndefine, /* 0.6.4 */
.networkCreate = vboxNetworkCreate, /* 0.6.4 */
.networkDestroy = vboxNetworkDestroy, /* 0.6.4 */