mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 21:55:25 +00:00
virDomainCreate(XML)WithFiles: Add check for VIR_DRV_FEATURE_FD_PASSING
All APIs using FD passing have this check to prevent sending a 'VIR_NET_CALL_WITH_FDS' to an older daemon but virDomainCreateXMLWithFiles was missing it. Now the LXC driver was historically not exposing VIR_DRV_FEATURE_FD_PASSING, but that is not a problem as LXC always goes through the remote driver which intercepts it and injects VIR_DRV_FEATURE_FD_PASSING when it was implemented. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com> Reviewed-by: Andrea Bolognani <abologna@redhat.com>
This commit is contained in:
parent
ef476708f3
commit
1c71e06619
@ -244,6 +244,18 @@ virDomainCreateXMLWithFiles(virConnectPtr conn, const char *xmlDesc,
|
||||
virCheckNonNullArgGoto(xmlDesc, error);
|
||||
virCheckReadOnlyGoto(conn->flags, error);
|
||||
|
||||
if (nfiles > 0) {
|
||||
int rc;
|
||||
|
||||
if ((rc = VIR_DRV_SUPPORTS_FEATURE(conn->driver, conn,
|
||||
VIR_DRV_FEATURE_FD_PASSING)) <= 0) {
|
||||
if (rc == 0)
|
||||
virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
|
||||
_("fd passing is not supported by this connection"));
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
|
||||
if (conn->driver->domainCreateXMLWithFiles) {
|
||||
virDomainPtr ret;
|
||||
ret = conn->driver->domainCreateXMLWithFiles(conn, xmlDesc,
|
||||
@ -6869,6 +6881,18 @@ virDomainCreateWithFiles(virDomainPtr domain, unsigned int nfiles,
|
||||
|
||||
virCheckReadOnlyGoto(conn->flags, error);
|
||||
|
||||
if (nfiles > 0) {
|
||||
int rc;
|
||||
|
||||
if ((rc = VIR_DRV_SUPPORTS_FEATURE(conn->driver, conn,
|
||||
VIR_DRV_FEATURE_FD_PASSING)) <= 0) {
|
||||
if (rc == 0)
|
||||
virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
|
||||
_("fd passing is not supported by this connection"));
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
|
||||
if (conn->driver->domainCreateWithFiles) {
|
||||
int ret;
|
||||
ret = conn->driver->domainCreateWithFiles(domain,
|
||||
|
Loading…
Reference in New Issue
Block a user