[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 4/6] fsdev: Error out when unsupported option is
From: |
Greg Kurz |
Subject: |
Re: [Qemu-devel] [PATCH 4/6] fsdev: Error out when unsupported option is passed |
Date: |
Thu, 9 May 2019 15:22:58 +0200 |
On Wed, 8 May 2019 11:23:46 -0500
Eric Blake <address@hidden> wrote:
> On 5/7/19 3:45 AM, Greg Kurz wrote:
> > Each fsdriver only supports a subset of the options that can be passed
> > to -fsdev. Unsupported options are simply ignored. This could cause the
> > user to erroneously think QEMU has a bug.
> >
> > Enforce strict checking of supported options for all fsdrivers. This
> > shouldn't impact libvirt, since it doesn't know about he synth and
>
> s/he/the/
>
> > proxy fsdrivers.
> >
> > Signed-off-by: Greg Kurz <address@hidden>
> > ---
> > fsdev/qemu-fsdev.c | 74
> > ++++++++++++++++++++++++++++++++++++++++++++++++++--
> > 1 file changed, 71 insertions(+), 3 deletions(-)
> >
>
> >
> > +#define COMMON_FS_DRIVER_OPTIONS "id", "fsdriver", "readonly"
> > +
> > static FsDriverTable FsDrivers[] = {
> > - { .name = "local", .ops = &local_ops},
> > - { .name = "synth", .ops = &synth_ops},
> > - { .name = "proxy", .ops = &proxy_ops},
> > + {
> > + .name = "local",
> > + .ops = &local_ops,
> > + .opts = (const char * []) {
> > + COMMON_FS_DRIVER_OPTIONS,
> > + "security_model",
>
>
> > +static int validate_opt(void *opaque, const char *name, const char *value,
> > + Error **errp)
> > +{
> > + FsDriverTable *drv = opaque;
> > + const char **opt;
> > +
> > + for (opt = drv->opts; *opt; opt++) {
> > + if (!strcmp(*opt, name)) {
> > + return 0;
> > + }
> > + }
> > +
> > + error_setg(errp, "'%s' is invalid for fsdriver '%s'", name, drv->name);
> > + return -1;
> > +}
>
> When we ever reach command-line QAPIfication, this might go away. In the
> meantime, this is an improvement.
>
> Reviewed-by: Eric Blake <address@hidden>
>
Fixed the typo in the changelog and applied to
https://github.com/gkurz/qemu/commits/9p-next
Cheers,
--
Greg
pgprWrrOaY8YY.pgp
Description: OpenPGP digital signature
- Re: [Qemu-devel] [PATCH 1/6] fsdev: Drop unused extern declaration, (continued)
- [Qemu-devel] [PATCH 2/6] fsdev: Drop unused opaque field, Greg Kurz, 2019/05/07
- [Qemu-devel] [PATCH 3/6] fsdev: Move some types definition to qemu-fsdev.c, Greg Kurz, 2019/05/07
- [Qemu-devel] [PATCH 4/6] fsdev: Error out when unsupported option is passed, Greg Kurz, 2019/05/07
- [Qemu-devel] [PATCH 5/6] vl: Deprecate -virtfs_synth, Greg Kurz, 2019/05/07
- [Qemu-devel] [PATCH 6/6] virtfs: Fix documentation of -fsdev and -virtfs, Greg Kurz, 2019/05/07