xref: /qemu/qapi/compat.json (revision 727385c4)
1# -*- Mode: Python -*-
2
3##
4# = Compatibility policy
5##
6
7##
8# @CompatPolicyInput:
9#
10# Policy for handling "funny" input.
11#
12# @accept: Accept silently
13# @reject: Reject with an error
14# @crash: abort() the process
15#
16# Since: 6.0
17##
18{ 'enum': 'CompatPolicyInput',
19  'data': [ 'accept', 'reject', 'crash' ] }
20
21##
22# @CompatPolicyOutput:
23#
24# Policy for handling "funny" output.
25#
26# @accept: Pass on unchanged
27# @hide: Filter out
28#
29# Since: 6.0
30##
31{ 'enum': 'CompatPolicyOutput',
32  'data': [ 'accept', 'hide' ] }
33
34##
35# @CompatPolicy:
36#
37# Policy for handling deprecated management interfaces.
38#
39# This is intended for testing users of the management interfaces.
40#
41# Limitation: covers only syntactic aspects of QMP, i.e. stuff tagged
42# with feature 'deprecated'.  We may want to extend it to cover
43# semantic aspects, CLI, and experimental features.
44#
45# Limitation: deprecated-output policy @hide is not implemented for
46# enumeration values.  They behave the same as with policy @accept.
47#
48# @deprecated-input: how to handle deprecated input (default 'accept')
49# @deprecated-output: how to handle deprecated output (default 'accept')
50# @unstable-input: how to handle unstable input (default 'accept')
51#                  (since 6.2)
52# @unstable-output: how to handle unstable output (default 'accept')
53#                   (since 6.2)
54#
55# Since: 6.0
56##
57{ 'struct': 'CompatPolicy',
58  'data': { '*deprecated-input': 'CompatPolicyInput',
59            '*deprecated-output': 'CompatPolicyOutput',
60            '*unstable-input': 'CompatPolicyInput',
61            '*unstable-output': 'CompatPolicyOutput' } }
62