summaryrefslogtreecommitdiff
path: root/block
diff options
context:
space:
mode:
authorPeter Lieven <pl@kamp.de>2017-02-01 10:53:48 +0100
committerMichael Roth <mdroth@linux.vnet.ibm.com>2017-03-16 12:10:40 -0500
commit44d24c7b4a6eb9592f5611ee194e784df66705f1 (patch)
treee832003c5d7e6a324b6e8a0a589100b8ced6c6bb /block
parent5f4b9013e66433e68b9f401a33e76b745f6fe7dd (diff)
downloadqemu-44d24c7b4a6eb9592f5611ee194e784df66705f1.tar.gz
block/nfs: fix NULL pointer dereference in URI parsing
parse_uint_full wants to put the parsed value into the variable passed via its second argument which is NULL. Fixes: 94d6a7a76e9df9919629428f6c598e2b97d9426c Cc: qemu-stable@nongnu.org Signed-off-by: Peter Lieven <pl@kamp.de> Reviewed-by: Eric Blake <eblake@redhat.com> Message-id: 1485942829-10756-2-git-send-email-pl@kamp.de Signed-off-by: Max Reitz <mreitz@redhat.com> (cherry picked from commit 8d20abe87afa735cd0ae6688bd105c7a27390343) Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Diffstat (limited to 'block')
-rw-r--r--block/nfs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/block/nfs.c b/block/nfs.c
index a490660027..dd376dbb9b 100644
--- a/block/nfs.c
+++ b/block/nfs.c
@@ -108,12 +108,13 @@ static int nfs_parse_uri(const char *filename, QDict *options, Error **errp)
qdict_put(options, "path", qstring_from_str(uri->path));
for (i = 0; i < qp->n; i++) {
+ unsigned long long val;
if (!qp->p[i].value) {
error_setg(errp, "Value for NFS parameter expected: %s",
qp->p[i].name);
goto out;
}
- if (parse_uint_full(qp->p[i].value, NULL, 0)) {
+ if (parse_uint_full(qp->p[i].value, &val, 0)) {
error_setg(errp, "Illegal value for NFS parameter: %s",
qp->p[i].name);
goto out;