xref: /openbmc/qemu/qapi/pragma.json (revision 096b778f)
1# -*- Mode: Python -*-
2# vim: filetype=python
3
4{ 'pragma': { 'doc-required': true } }
5
6# Whitelists to permit QAPI rule violations; think twice before you
7# add to them!
8{ 'pragma': {
9    # Commands allowed to return a non-dictionary:
10    'command-name-exceptions': [
11        'add_client',
12        'block_resize',
13        'block_set_io_throttle',
14        'client_migrate_info',
15        'device_add',
16        'device_del',
17        'expire_password',
18        'migrate_cancel',
19        'netdev_add',
20        'netdev_del',
21        'qmp_capabilities',
22        'set_link',
23        'set_password',
24        'system_powerdown',
25        'system_reset',
26        'system_wakeup' ],
27    'command-returns-exceptions': [
28        'human-monitor-command',
29        'qom-get',
30        'query-tpm-models',
31        'query-tpm-types',
32        'ringbuf-read' ],
33    # Externally visible types whose member names may use uppercase
34    'member-name-exceptions': [     # visible in:
35        'ACPISlotType',             # query-acpi-ospm-status
36        'AcpiTableOptions',         # -acpitable
37        'BlkdebugEvent',            # blockdev-add, -blockdev
38        'BlkdebugSetStateOptions',  # blockdev-add, -blockdev
39        'BlockDeviceInfo',          # query-block
40        'BlockDeviceStats',         # query-blockstats
41        'BlockDeviceTimedStats',    # query-blockstats
42        'BlockIOThrottle',          # block_set_io_throttle
43        'BlockInfo',                # query-block
44        'BlockdevAioOptions',       # blockdev-add, -blockdev
45        'BlockdevDriver',           # blockdev-add, query-blockstats, ...
46        'BlockdevVmdkAdapterType',  # blockdev-create (to match VMDK spec)
47        'BlockdevVmdkSubformat',    # blockdev-create (to match VMDK spec)
48        'ColoCompareProperties',    # object_add, -object
49        'FilterMirrorProperties',   # object_add, -object
50        'FilterRedirectorProperties', # object_add, -object
51        'FilterRewriterProperties', # object_add, -object
52        'InputLinuxProperties',     # object_add, -object
53        'NetdevTapOptions',         # netdev_add, query-netdev, -netdev
54        'ObjectType',               # object-add, -object
55        'PCIELinkSpeed',            # internal only
56        'PciBusInfo',               # query-pci
57        'PciDeviceInfo',            # query-pci
58        'PciMemoryRegion',          # query-pci
59        'QKeyCode',                 # send-key, input-sent-event
60        'QapiErrorClass',           # QMP error replies
61        'SshHostKeyCheckMode',      # blockdev-add, -blockdev
62        'SysEmuTarget',             # query-cpu-fast, query-target
63        'UuidInfo',                 # query-uuid
64        'VncClientInfo',            # query-vnc, query-vnc-servers, ...
65        'X86CPURegister32'          # qom-get of x86 CPU properties
66                                    # feature-words, filtered-features
67    ] } }
68