1 /*
2 * Test Server
3 *
4 * Copyright IBM, Corp. 2011
5 *
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.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
14 #ifndef QTEST_H
15 #define QTEST_H
16
17 #include "chardev/char.h"
18
19 extern bool qtest_allowed;
20
qtest_enabled(void)21 static inline bool qtest_enabled(void)
22 {
23 return qtest_allowed;
24 }
25
26 void qtest_send_prefix(CharBackend *chr);
27 void G_GNUC_PRINTF(2, 3) qtest_sendf(CharBackend *chr, const char *fmt, ...);
28 void qtest_set_command_cb(bool (*pc_cb)(CharBackend *chr, gchar **words));
29 bool qtest_driver(void);
30
31 void qtest_server_init(const char *qtest_chrdev, const char *qtest_log, Error **errp);
32
33 void qtest_server_set_send_handler(void (*send)(void *, const char *),
34 void *opaque);
35 void qtest_server_inproc_recv(void *opaque, const char *buf);
36
37 int64_t qtest_get_virtual_clock(void);
38
39 #endif
40