diff options
author | Markus Armbruster <armbru@redhat.com> | 2011-11-22 09:46:03 +0100 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2011-11-28 16:20:52 -0600 |
commit | 961b42b9dc858936f32effc3f47c76b1c4e7de56 (patch) | |
tree | 069d555b4a2f983961ff61abf30cdd42552428da | |
parent | c03417b438624988f1a027ce7829696ac98c3165 (diff) |
vl: Tighten parsing of -m argument
strtosz_suffix() fails unless the size is followed by 0, whitespace or
','. Useless here, because we need to fail for any junk following the
size, even if it starts with whitespace or ','. Check manually.
Things like "-m 1024," are now caught.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r-- | vl.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -2535,9 +2535,10 @@ int main(int argc, char **argv, char **envp) break; case QEMU_OPTION_m: { int64_t value; + char *end; - value = strtosz(optarg, NULL); - if (value < 0) { + value = strtosz(optarg, &end); + if (value < 0 || *end) { fprintf(stderr, "qemu: invalid ram size: %s\n", optarg); exit(1); } |