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