Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b8017d29 authored by Alexey Khoroshilov's avatar Alexey Khoroshilov Committed by Boaz Harrosh
Browse files

exofs: check for allocation failure in uri_store()



There is no memory allocation failure check in uri_store().
That can lead to NULL pointer dereference.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: default avatarAlexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
parent 0d7614f0
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -80,8 +80,13 @@ static ssize_t uri_show(struct exofs_dev *edp, char *buf)

static ssize_t uri_store(struct exofs_dev *edp, const char *buf, size_t len)
{
	uint8_t *new_uri;

	edp->urilen = strlen(buf) + 1;
	edp->uri = krealloc(edp->uri, edp->urilen, GFP_KERNEL);
	new_uri = krealloc(edp->uri, edp->urilen, GFP_KERNEL);
	if (new_uri == NULL)
		return -ENOMEM;
	edp->uri = new_uri;
	strncpy(edp->uri, buf, edp->urilen);
	return edp->urilen;
}