]>
Commit | Line | Data |
---|---|---|
b39297ae TS |
1 | /* |
2 | * QEMU Guest Agent VSS requester declarations | |
3 | * | |
4 | * Copyright Hitachi Data Systems Corp. 2013 | |
5 | * | |
6 | * Authors: | |
7 | * Tomoki Sekiyama <[email protected]> | |
8 | * | |
9 | * This work is licensed under the terms of the GNU GPL, version 2 or later. | |
10 | * See the COPYING file in the top-level directory. | |
11 | */ | |
12 | ||
13 | #ifndef VSS_WIN32_REQUESTER_H | |
14 | #define VSS_WIN32_REQUESTER_H | |
15 | ||
ba1c2931 | 16 | #include <basetyps.h> /* STDAPI */ |
b39297ae TS |
17 | |
18 | #ifdef __cplusplus | |
19 | extern "C" { | |
20 | #endif | |
21 | ||
e7cf59e8 MA |
22 | struct Error; |
23 | ||
b39297ae | 24 | /* Callback to set Error; used to avoid linking glib to the DLL */ |
1e9b65bb MA |
25 | typedef void (*ErrorSetFunc)(struct Error **errp, |
26 | const char *src, int line, const char *func, | |
27 | int win32_err, const char *fmt, ...) | |
28 | GCC_FMT_ATTR(6, 7); | |
b39297ae | 29 | typedef struct ErrorSet { |
e55eb806 | 30 | ErrorSetFunc error_setg_win32_wrapper; |
08e64640 | 31 | struct Error **errp; /* restriction: must not be null */ |
b39297ae TS |
32 | } ErrorSet; |
33 | ||
34 | STDAPI requester_init(void); | |
35 | STDAPI requester_deinit(void); | |
36 | ||
37 | typedef void (*QGAVSSRequesterFunc)(int *, ErrorSet *); | |
38 | void requester_freeze(int *num_vols, ErrorSet *errset); | |
39 | void requester_thaw(int *num_vols, ErrorSet *errset); | |
40 | ||
41 | #ifdef __cplusplus | |
42 | } | |
43 | #endif | |
44 | ||
45 | #endif |