Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 1 | # -*- Mode: Python -*- |
Victor Toso | 7e7237c | 2021-12-20 15:56:24 +0100 | [diff] [blame] | 2 | # vim: filetype=python |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 3 | |
| 4 | ## |
| 5 | # = Compatibility policy |
| 6 | ## |
| 7 | |
| 8 | ## |
| 9 | # @CompatPolicyInput: |
| 10 | # |
| 11 | # Policy for handling "funny" input. |
| 12 | # |
| 13 | # @accept: Accept silently |
Markus Armbruster | a937b6a | 2023-04-28 12:54:29 +0200 | [diff] [blame] | 14 | # |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 15 | # @reject: Reject with an error |
Markus Armbruster | a937b6a | 2023-04-28 12:54:29 +0200 | [diff] [blame] | 16 | # |
Markus Armbruster | dbb675c | 2021-03-18 16:55:19 +0100 | [diff] [blame] | 17 | # @crash: abort() the process |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 18 | # |
| 19 | # Since: 6.0 |
| 20 | ## |
| 21 | { 'enum': 'CompatPolicyInput', |
Markus Armbruster | dbb675c | 2021-03-18 16:55:19 +0100 | [diff] [blame] | 22 | 'data': [ 'accept', 'reject', 'crash' ] } |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 23 | |
| 24 | ## |
| 25 | # @CompatPolicyOutput: |
| 26 | # |
| 27 | # Policy for handling "funny" output. |
| 28 | # |
| 29 | # @accept: Pass on unchanged |
Markus Armbruster | a937b6a | 2023-04-28 12:54:29 +0200 | [diff] [blame] | 30 | # |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 31 | # @hide: Filter out |
| 32 | # |
| 33 | # Since: 6.0 |
| 34 | ## |
| 35 | { 'enum': 'CompatPolicyOutput', |
| 36 | 'data': [ 'accept', 'hide' ] } |
| 37 | |
| 38 | ## |
| 39 | # @CompatPolicy: |
| 40 | # |
| 41 | # Policy for handling deprecated management interfaces. |
| 42 | # |
| 43 | # This is intended for testing users of the management interfaces. |
| 44 | # |
| 45 | # Limitation: covers only syntactic aspects of QMP, i.e. stuff tagged |
Markus Armbruster | 0a59c02 | 2023-10-09 13:04:49 +0200 | [diff] [blame] | 46 | # with feature 'deprecated' or 'unstable'. We may want to extend it |
| 47 | # to cover semantic aspects and CLI. |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 48 | # |
Markus Armbruster | aa23704 | 2021-10-25 06:24:04 +0200 | [diff] [blame] | 49 | # Limitation: deprecated-output policy @hide is not implemented for |
| 50 | # enumeration values. They behave the same as with policy @accept. |
Markus Armbruster | b6c1875 | 2021-10-25 06:24:02 +0200 | [diff] [blame] | 51 | # |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 52 | # @deprecated-input: how to handle deprecated input (default 'accept') |
Markus Armbruster | a937b6a | 2023-04-28 12:54:29 +0200 | [diff] [blame] | 53 | # |
| 54 | # @deprecated-output: how to handle deprecated output (default |
| 55 | # 'accept') |
| 56 | # |
Markus Armbruster | 57df0df | 2021-10-28 12:25:20 +0200 | [diff] [blame] | 57 | # @unstable-input: how to handle unstable input (default 'accept') |
Markus Armbruster | a937b6a | 2023-04-28 12:54:29 +0200 | [diff] [blame] | 58 | # (since 6.2) |
| 59 | # |
Markus Armbruster | 57df0df | 2021-10-28 12:25:20 +0200 | [diff] [blame] | 60 | # @unstable-output: how to handle unstable output (default 'accept') |
Markus Armbruster | a937b6a | 2023-04-28 12:54:29 +0200 | [diff] [blame] | 61 | # (since 6.2) |
Markus Armbruster | 6dd7547 | 2021-03-18 16:55:10 +0100 | [diff] [blame] | 62 | # |
| 63 | # Since: 6.0 |
| 64 | ## |
| 65 | { 'struct': 'CompatPolicy', |
| 66 | 'data': { '*deprecated-input': 'CompatPolicyInput', |
Markus Armbruster | 57df0df | 2021-10-28 12:25:20 +0200 | [diff] [blame] | 67 | '*deprecated-output': 'CompatPolicyOutput', |
| 68 | '*unstable-input': 'CompatPolicyInput', |
| 69 | '*unstable-output': 'CompatPolicyOutput' } } |