821d28b88f
Introduce a random number generator (RNG) backend that communicates with a vhost-user server to retrieve entropy. That way other VMM that comply with the vhost user protocl can use the same vhost-user daemon without having to write yet another RNG driver. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org> Message-Id: <20211012205904.4106769-2-mathieu.poirier@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
34 lines
743 B
C
34 lines
743 B
C
/*
|
|
* Vhost-user RNG virtio device
|
|
*
|
|
* Copyright (c) 2021 Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
#ifndef _QEMU_VHOST_USER_RNG_H
|
|
#define _QEMU_VHOST_USER_RNG_H
|
|
|
|
#include "hw/virtio/virtio.h"
|
|
#include "hw/virtio/vhost.h"
|
|
#include "hw/virtio/vhost-user.h"
|
|
#include "chardev/char-fe.h"
|
|
|
|
#define TYPE_VHOST_USER_RNG "vhost-user-rng"
|
|
OBJECT_DECLARE_SIMPLE_TYPE(VHostUserRNG, VHOST_USER_RNG)
|
|
|
|
struct VHostUserRNG {
|
|
/*< private >*/
|
|
VirtIODevice parent;
|
|
CharBackend chardev;
|
|
struct vhost_virtqueue *vhost_vq;
|
|
struct vhost_dev vhost_dev;
|
|
VhostUserState vhost_user;
|
|
VirtQueue *req_vq;
|
|
bool connected;
|
|
|
|
/*< public >*/
|
|
};
|
|
|
|
#endif /* _QEMU_VHOST_USER_RNG_H */
|