conf: add private data to virDomainFSDef

Add an object to hold the private data and call the
allocation function if it's present in xmlopt.

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Ján Tomko 2019-12-10 13:52:52 +01:00
parent a2430cc544
commit 5120577ed7
2 changed files with 8 additions and 1 deletions

View File

@ -2279,7 +2279,7 @@ virDomainControllerIsPSeriesPHB(const virDomainControllerDef *cont)
virDomainFSDefPtr
virDomainFSDefNew(virDomainXMLOptionPtr xmlopt G_GNUC_UNUSED)
virDomainFSDefNew(virDomainXMLOptionPtr xmlopt)
{
virDomainFSDefPtr ret;
@ -2289,6 +2289,11 @@ virDomainFSDefNew(virDomainXMLOptionPtr xmlopt G_GNUC_UNUSED)
if (!(ret->src = virStorageSourceNew()))
goto cleanup;
if (xmlopt &&
xmlopt->privateData.fsNew &&
!(ret->privateData = xmlopt->privateData.fsNew()))
goto cleanup;
return ret;
cleanup:

View File

@ -817,6 +817,7 @@ struct _virDomainFSDef {
unsigned long long space_soft_limit; /* in bytes */
bool symlinksResolved;
virDomainVirtioOptionsPtr virtio;
virObjectPtr privateData;
};
@ -2740,6 +2741,7 @@ struct _virDomainXMLPrivateDataCallbacks {
virDomainXMLPrivateDataNewFunc graphicsNew;
virDomainXMLPrivateDataNewFunc networkNew;
virDomainXMLPrivateDataNewFunc videoNew;
virDomainXMLPrivateDataNewFunc fsNew;
virDomainXMLPrivateDataFormatFunc format;
virDomainXMLPrivateDataParseFunc parse;
/* following function shall return a pointer which will be used as the