xref: /openbmc/qemu/qga/service-win32.h (revision f96a3165ab1c36dbf4cb63e8761fa45457381aca)
1bc62fa03SMichael Roth /*
2bc62fa03SMichael Roth  * QEMU Guest Agent helpers for win32 service management
3bc62fa03SMichael Roth  *
4bc62fa03SMichael Roth  * Copyright IBM Corp. 2012
5bc62fa03SMichael Roth  *
6bc62fa03SMichael Roth  * Authors:
7bc62fa03SMichael Roth  *  Gal Hammer        <ghammer@redhat.com>
8bc62fa03SMichael Roth  *  Michael Roth      <mdroth@linux.vnet.ibm.com>
9bc62fa03SMichael Roth  *
10bc62fa03SMichael Roth  * This work is licensed under the terms of the GNU GPL, version 2 or later.
11bc62fa03SMichael Roth  * See the COPYING file in the top-level directory.
12bc62fa03SMichael Roth  */
13121d0712SMarkus Armbruster 
14121d0712SMarkus Armbruster #ifndef QGA_SERVICE_WIN32_H
15121d0712SMarkus Armbruster #define QGA_SERVICE_WIN32_H
16bc62fa03SMichael Roth 
17bc62fa03SMichael Roth #include <windows.h>
18bc62fa03SMichael Roth 
19bc62fa03SMichael Roth #define QGA_SERVICE_DISPLAY_NAME "QEMU Guest Agent"
20bc62fa03SMichael Roth #define QGA_SERVICE_NAME         "qemu-ga"
21bc62fa03SMichael Roth #define QGA_SERVICE_DESCRIPTION  "Enables integration with QEMU machine emulator and virtualizer."
22bc62fa03SMichael Roth 
23*b70d6afeSBishara AbuHattoum static const GUID GUID_VIOSERIAL_PORT = { 0x6fde7521, 0x1b65, 0x48ae,
24*b70d6afeSBishara AbuHattoum { 0xb6, 0x28, 0x80, 0xbe, 0x62, 0x1, 0x60, 0x26 } };
25*b70d6afeSBishara AbuHattoum 
26bc62fa03SMichael Roth typedef struct GAService {
27bc62fa03SMichael Roth     SERVICE_STATUS status;
28bc62fa03SMichael Roth     SERVICE_STATUS_HANDLE status_handle;
29*b70d6afeSBishara AbuHattoum     HDEVNOTIFY device_notification_handle;
30bc62fa03SMichael Roth } GAService;
31bc62fa03SMichael Roth 
32a839ee77SLaszlo Ersek int ga_install_service(const char *path, const char *logfile,
33a839ee77SLaszlo Ersek                        const char *state_dir);
34bc62fa03SMichael Roth int ga_uninstall_service(void);
35bc62fa03SMichael Roth 
36bc62fa03SMichael Roth #endif
37