1 /*
2  * Vhost-user vsock virtio device
3  *
4  * Copyright 2020 Red Hat, Inc.
5  *
6  * This work is licensed under the terms of the GNU GPL, version 2 or
7  * (at your option) any later version.  See the COPYING file in the
8  * top-level directory.
9  */
10 
11 #ifndef _QEMU_VHOST_USER_VSOCK_H
12 #define _QEMU_VHOST_USER_VSOCK_H
13 
14 #include "hw/virtio/vhost-vsock-common.h"
15 #include "hw/virtio/vhost-user.h"
16 #include "standard-headers/linux/virtio_vsock.h"
17 #include "qom/object.h"
18 
19 #define TYPE_VHOST_USER_VSOCK "vhost-user-vsock-device"
20 typedef struct VHostUserVSock VHostUserVSock;
21 DECLARE_INSTANCE_CHECKER(VHostUserVSock, VHOST_USER_VSOCK,
22                          TYPE_VHOST_USER_VSOCK)
23 
24 typedef struct {
25     CharBackend chardev;
26 } VHostUserVSockConf;
27 
28 struct VHostUserVSock {
29     /*< private >*/
30     VHostVSockCommon parent;
31     VhostUserState vhost_user;
32     VHostUserVSockConf conf;
33     struct virtio_vsock_config vsockcfg;
34 
35     /*< public >*/
36 };
37 
38 #endif /* _QEMU_VHOST_USER_VSOCK_H */
39