From 19629537bd8d81fa7a32f2df5c39419afded04fa Mon Sep 17 00:00:00 2001 From: Glauber Costa Date: Wed, 20 May 2009 18:26:57 -0400 Subject: introduce set_rate_limit function for QEMUFile This patch converts the current callers of qemu_fopen_ops(). Signed-off-by: Glauber Costa Signed-off-by: Anthony Liguori --- hw/hw.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'hw') diff --git a/hw/hw.h b/hw/hw.h index c990d1a..dd11f0a 100644 --- a/hw/hw.h +++ b/hw/hw.h @@ -36,10 +36,17 @@ typedef int (QEMUFileCloseFunc)(void *opaque); */ typedef int (QEMUFileRateLimit)(void *opaque); +/* Called to change the current bandwidth allocation. This function must return + * the new actual bandwidth. It should be new_rate if everything goes ok, and + * the old rate otherwise + */ +typedef size_t (QEMUFileSetRateLimit)(void *opaque, size_t new_rate); + QEMUFile *qemu_fopen_ops(void *opaque, QEMUFilePutBufferFunc *put_buffer, QEMUFileGetBufferFunc *get_buffer, QEMUFileCloseFunc *close, - QEMUFileRateLimit *rate_limit); + QEMUFileRateLimit *rate_limit, + QEMUFileSetRateLimit *set_rate_limit); QEMUFile *qemu_fopen(const char *filename, const char *mode); QEMUFile *qemu_fopen_socket(int fd); QEMUFile *qemu_popen(FILE *popen_file, const char *mode); @@ -73,6 +80,7 @@ unsigned int qemu_get_be16(QEMUFile *f); unsigned int qemu_get_be32(QEMUFile *f); uint64_t qemu_get_be64(QEMUFile *f); int qemu_file_rate_limit(QEMUFile *f); +size_t qemu_file_set_rate_limit(QEMUFile *f, size_t new_rate); int qemu_file_has_error(QEMUFile *f); void qemu_file_set_error(QEMUFile *f); -- cgit v1.1