On Tue, Sep 22, 2015 at 10:33:32PM +0200, Laszlo Ersek wrote: > On 09/22/15 22:16, Eduardo Habkost wrote: > > Guest visible data shouldn't change with a simple QEMU upgrade, so use > > qemu_hw_version() to ensure it won't change (as long as the machine > > class being used has hw_version set). > > > > Cc: Hannes Reinecke <h...@suse.de> > > Cc: Paolo Bonzini <pbonz...@redhat.com> > > Cc: qemu-block@nongnu.org > > Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> > > --- > > hw/scsi/megasas.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c > > index a04369c..e0529b1 100644 > > --- a/hw/scsi/megasas.c > > +++ b/hw/scsi/megasas.c > > @@ -757,7 +757,7 @@ static int megasas_ctrl_get_info(MegasasState *s, > > MegasasCmd *cmd) > > > > memcpy(info.product_name, base_class->product_name, 24); > > snprintf(info.serial_number, 32, "%s", s->hba_serial); > > - snprintf(info.package_version, 0x60, "%s-QEMU", QEMU_VERSION); > > + snprintf(info.package_version, 0x60, "%s-QEMU", qemu_hw_version()); > > memcpy(info.image_component[0].name, "APP", 3); > > snprintf(info.image_component[0].version, 10, "%s-QEMU", > > base_class->product_version); > > > > I assume you audited all uses of QEMU_VERSION, and this was the only one > exposed to the guest directly. > > However, in "hw/usb/redirect.c", QEMU_VERSION is embedded in VERSION, > and the latter is then passed to usbredirparser_init() in > usbredir_create_parser(). > > I tried to look up the documentation for usbredirparser_init() in > "/usr/include/usbredirparser.h", but I still have no clue what that > "version" parameter controls. > > Hm... from the source code of usbredir, and > <http://www.spice-space.org/page/UsbRedir> stating "usbredir is the name > of a network protocol for sending usb device traffic over a network > connection", it looks like the version number is embedded in the hello > message of that network protocol; so it shouldn't be exposed to the > guest indeed.
Investigating how VERSION was used in usbredirparser was next on my todo-list. Thanks for doing that. :) -- Eduardo