summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorPeter Lieven <pl@kamp.de>2017-02-01 10:53:48 +0100
committerMax Reitz <mreitz@redhat.com>2017-02-12 00:47:42 +0100
commit8d20abe87afa735cd0ae6688bd105c7a27390343 (patch)
tree7b5fd58303cefcbc8388a803d58831a466fa63ab
parent16e977d506bcc2d9f7daa4a9f7cc2b48536d9da6 (diff)
downloadfocaccia-qemu-8d20abe87afa735cd0ae6688bd105c7a27390343.tar.gz
focaccia-qemu-8d20abe87afa735cd0ae6688bd105c7a27390343.zip
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>
-rw-r--r--block/nfs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/block/nfs.c b/block/nfs.c
index a564340d15..baaecff3fd 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;