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