summaryrefslogtreecommitdiff
path: root/qga/service-win32.h
diff options
context:
space:
mode:
authorMichael Roth <mdroth@linux.vnet.ibm.com>2012-01-21 16:42:27 -0600
committerMichael Roth <mdroth@linux.vnet.ibm.com>2012-02-23 15:43:50 -0600
commitbc62fa039c402740dbae3233618c982f5943f6b1 (patch)
tree88836edf2d9669a4efaafd22c3c8280fca8175fb /qga/service-win32.h
parent7868e26e5930f49ca942311885776b938dcf3b77 (diff)
downloadqemu-bc62fa039c402740dbae3233618c982f5943f6b1.tar.gz
qemu-ga: add Windows service integration
This allows qemu-ga to function as a Windows service: - to install the service (will auto-start on boot): qemu-ga --service install - to start the service: net start qemu-ga - to stop the service: net stop qemu-ga - to uninstall service: qemu-ga --service uninstall Original patch by Gal Hammer <ghammer@redhat.com>
Diffstat (limited to 'qga/service-win32.h')
-rw-r--r--qga/service-win32.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/qga/service-win32.h b/qga/service-win32.h
new file mode 100644
index 0000000000..99dfc53348
--- /dev/null
+++ b/qga/service-win32.h
@@ -0,0 +1,30 @@
+/*
+ * QEMU Guest Agent helpers for win32 service management
+ *
+ * Copyright IBM Corp. 2012
+ *
+ * Authors:
+ * Gal Hammer <ghammer@redhat.com>
+ * Michael Roth <mdroth@linux.vnet.ibm.com>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+#ifndef QGA_SERVICE_H
+#define QGA_SERVICE_H
+
+#include <windows.h>
+
+#define QGA_SERVICE_DISPLAY_NAME "QEMU Guest Agent"
+#define QGA_SERVICE_NAME "qemu-ga"
+#define QGA_SERVICE_DESCRIPTION "Enables integration with QEMU machine emulator and virtualizer."
+
+typedef struct GAService {
+ SERVICE_STATUS status;
+ SERVICE_STATUS_HANDLE status_handle;
+} GAService;
+
+int ga_install_service(const char *path, const char *logfile);
+int ga_uninstall_service(void);
+
+#endif