2003-08-11 16:14:09

by Dave Jones

[permalink] [raw]
Subject: [PATCH] missing copy_from_user check in comx-proto-fr driver

diff -urpN --exclude-from=/home/davej/.exclude bk-linus/drivers/net/wan/comx-proto-fr.c linux-2.5/drivers/net/wan/comx-proto-fr.c
--- bk-linus/drivers/net/wan/comx-proto-fr.c 2003-05-20 18:41:21.000000000 +0100
+++ linux-2.5/drivers/net/wan/comx-proto-fr.c 2003-07-13 06:04:34.000000000 +0100
@@ -657,7 +657,10 @@ static int fr_write_proc(struct file *fi
return -ENOMEM;
}

- copy_from_user(page, buffer, count);
+ if (copy_from_user(page, buffer, count)) {
+ free_page((unsigned long)page);
+ return -EFAULT;
+ }
if (*(page + count - 1) == '\n') {
*(page + count - 1) = 0;
}