scsi: pvscsi: check command descriptor ring buffer size (CVE-2016-4952)
[qemu.git] / qga / vss-win32 / requester.h
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
19 extern "C" {
20 #endif
21
22 struct Error;
23
24 /* Callback to set Error; used to avoid linking glib to the DLL */
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);
29 typedef struct ErrorSet {
30 ErrorSetFunc error_setg_win32_wrapper;
31 struct Error **errp; /* restriction: must not be null */
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