mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-15 02:05:33 +00:00
drbd: Ensure that data_size is not 0 before using data_size-1 as index
This could be exploited by a peer which runs modified code. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
This commit is contained in:
parent
a1096a6e9d
commit
e4bad1bcac
@ -3344,9 +3344,9 @@ static int receive_SyncParam(struct drbd_tconn *tconn, struct packet_info *pi)
|
||||
|
||||
if (apv >= 88) {
|
||||
if (apv == 88) {
|
||||
if (data_size > SHARED_SECRET_MAX) {
|
||||
dev_err(DEV, "verify-alg too long, "
|
||||
"peer wants %u, accepting only %u byte\n",
|
||||
if (data_size > SHARED_SECRET_MAX || data_size == 0) {
|
||||
dev_err(DEV, "verify-alg of wrong size, "
|
||||
"peer wants %u, accepting only up to %u byte\n",
|
||||
data_size, SHARED_SECRET_MAX);
|
||||
err = -EIO;
|
||||
goto reconnect;
|
||||
|
Loading…
x
Reference in New Issue
Block a user