Keys are int. HMP sendkey assigns them from the value strtoul(),
silently truncating values greater than INT_MAX. Fix to reject them.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <
20230109190321.
1056914-3-armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
v = g_malloc0(sizeof(*v));
if (strstart(keys, "0x", NULL)) {
- char *endp;
- int value = strtoul(keys, &endp, 0);
+ const char *endp;
+ int value;
+
+ if (qemu_strtoi(keys, &endp, 0, &value) < 0) {
+ goto err_out;
+ }
assert(endp <= keys + keyname_len);
if (endp != keys + keyname_len) {
goto err_out;