]>
Commit | Line | Data |
---|---|---|
125b310e MR |
1 | /* |
2 | * QEMU Guest Agent channel declarations | |
3 | * | |
4 | * Copyright IBM Corp. 2012 | |
5 | * | |
6 | * Authors: | |
7 | * Michael Roth <[email protected]> | |
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 | #ifndef QGA_CHANNEL_H | |
13 | #define QGA_CHANNEL_H | |
14 | ||
125b310e MR |
15 | |
16 | typedef struct GAChannel GAChannel; | |
17 | ||
18 | typedef enum { | |
19 | GA_CHANNEL_VIRTIO_SERIAL, | |
20 | GA_CHANNEL_ISA_SERIAL, | |
21 | GA_CHANNEL_UNIX_LISTEN, | |
586ef5de | 22 | GA_CHANNEL_VSOCK_LISTEN, |
125b310e MR |
23 | } GAChannelMethod; |
24 | ||
25 | typedef gboolean (*GAChannelCallback)(GIOCondition condition, gpointer opaque); | |
26 | ||
27 | GAChannel *ga_channel_new(GAChannelMethod method, const gchar *path, | |
26de2296 SH |
28 | int listen_fd, GAChannelCallback cb, |
29 | gpointer opaque); | |
125b310e MR |
30 | void ga_channel_free(GAChannel *c); |
31 | GIOStatus ga_channel_read(GAChannel *c, gchar *buf, gsize size, gsize *count); | |
32 | GIOStatus ga_channel_write_all(GAChannel *c, const gchar *buf, gsize size); | |
33 | ||
34 | #endif |