* [Qemu-devel] [PATCH] usb: Simplify the parameter parsing of the legacy usb serial device
@ 2017-05-19 7:00 Thomas Huth
2017-05-19 8:10 ` Paolo Bonzini
0 siblings, 1 reply; 2+ messages in thread
From: Thomas Huth @ 2017-05-19 7:00 UTC (permalink / raw)
To: qemu-devel, Gerd Hoffmann; +Cc: Paolo Bonzini
Coverity complains about the current code, so let's get rid of
the now unneeded while loop and simply always emit "unrecognized
serial USB option" for all unsupported options.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/usb/dev-serial.c | 21 +++++----------------
1 file changed, 5 insertions(+), 16 deletions(-)
diff --git a/hw/usb/dev-serial.c b/hw/usb/dev-serial.c
index 83a4f0e..76ceca1 100644
--- a/hw/usb/dev-serial.c
+++ b/hw/usb/dev-serial.c
@@ -516,27 +516,16 @@ static USBDevice *usb_serial_init(USBBus *bus, const char *filename)
char label[32];
static int index;
- while (*filename && *filename != ':') {
- const char *p;
-
- if (strstart(filename, "vendorid=", &p)) {
- error_report("vendorid is not supported anymore");
- return NULL;
- } else if (strstart(filename, "productid=", &p)) {
- error_report("productid is not supported anymore");
- return NULL;
- } else {
- error_report("unrecognized serial USB option %s", filename);
- return NULL;
- }
- while(*filename == ',')
- filename++;
+ if (*filename == ':') {
+ filename++;
+ } else if (*filename) {
+ error_report("unrecognized serial USB option %s", filename);
+ return NULL;
}
if (!*filename) {
error_report("character device specification needed");
return NULL;
}
- filename++;
snprintf(label, sizeof(label), "usbserial%d", index++);
cdrv = qemu_chr_new(label, filename);
--
1.8.3.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PATCH] usb: Simplify the parameter parsing of the legacy usb serial device
2017-05-19 7:00 [Qemu-devel] [PATCH] usb: Simplify the parameter parsing of the legacy usb serial device Thomas Huth
@ 2017-05-19 8:10 ` Paolo Bonzini
0 siblings, 0 replies; 2+ messages in thread
From: Paolo Bonzini @ 2017-05-19 8:10 UTC (permalink / raw)
To: Thomas Huth, qemu-devel, Gerd Hoffmann
On 19/05/2017 09:00, Thomas Huth wrote:
> Coverity complains about the current code, so let's get rid of
> the now unneeded while loop and simply always emit "unrecognized
> serial USB option" for all unsupported options.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/usb/dev-serial.c | 21 +++++----------------
> 1 file changed, 5 insertions(+), 16 deletions(-)
>
> diff --git a/hw/usb/dev-serial.c b/hw/usb/dev-serial.c
> index 83a4f0e..76ceca1 100644
> --- a/hw/usb/dev-serial.c
> +++ b/hw/usb/dev-serial.c
> @@ -516,27 +516,16 @@ static USBDevice *usb_serial_init(USBBus *bus, const char *filename)
> char label[32];
> static int index;
>
> - while (*filename && *filename != ':') {
> - const char *p;
> -
> - if (strstart(filename, "vendorid=", &p)) {
> - error_report("vendorid is not supported anymore");
> - return NULL;
> - } else if (strstart(filename, "productid=", &p)) {
> - error_report("productid is not supported anymore");
> - return NULL;
> - } else {
> - error_report("unrecognized serial USB option %s", filename);
> - return NULL;
> - }
> - while(*filename == ',')
> - filename++;
> + if (*filename == ':') {
> + filename++;
> + } else if (*filename) {
> + error_report("unrecognized serial USB option %s", filename);
> + return NULL;
> }
> if (!*filename) {
> error_report("character device specification needed");
> return NULL;
> }
> - filename++;
>
> snprintf(label, sizeof(label), "usbserial%d", index++);
> cdrv = qemu_chr_new(label, filename);
>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-05-19 8:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-19 7:00 [Qemu-devel] [PATCH] usb: Simplify the parameter parsing of the legacy usb serial device Thomas Huth
2017-05-19 8:10 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).