On Mon, Jul 08, 2024 at 06:43:02AM -0400, Michael S. Tsirkin wrote:
> On Mon, Jul 08, 2024 at 04:38:06PM +0900, Akihiko Odaki wrote:
> > DEFINE_PROP_ON_OFF_AUTO_BIT64() corresponds to DEFINE_PROP_ON_OFF_AUTO()
> > as DEFINE_PROP_BIT64() corresponds to DEFINE_PROP_BOOL(). The difference
> > is that DEFINE_PROP_ON_OFF_AUTO_BIT64() exposes OnOffAuto instead of
> > bool.
> > 
> > Signed-off-by: Akihiko Odaki <akihiko.od...@daynix.com>
> 
> There are a bunch of compatibility issues here.
> One is that PROP_BIT accepts different values:
> 
> 
> bool qapi_bool_parse(const char *name, const char *value, bool *obj, Error 
> **errp)
> {
>     if (g_str_equal(value, "on") ||
>         g_str_equal(value, "yes") ||
>         g_str_equal(value, "true") ||
>         g_str_equal(value, "y")) {
>         *obj = true;
>         return true;
>     }
>     if (g_str_equal(value, "off") ||
>         g_str_equal(value, "no") ||
>         g_str_equal(value, "false") ||
>         g_str_equal(value, "n")) {
>         *obj = false;
>         return true;
>     }
> 
>     error_setg(errp, QERR_INVALID_PARAMETER_VALUE, name,
>                "'on' or 'off'");
>     return false;
> }

That's just in relation to the CLI string parsing behaviour.

It is also broken at the JSON level, since

   "rss": true

no longer works with device_add / -device JSON syntax.

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|


Reply via email to