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

Commit 1e21ac0a authored by Matthias Kaehlcke's avatar Matthias Kaehlcke Committed by Michael Benedict
Browse files

UPSTREAM: zram: rework copy of compressor name in comp_algorithm_store()

comp_algorithm_store() passes the size of the source buffer to strlcpy()
instead of the destination buffer size.  Make it explicit that the two
buffers have the same size and use strcpy() instead of strlcpy().  The
latter can be done safely since the function ensures that the string in
the source buffer is terminated.

Link: http://lkml.kernel.org/r/20170803163350.45245-1-mka@chromium.org


Signed-off-by: default avatarMatthias Kaehlcke <mka@chromium.org>
Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
Reviewed-by: default avatarSergey Senozhatsky <sergey.senozhatsky@gmail.com>
Acked-by: default avatarMinchan Kim <minchan@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>

(cherry picked from commit f357e345eef7863da037e0243f2d3df4ba6df986)
Signed-off-by: default avatarPeter Kalauskas <peskal@google.com>
Bug: 112488418
Change-Id: Ic9667b215ce5e0717bc6829d65e43e9b79602362
parent 9f193aea
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -307,7 +307,7 @@ static ssize_t comp_algorithm_store(struct device *dev,
		struct device_attribute *attr, const char *buf, size_t len)
		struct device_attribute *attr, const char *buf, size_t len)
{
{
	struct zram *zram = dev_to_zram(dev);
	struct zram *zram = dev_to_zram(dev);
	char compressor[CRYPTO_MAX_ALG_NAME];
	char compressor[ARRAY_SIZE(zram->compressor)];
	size_t sz;
	size_t sz;


	strlcpy(compressor, buf, sizeof(compressor));
	strlcpy(compressor, buf, sizeof(compressor));
@@ -326,7 +326,7 @@ static ssize_t comp_algorithm_store(struct device *dev,
		return -EBUSY;
		return -EBUSY;
	}
	}


	strlcpy(zram->compressor, compressor, sizeof(compressor));
	strcpy(zram->compressor, compressor);
	up_write(&zram->init_lock);
	up_write(&zram->init_lock);
	return len;
	return len;
}
}