qemu/qapi/common.json
<<
>>
Prefs
   1# -*- Mode: Python -*-
   2#
   3# QAPI common definitions
   4
   5##
   6# @QapiErrorClass
   7#
   8# QEMU error classes
   9#
  10# @GenericError: this is used for errors that don't require a specific error
  11#                class. This should be the default case for most errors
  12#
  13# @CommandNotFound: the requested command has not been found
  14#
  15# @DeviceEncrypted: the requested operation can't be fulfilled because the
  16#                   selected device is encrypted
  17#
  18# @DeviceNotActive: a device has failed to be become active
  19#
  20# @DeviceNotFound: the requested device has not been found
  21#
  22# @KVMMissingCap: the requested operation can't be fulfilled because a
  23#                 required KVM capability is missing
  24#
  25# Since: 1.2
  26##
  27{ 'enum': 'QapiErrorClass',
  28  # Keep this in sync with ErrorClass in error.h
  29  'data': [ 'GenericError', 'CommandNotFound', 'DeviceEncrypted',
  30            'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
  31
  32##
  33# @VersionTriple
  34#
  35# A three-part version number.
  36#
  37# @qemu.major:  The major version number.
  38#
  39# @qemu.minor:  The minor version number.
  40#
  41# @qemu.micro:  The micro version number.
  42#
  43# Since: 2.4
  44##
  45{ 'struct': 'VersionTriple',
  46  'data': {'major': 'int', 'minor': 'int', 'micro': 'int'} }
  47
  48
  49##
  50# @VersionInfo:
  51#
  52# A description of QEMU's version.
  53#
  54# @qemu:        The version of QEMU.  By current convention, a micro
  55#               version of 50 signifies a development branch.  A micro version
  56#               greater than or equal to 90 signifies a release candidate for
  57#               the next minor version.  A micro version of less than 50
  58#               signifies a stable release.
  59#
  60# @package:     QEMU will always set this field to an empty string.  Downstream
  61#               versions of QEMU should set this to a non-empty string.  The
  62#               exact format depends on the downstream however it highly
  63#               recommended that a unique name is used.
  64#
  65# Since: 0.14.0
  66##
  67{ 'struct': 'VersionInfo',
  68  'data': {'qemu': 'VersionTriple', 'package': 'str'} }
  69
  70##
  71# @query-version:
  72#
  73# Returns the current version of QEMU.
  74#
  75# Returns:  A @VersionInfo object describing the current version of QEMU.
  76#
  77# Since: 0.14.0
  78##
  79{ 'command': 'query-version', 'returns': 'VersionInfo' }
  80
  81##
  82# @CommandInfo:
  83#
  84# Information about a QMP command
  85#
  86# @name: The command name
  87#
  88# Since: 0.14.0
  89##
  90{ 'struct': 'CommandInfo', 'data': {'name': 'str'} }
  91
  92##
  93# @query-commands:
  94#
  95# Return a list of supported QMP commands by this server
  96#
  97# Returns: A list of @CommandInfo for all supported commands
  98#
  99# Since: 0.14.0
 100##
 101{ 'command': 'query-commands', 'returns': ['CommandInfo'] }
 102
 103##
 104# @OnOffAuto
 105#
 106# An enumeration of three options: on, off, and auto
 107#
 108# @auto: QEMU selects the value between on and off
 109#
 110# @on: Enabled
 111#
 112# @off: Disabled
 113#
 114# Since: 2.2
 115##
 116{ 'enum': 'OnOffAuto',
 117  'data': [ 'auto', 'on', 'off' ] }
 118
 119##
 120# @OnOffSplit
 121#
 122# An enumeration of three values: on, off, and split
 123#
 124# @on: Enabled
 125#
 126# @off: Disabled
 127#
 128# @split: Mixed
 129#
 130# Since: 2.6
 131##
 132{ 'enum': 'OnOffSplit',
 133  'data': [ 'on', 'off', 'split' ] }
 134