16dd75472SMarkus Armbruster# -*- Mode: Python -*- 27e7237cdSVictor Toso# vim: filetype=python 36dd75472SMarkus Armbruster 46dd75472SMarkus Armbruster## 56dd75472SMarkus Armbruster# = Compatibility policy 66dd75472SMarkus Armbruster## 76dd75472SMarkus Armbruster 86dd75472SMarkus Armbruster## 96dd75472SMarkus Armbruster# @CompatPolicyInput: 106dd75472SMarkus Armbruster# 116dd75472SMarkus Armbruster# Policy for handling "funny" input. 126dd75472SMarkus Armbruster# 136dd75472SMarkus Armbruster# @accept: Accept silently 14a937b6aaSMarkus Armbruster# 156dd75472SMarkus Armbruster# @reject: Reject with an error 16a937b6aaSMarkus Armbruster# 17dbb675c1SMarkus Armbruster# @crash: abort() the process 186dd75472SMarkus Armbruster# 196dd75472SMarkus Armbruster# Since: 6.0 206dd75472SMarkus Armbruster## 216dd75472SMarkus Armbruster{ 'enum': 'CompatPolicyInput', 22dbb675c1SMarkus Armbruster 'data': [ 'accept', 'reject', 'crash' ] } 236dd75472SMarkus Armbruster 246dd75472SMarkus Armbruster## 256dd75472SMarkus Armbruster# @CompatPolicyOutput: 266dd75472SMarkus Armbruster# 276dd75472SMarkus Armbruster# Policy for handling "funny" output. 286dd75472SMarkus Armbruster# 296dd75472SMarkus Armbruster# @accept: Pass on unchanged 30a937b6aaSMarkus Armbruster# 316dd75472SMarkus Armbruster# @hide: Filter out 326dd75472SMarkus Armbruster# 336dd75472SMarkus Armbruster# Since: 6.0 346dd75472SMarkus Armbruster## 356dd75472SMarkus Armbruster{ 'enum': 'CompatPolicyOutput', 366dd75472SMarkus Armbruster 'data': [ 'accept', 'hide' ] } 376dd75472SMarkus Armbruster 386dd75472SMarkus Armbruster## 396dd75472SMarkus Armbruster# @CompatPolicy: 406dd75472SMarkus Armbruster# 416dd75472SMarkus Armbruster# Policy for handling deprecated management interfaces. 426dd75472SMarkus Armbruster# 436dd75472SMarkus Armbruster# This is intended for testing users of the management interfaces. 446dd75472SMarkus Armbruster# 456dd75472SMarkus Armbruster# Limitation: covers only syntactic aspects of QMP, i.e. stuff tagged 46*0a59c02bSMarkus Armbruster# with feature 'deprecated' or 'unstable'. We may want to extend it 47*0a59c02bSMarkus Armbruster# to cover semantic aspects and CLI. 486dd75472SMarkus Armbruster# 49aa237044SMarkus Armbruster# Limitation: deprecated-output policy @hide is not implemented for 50aa237044SMarkus Armbruster# enumeration values. They behave the same as with policy @accept. 51b6c18755SMarkus Armbruster# 526dd75472SMarkus Armbruster# @deprecated-input: how to handle deprecated input (default 'accept') 53a937b6aaSMarkus Armbruster# 54a937b6aaSMarkus Armbruster# @deprecated-output: how to handle deprecated output (default 55a937b6aaSMarkus Armbruster# 'accept') 56a937b6aaSMarkus Armbruster# 5757df0dffSMarkus Armbruster# @unstable-input: how to handle unstable input (default 'accept') 5857df0dffSMarkus Armbruster# (since 6.2) 59a937b6aaSMarkus Armbruster# 6057df0dffSMarkus Armbruster# @unstable-output: how to handle unstable output (default 'accept') 6157df0dffSMarkus Armbruster# (since 6.2) 626dd75472SMarkus Armbruster# 636dd75472SMarkus Armbruster# Since: 6.0 646dd75472SMarkus Armbruster## 656dd75472SMarkus Armbruster{ 'struct': 'CompatPolicy', 666dd75472SMarkus Armbruster 'data': { '*deprecated-input': 'CompatPolicyInput', 6757df0dffSMarkus Armbruster '*deprecated-output': 'CompatPolicyOutput', 6857df0dffSMarkus Armbruster '*unstable-input': 'CompatPolicyInput', 6957df0dffSMarkus Armbruster '*unstable-output': 'CompatPolicyOutput' } } 70