From: Vladimir Sementsov-Ogievskiy Date: Wed, 14 Jan 2026 06:47:09 +0000 (+0300) Subject: qemu-file: qemu_file_get_fd(): check service byte itself X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=20125d93af2d228f3f8f20af7d1cd3b1dc7baf0c;p=thirdparty%2Fqemu.git qemu-file: qemu_file_get_fd(): check service byte itself We can check it, so, why not. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Fabiano Rosas Link: https://lore.kernel.org/qemu-devel/20260114064710.176268-5-vsementsov@yandex-team.ru Signed-off-by: Fabiano Rosas --- diff --git a/migration/qemu-file.c b/migration/qemu-file.c index 847694e2cf..8fdb6c87ea 100644 --- a/migration/qemu-file.c +++ b/migration/qemu-file.c @@ -390,13 +390,19 @@ int qemu_file_get_fd(QEMUFile *f) int fd = -1; FdEntry *fde; Error *err = NULL; + int service_byte; if (!f->can_pass_fd) { error_setg(&err, "%s does not support fd passing", f->ioc->name); goto fail; } - qemu_get_byte(f); + service_byte = qemu_get_byte(f); + if (service_byte != ' ') { + error_setg(&err, "%s unexpected service byte: %d(%c)", f->ioc->name, + service_byte, service_byte); + goto fail; + } fde = QTAILQ_FIRST(&f->fds); if (!fde) {