qdev-property: Make bit property parsing stricter

By using strncasecmp, we allow for arbitrary characters after the
"on"/"off" string. Fix this by switching to strcasecmp.

Reviewed-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
This commit is contained in:
Jan Kiszka 2012-01-21 14:43:07 +01:00 committed by Stefan Hajnoczi
parent 36945d95d2
commit c455d17c09

View File

@ -40,9 +40,9 @@ static void qdev_prop_cpy(DeviceState *dev, Property *props, void *src)
/* Bit */ /* Bit */
static int parse_bit(DeviceState *dev, Property *prop, const char *str) static int parse_bit(DeviceState *dev, Property *prop, const char *str)
{ {
if (!strncasecmp(str, "on", 2)) if (!strcasecmp(str, "on"))
bit_prop_set(dev, prop, true); bit_prop_set(dev, prop, true);
else if (!strncasecmp(str, "off", 3)) else if (!strcasecmp(str, "off"))
bit_prop_set(dev, prop, false); bit_prop_set(dev, prop, false);
else else
return -EINVAL; return -EINVAL;