]>
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 <tomoki.sekiyama@hds.com> | |
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, ...) | |
9edc6313 | 28 | G_GNUC_PRINTF(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 | ||
0692b03e CH |
37 | typedef struct volList volList; |
38 | ||
39 | struct volList { | |
40 | volList *next; | |
41 | char *value; | |
42 | }; | |
43 | ||
44 | typedef void (*QGAVSSRequesterFunc)(int *, void *, ErrorSet *); | |
45 | void requester_freeze(int *num_vols, void *volList, ErrorSet *errset); | |
46 | void requester_thaw(int *num_vols, void *volList, ErrorSet *errset); | |
b39297ae TS |
47 | |
48 | #ifdef __cplusplus | |
49 | } | |
50 | #endif | |
51 | ||
52 | #endif |