1*b39297aeSTomoki Sekiyama /* 2*b39297aeSTomoki Sekiyama * QEMU Guest Agent VSS requester declarations 3*b39297aeSTomoki Sekiyama * 4*b39297aeSTomoki Sekiyama * Copyright Hitachi Data Systems Corp. 2013 5*b39297aeSTomoki Sekiyama * 6*b39297aeSTomoki Sekiyama * Authors: 7*b39297aeSTomoki Sekiyama * Tomoki Sekiyama <tomoki.sekiyama@hds.com> 8*b39297aeSTomoki Sekiyama * 9*b39297aeSTomoki Sekiyama * This work is licensed under the terms of the GNU GPL, version 2 or later. 10*b39297aeSTomoki Sekiyama * See the COPYING file in the top-level directory. 11*b39297aeSTomoki Sekiyama */ 12*b39297aeSTomoki Sekiyama 13*b39297aeSTomoki Sekiyama #ifndef VSS_WIN32_REQUESTER_H 14*b39297aeSTomoki Sekiyama #define VSS_WIN32_REQUESTER_H 15*b39297aeSTomoki Sekiyama 16*b39297aeSTomoki Sekiyama #include "qemu/compiler.h" 17*b39297aeSTomoki Sekiyama 18*b39297aeSTomoki Sekiyama #ifdef __cplusplus 19*b39297aeSTomoki Sekiyama extern "C" { 20*b39297aeSTomoki Sekiyama #endif 21*b39297aeSTomoki Sekiyama 22*b39297aeSTomoki Sekiyama /* Callback to set Error; used to avoid linking glib to the DLL */ 23*b39297aeSTomoki Sekiyama typedef void (*ErrorSetFunc)(void **errp, int win32_err, int err_class, 24*b39297aeSTomoki Sekiyama const char *fmt, ...) GCC_FMT_ATTR(4, 5); 25*b39297aeSTomoki Sekiyama typedef struct ErrorSet { 26*b39297aeSTomoki Sekiyama ErrorSetFunc error_set; 27*b39297aeSTomoki Sekiyama void **errp; 28*b39297aeSTomoki Sekiyama int err_class; 29*b39297aeSTomoki Sekiyama } ErrorSet; 30*b39297aeSTomoki Sekiyama 31*b39297aeSTomoki Sekiyama STDAPI requester_init(void); 32*b39297aeSTomoki Sekiyama STDAPI requester_deinit(void); 33*b39297aeSTomoki Sekiyama 34*b39297aeSTomoki Sekiyama typedef void (*QGAVSSRequesterFunc)(int *, ErrorSet *); 35*b39297aeSTomoki Sekiyama void requester_freeze(int *num_vols, ErrorSet *errset); 36*b39297aeSTomoki Sekiyama void requester_thaw(int *num_vols, ErrorSet *errset); 37*b39297aeSTomoki Sekiyama 38*b39297aeSTomoki Sekiyama #ifdef __cplusplus 39*b39297aeSTomoki Sekiyama } 40*b39297aeSTomoki Sekiyama #endif 41*b39297aeSTomoki Sekiyama 42*b39297aeSTomoki Sekiyama #endif 43