Paul Mackerras: Remote Linux DoS on ppp servers (CAN-2005-0384)

Linux Kernel Mailing List <[email protected]> Wed, 16 Mar 2005 16:35:16 +0000
Newsgroups gmane.linux.kernel.commits.2-4
Message-ID <[email protected]>
ChangeSet 1.1583, 2005/03/16 13:35:16-03:00, [email protected]

	Paul Mackerras: Remote Linux DoS on ppp servers (CAN-2005-0384)



 ppp_async.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


diff -Nru a/drivers/net/ppp_async.c b/drivers/net/ppp_async.c
--- a/drivers/net/ppp_async.c	2005-03-16 15:03:09 -08:00
+++ b/drivers/net/ppp_async.c	2005-03-16 15:03:09 -08:00
@@ -996,7 +996,7 @@
 	data += 4;
 	dlen -= 4;
 	/* data[0] is code, data[1] is length */
-	while (dlen >= 2 && dlen >= data[1]) {
+	while (dlen >= 2 && dlen >= data[1] && data[1] >= 2) {
 		switch (data[0]) {
 		case LCP_MRU:
 			val = (data[2] << 8) + data[3];