mirror of
				https://git.proxmox.com/git/qemu
				synced 2025-10-31 20:07:46 +00:00 
			
		
		
		
	 6ed2c484f2
			
		
	
	
		6ed2c484f2
		
	
	
	
	
		
			
			It's emitted when the Virtual Machine resumes execution. We currently have the STOP event but don't have the matching RESUME one, this means that clients are notified when the VM is stopped but don't get anything when it resumes. Let's fix that as it's already causing some trouble to libvirt. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
		
			
				
	
	
		
			59 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef MONITOR_H
 | |
| #define MONITOR_H
 | |
| 
 | |
| #include "qemu-common.h"
 | |
| #include "qemu-char.h"
 | |
| #include "qerror.h"
 | |
| #include "qdict.h"
 | |
| #include "block.h"
 | |
| 
 | |
| extern Monitor *cur_mon;
 | |
| extern Monitor *default_mon;
 | |
| 
 | |
| /* flags for monitor_init */
 | |
| #define MONITOR_IS_DEFAULT    0x01
 | |
| #define MONITOR_USE_READLINE  0x02
 | |
| #define MONITOR_USE_CONTROL   0x04
 | |
| 
 | |
| /* QMP events */
 | |
| typedef enum MonitorEvent {
 | |
|     QEVENT_SHUTDOWN,
 | |
|     QEVENT_RESET,
 | |
|     QEVENT_POWERDOWN,
 | |
|     QEVENT_STOP,
 | |
|     QEVENT_RESUME,
 | |
|     QEVENT_VNC_CONNECTED,
 | |
|     QEVENT_VNC_INITIALIZED,
 | |
|     QEVENT_VNC_DISCONNECTED,
 | |
|     QEVENT_BLOCK_IO_ERROR,
 | |
|     QEVENT_RTC_CHANGE,
 | |
|     QEVENT_WATCHDOG,
 | |
|     QEVENT_MAX,
 | |
| } MonitorEvent;
 | |
| 
 | |
| int monitor_cur_is_qmp(void);
 | |
| 
 | |
| void monitor_protocol_event(MonitorEvent event, QObject *data);
 | |
| void monitor_init(CharDriverState *chr, int flags);
 | |
| 
 | |
| int monitor_suspend(Monitor *mon);
 | |
| void monitor_resume(Monitor *mon);
 | |
| 
 | |
| int monitor_read_bdrv_key_start(Monitor *mon, BlockDriverState *bs,
 | |
|                                 BlockDriverCompletionFunc *completion_cb,
 | |
|                                 void *opaque);
 | |
| 
 | |
| int monitor_get_fd(Monitor *mon, const char *fdname);
 | |
| 
 | |
| void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap);
 | |
| void monitor_printf(Monitor *mon, const char *fmt, ...)
 | |
|     __attribute__ ((__format__ (__printf__, 2, 3)));
 | |
| void monitor_print_filename(Monitor *mon, const char *filename);
 | |
| void monitor_flush(Monitor *mon);
 | |
| 
 | |
| typedef void (MonitorCompletion)(void *opaque, QObject *ret_data);
 | |
| 
 | |
| void monitor_set_error(Monitor *mon, QError *qerror);
 | |
| 
 | |
| #endif /* !MONITOR_H */
 |