qapi: Generalize command policy checking
commit6604e4757a1fc5832f87b5f9244efccabb49be8e
authorMarkus Armbruster <armbru@redhat.com>
Thu, 28 Oct 2021 10:25:17 +0000 (28 12:25 +0200)
committerMarkus Armbruster <armbru@redhat.com>
Fri, 29 Oct 2021 16:24:46 +0000 (29 18:24 +0200)
tree93e1498cf110a81714c4e05161341ad84e6ef8e4
parenta130728554d0cc19ef0ed4c1c824305c1682e64b
qapi: Generalize command policy checking

The code to check command policy can see special feature flag
'deprecated' as command flag QCO_DEPRECATED.  I want to make feature
flag 'unstable' visible there as well, so I can add policy for it.

To let me make it visible, add member @special_features (a bitset of
QapiSpecialFeature) to QmpCommand, and adjust the generator to pass it
through qmp_register_command().  Then replace "QCO_DEPRECATED in
@flags" by QAPI_DEPRECATED in @special_features", and drop
QCO_DEPRECATED.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: John Snow <jsnow@redhat.com>
Message-Id: <20211028102520.747396-7-armbru@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
include/qapi/qmp/dispatch.h
monitor/misc.c
qapi/qmp-dispatch.c
qapi/qmp-registry.c
scripts/qapi/commands.py
storage-daemon/qemu-storage-daemon.c