Skip to content
  • Luiz Capitulino's avatar
    qmp: switch to the new error format on the wire · de253f14
    Luiz Capitulino authored
    
    
    IMPORTANT: this BREAKS QMP's compatibility for the error response.
    
    This commit changes QMP's wire protocol to make use of the simpler
    error format introduced by previous commits.
    
    There are two important (and mostly incompatible) changes:
    
     1. Almost all error classes have been replaced by GenericError. The
        only classes that are still supported for compatibility with
        libvirt are: CommandNotFound, DeviceNotActive, KVMMissingCap,
        DeviceNotFound and MigrationExpected
    
     2. The 'data' field of the error dictionary is gone
    
    As an example, an error response like:
    
      { "error": { "class": "DeviceNotRemovable",
                   "data": { "device": "virtio0" },
                   "desc": "Device 'virtio0' is not removable" } }
    
    Will now be emitted as:
    
      { "error": { "class": "GenericError",
                   "desc": "Device 'virtio0' is not removable" } }
    
    Signed-off-by: default avatarLuiz Capitulino <lcapitulino@redhat.com>
    Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
    de253f14