aboutsummaryrefslogtreecommitdiff
path: root/qerror.c
AgeCommit message (Collapse)AuthorFilesLines
2011-07-23Introduce a 'client_add' monitor command accepting an open FDDaniel P. Berrange1-0/+4
Allow client connections for VNC and socket based character devices to be passed in over the monitor using SCM_RIGHTS. One intended usage scenario is to start QEMU with VNC on a UNIX domain socket. An unprivileged user which cannot access the UNIX domain socket, can then connect to QEMU's VNC server by passing an open FD to libvirt, which passes it onto QEMU. { "execute": "get_fd", "arguments": { "fdname": "myclient" } } { "return": {} } { "execute": "add_client", "arguments": { "protocol": "vnc", "fdname": "myclient", "skipauth": true } } { "return": {} } In this case 'protocol' can be 'vnc' or 'spice', or the name of a character device (eg from -chardev id=XXXX) The 'skipauth' parameter can be used to skip any configured VNC authentication scheme, which is useful if the mgmt layer talking to the monitor has already authenticated the client in another way. * console.h: Define 'vnc_display_add_client' method * monitor.c: Implement 'client_add' command * qemu-char.c, qemu-char.h: Add 'qemu_char_add_client' method * qerror.c, qerror.h: Add QERR_ADD_CLIENT_FAILED * qmp-commands.hx: Declare 'client_add' command * ui/vnc.c: Implement 'vnc_display_add_client' method Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2011-07-21guest agent: add guest agent RPCs/commandsMichael Roth1-0/+8
This adds the initial set of QMP/QAPI commands provided by the guest agent: guest-sync guest-ping guest-info guest-shutdown guest-file-open guest-file-read guest-file-write guest-file-seek guest-file-flush guest-file-close guest-fsfreeze-freeze guest-fsfreeze-thaw guest-fsfreeze-status The input/output specification for these commands are documented in the schema. Example usage: host: qemu -device virtio-serial \ -chardev socket,path=/tmp/vs0.sock,server,nowait,id=qga0 \ -device virtserialport,chardev=qga0,name=org.qemu.quest_agent.0 ... echo "{'execute':'guest-info'}" | socat stdio unix-connect:/tmp/qga0.sock guest: qemu-ga -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0 \ -p /var/run/qemu-guest-agent.pid -d Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Luiz Capitulino <lcapitulino@gmail.com>
2011-07-21qerror: add QERR_JSON_PARSE_ERROR to qerror.cMichael Roth1-0/+5
Missing from previous addition of error to qerror.h. Needed for qerror_format() and friends. Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Luiz Capitulino <lcapitulino@gmail.com>
2011-06-08Merge remote-tracking branch 'qmp/for-anthony' into stagingAnthony Liguori1-0/+4
2011-06-07QError: Introduce qerror_format()Luiz Capitulino1-0/+15
Will be used by new error propagation framework to convert Error objects into human-readable form. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2011-06-07QError: Introduce qerror_format_desc()Luiz Capitulino1-19/+25
Refactor non-QError-specific bits out of qerror_human() into general function that can be used by the error_get_pretty() analogue in the new error-propagation framework. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2011-06-01QMP: QError: New QERR_UNSUPPORTEDLai Jiangshan1-0/+4
New QERR_UNSUPPORTED for unsupported commands or requests. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2011-02-10qerror: Add QERR_UNKNOWN_BLOCK_FORMAT_FEATUREKevin Wolf1-0/+5
Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>
2011-01-10pci: allow devices being tagged as not hotpluggable.Gerd Hoffmann1-0/+4
This patch adds a field to PCIDeviceInfo to tag devices as being not hotpluggable. Any attempt to plug-in or -out such a device will throw an error. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2010-10-03Use GCC_FMT_ATTR (format checking)Stefan Weil1-2/+4
Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2010-07-30migration: Accept 'cont' only after successful incoming migrationAmit Shah1-0/+4
When a 'cont' is issued on a VM that's just waiting for an incoming migration, the VM reboots and boots into the guest, possibly corrupting its storage since it could be shared with another VM running elsewhere. Ensure that a VM started with '-incoming' is only run when an incoming migration successfully completes. A new qerror, QERR_MIGRATION_EXPECTED, is added to signal that 'cont' failed due to no incoming migration has been attempted yet. Reported-by: Laine Stump <laine@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2010-07-01QError: Introduce QERR_QMP_EXTRA_MEMBERLuiz Capitulino1-0/+4
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-07-01QError: Enhance QERR_DEVICE_NOT_ACTIVE's user descLuiz Capitulino1-1/+1
The 'by the guest' part is misleading, it could be disabled by the host too. We will likely need more surgery if we care for the distinction, just dropping the problematic part is good enough for now. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-05-19Fix qtypes' licensesLuiz Capitulino1-1/+1
- Change from GPL to LGPL - Add license text when missing - Minor cosmetic changes to make all headers look the same Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-04-26QError: Improve QERR_QMP_BAD_INPUT_OBJECT descLuiz Capitulino1-1/+1
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-04-26QError: New QERR_QMP_BAD_INPUT_OBJECT_MEMBERLuiz Capitulino1-0/+4
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-04-18error: New QERR_DEVICE_IN_USEMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-04-18error: New QERR_INVALID_PARAMETER_VALUEMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-04-18error: New QERR_DUPLICATE_IDMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-04-18error: Put error definitions back in alphabetical orderMarkus Armbruster1-4/+8
Add suitable comments to help keerp them in order. Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2010-03-27error: Move qerror_report() from qemu-error.[ch] to qerror.[ch]Markus Armbruster1-0/+20
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2010-03-27error: Trim includes in qerror.cMarkus Armbruster1-2/+0
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2010-03-17QError: New QERR_DEVICE_NOT_ENCRYPTEDShahar Havivi1-0/+4
Signed-off-by: Shahar Havivi <shaharh@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-03-16error: New QERR_NO_BUS_FOR_DEVICEMarkus Armbruster1-0/+4
2010-03-16error: New QERR_DEVICE_INIT_FAILEDMarkus Armbruster1-0/+4
2010-03-16error: New QERR_BUS_NO_HOTPLUGMarkus Armbruster1-0/+4
2010-03-16error: New QERR_BAD_BUS_FOR_DEVICEMarkus Armbruster1-0/+4
2010-03-16error: New QERR_DEVICE_NO_BUSMarkus Armbruster1-0/+4
2010-03-16error: New QERR_DEVICE_MULTIPLE_BUSSESMarkus Armbruster1-0/+4
2010-03-16error: New QERR_BUS_NOT_FOUNDMarkus Armbruster1-0/+4
2010-03-16error: New QERR_PROPERTY_VALUE_NOT_FOUNDMarkus Armbruster1-0/+4
2010-03-16error: New QERR_PROPERTY_VALUE_IN_USEMarkus Armbruster1-0/+4
2010-03-16error: New QERR_PROPERTY_VALUE_BADMarkus Armbruster1-0/+4
2010-03-16error: New QERR_PROPERTY_NOT_FOUNDMarkus Armbruster1-0/+4
2010-03-16error: Polish human-readable error descriptionsMarkus Armbruster1-14/+14
Also put error definitions in alphabetical order
2010-03-16error: Infrastructure to track locations for error reportingMarkus Armbruster1-1/+4
New struct Location holds a location. So far, the only location is LOC_NONE, so this doesn't do anything useful yet. Passing the current location all over the place would be too cumbersome. Hide it away in static cur_loc instead, and provide accessors. Print it in error_report(). Store it in QError, and print it in qerror_print(). Store it in QemuOpt, for use by qemu_opts_foreach(). This makes error_report() do the right thing when it runs within qemu_opts_foreach(). We may still have to store it in other data structures holding user input for better error messages. Left for another day.
2010-03-16error: Replace qemu_error() by error_report()Markus Armbruster1-2/+2
error_report() terminates the message with a newline. Strip it it from its arguments. This fixes a few error messages lacking a newline: net_handle_fd_param()'s "No file descriptor named %s found", and tap_open()'s "vnet_hdr=1 requested, but no kernel support for IFF_VNET_HDR available" (all three versions). There's one place that passes arguments without newlines intentionally: load_vmstate(). Fix it up.
2010-03-16error: Move qemu_error & friends into their own headerMarkus Armbruster1-1/+1
2010-02-03Revert "QError: New QERR_INVALID_CPU_INDEX"Markus Armbruster1-4/+0
This reverts commit 64a34bb14c0e358a6b2f14805e59ef25bf62d6d5. Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-01-26QError: New QERR_INVALID_CPU_INDEXMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-01-26QError: New QERR_OPEN_FILE_FAILEDMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QMP: add human-readable description to error responseMarkus Armbruster1-5/+16
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_TOO_MANY_FILESMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07New QERR_INVALID_PARAMETERMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_FD_NOT_SUPPLIEDMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_FD_NOT_FOUNDMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_VNC_SERVER_FAILEDMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_SET_PASSWD_FAILEDMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_INVALID_BLOCK_FORMATMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-12-07QError: New QERR_DEVICE_NOT_REMOVABLEMarkus Armbruster1-0/+4
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>