qemu/qga/vss-win32/requester.h
<<
>>
Prefs
   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
  16#include <basetyps.h>           /* STDAPI */
  17
  18#ifdef __cplusplus
  19extern "C" {
  20#endif
  21
  22struct Error;
  23
  24/* Callback to set Error; used to avoid linking glib to the DLL */
  25typedef 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);
  29typedef struct ErrorSet {
  30    ErrorSetFunc error_setg_win32_wrapper;
  31    struct Error **errp;        /* restriction: must not be null */
  32} ErrorSet;
  33
  34STDAPI requester_init(void);
  35STDAPI requester_deinit(void);
  36
  37typedef void (*QGAVSSRequesterFunc)(int *, ErrorSet *);
  38void requester_freeze(int *num_vols, ErrorSet *errset);
  39void requester_thaw(int *num_vols, ErrorSet *errset);
  40
  41#ifdef __cplusplus
  42}
  43#endif
  44
  45#endif
  46