On a Tuesday in 2023, Andrea Bolognani wrote:
On Tue, Apr 18, 2023 at 03:19:45PM +0200, Ján Tomko wrote:On a Tuesday in 2023, Andrea Bolognani wrote: > That's already the case in practice, but it's a better > experience for the user if we reject this configuration > outright instead of silently ignoring part of it. > > Signed-off-by: Andrea Bolognani <abologna@xxxxxxxxxx> > --- > src/conf/domain_validate.c | 9 +++++++++ > ...t-user-slirp-portforward.x86_64-latest.err | 1 + > .../net-user-slirp-portforward.xml | 20 +++++++++++++++++++ > tests/qemuxml2argvtest.c | 1 + > 4 files changed, 31 insertions(+) > create mode 100644 tests/qemuxml2argvdata/net-user-slirp-portforward.x86_64-latest.err > create mode 100644 tests/qemuxml2argvdata/net-user-slirp-portforward.xml Reviewed-by: Ján Tomko <jtomko@xxxxxxxxxx>Thanks for the review! Right before pushing, I realized that VIR_ERR_INTERNAL_ERROR is probably not the best fit for this scenario. Are you okay with me squashing in the changes below?
Yes. VIR_ERR_CONFIG_UNSUPPORTED = 67, /* unsupported configuration construct (Since: 0.7.3) */ We also use VIR_ERR_XML_ERROR in similar cases, but I'm not sure whether it's more fitting, given its description: VIR_ERR_XML_ERROR = 27, /* an XML description is not well formed or broken (Since: 0.1.1) */ Jano
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index 9c7ee6d75d..e04b85fee4 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -2101,7 +2101,7 @@ virDomainNetDefValidate(const virDomainNetDef *net) (net->type != VIR_DOMAIN_NET_TYPE_USER || (net->type == VIR_DOMAIN_NET_TYPE_USER && net->backend.type != VIR_DOMAIN_NET_BACKEND_PASST))) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("The <portForward> element can only be used with <interface type='user'> and its 'passt' backend")); return -1; } diff --git a/tests/qemuxml2argvdata/net-user-slirp-portforward.x86_64-latest.err b/tests/qemuxml2argvdata/net-user-slirp-portforward.x86_64-latest.err index f296db1e8c..eaa934742e 100644 --- a/tests/qemuxml2argvdata/net-user-slirp-portforward.x86_64-latest.err +++ b/tests/qemuxml2argvdata/net-user-slirp-portforward.x86_64-latest.err @@ -1 +1 @@ -internal error: The <portForward> element can only be used with <interface type='user'> and its 'passt' backend +unsupported configuration: The <portForward> element can only be used with <interface type='user'> and its 'passt' backend -- Andrea Bolognani / Red Hat / Virtualization
Attachment:
signature.asc
Description: PGP signature