r2010 - in trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches: . series

Simon Horman horms@haydn.debian.org
Mon, 20 Dec 2004 20:23:33 -0700


Author: horms
Date: 2004-12-20 20:23:04 -0700 (Mon, 20 Dec 2004)
New Revision: 2010

Added:
   trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.div
Removed:
   trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.patch
Modified:
   trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/series/2.4.27-7
Log:
foo

Copied: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.div (from rev 2009, trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.patch)

Deleted: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.patch
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.patch	2004-12-19 12:43:53 UTC (rev 2009)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/116-cmsg-validation-checks.patch	2004-12-21 03:23:04 UTC (rev 2010)
@@ -1,112 +0,0 @@
-# origin: herbert@gondor.apana.org.au 
-# cset: 1.1516.6.2
-# inclusion: backport
-# revision date: 2004-12-14
-# description: Fix CMSG validation checks wrt. signedness.
-
-# This is a BitKeeper generated diff -Nru style patch.
-#
-# ChangeSet
-#   2004/12/08 13:13:56-08:00 herbert@gondor.apana.org.au 
-#   [NET]: Fix CMSG validation checks wrt. signedness.
-#   
-#   Noticed by Georgi Guninski.
-#   
-#   Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-#   Signed-off-by: David S. Miller <davem@davemloft.net>
-# 
-# include/linux/socket.h
-#   2004/12/08 13:13:07-08:00 herbert@gondor.apana.org.au +4 -0
-#   [NET]: Fix CMSG validation checks wrt. signedness.
-# 
-# net/core/scm.c
-#   2004/12/08 13:13:07-08:00 herbert@gondor.apana.org.au +1 -3
-#   [NET]: Fix CMSG validation checks wrt. signedness.
-# 
-# net/ipv4/ip_sockglue.c
-#   2004/12/08 13:13:07-08:00 herbert@gondor.apana.org.au +1 -4
-#   [NET]: Fix CMSG validation checks wrt. signedness.
-# 
-# net/ipv6/datagram.c
-#   2004/12/08 13:13:07-08:00 herbert@gondor.apana.org.au +1 -3
-#   [NET]: Fix CMSG validation checks wrt. signedness.
-# 
-# net/sctp/socket.c
-#   2004/12/08 13:13:08-08:00 herbert@gondor.apana.org.au +1 -5
-#   [NET]: Fix CMSG validation checks wrt. signedness.
-# 
-diff -Nru a/include/linux/socket.h b/include/linux/socket.h
---- a/include/linux/socket.h	2004-12-15 19:38:09 -08:00
-+++ b/include/linux/socket.h	2004-12-15 19:38:09 -08:00
-@@ -87,6 +87,10 @@
- 				  (struct cmsghdr *)(ctl) : \
- 				  (struct cmsghdr *)NULL)
- #define CMSG_FIRSTHDR(msg)	__CMSG_FIRSTHDR((msg)->msg_control, (msg)->msg_controllen)
-+#define CMSG_OK(mhdr, cmsg) ((cmsg)->cmsg_len >= sizeof(struct cmsghdr) && \
-+			     (cmsg)->cmsg_len <= (unsigned long) \
-+			     ((mhdr)->msg_controllen - \
-+			      ((char *)(cmsg) - (char *)(mhdr)->msg_control)))
- 
- /*
-  *	This mess will go away with glibc
-diff -Nru a/net/core/scm.c b/net/core/scm.c
---- a/net/core/scm.c	2004-12-15 19:38:09 -08:00
-+++ b/net/core/scm.c	2004-12-15 19:38:09 -08:00
-@@ -124,9 +124,7 @@
- 		   for too short ancillary data object at all! Oops.
- 		   OK, let's add it...
- 		 */
--		if (cmsg->cmsg_len < sizeof(struct cmsghdr) ||
--		    (unsigned long)(((char*)cmsg - (char*)msg->msg_control)
--				    + cmsg->cmsg_len) > msg->msg_controllen)
-+		if (!CMSG_OK(msg, cmsg))
- 			goto error;
- 
- 		if (cmsg->cmsg_level != SOL_SOCKET)
-diff -Nru a/net/ipv4/ip_sockglue.c b/net/ipv4/ip_sockglue.c
---- a/net/ipv4/ip_sockglue.c	2004-12-15 19:38:09 -08:00
-+++ b/net/ipv4/ip_sockglue.c	2004-12-15 19:38:09 -08:00
-@@ -143,11 +143,8 @@
- 	struct cmsghdr *cmsg;
- 
- 	for (cmsg = CMSG_FIRSTHDR(msg); cmsg; cmsg = CMSG_NXTHDR(msg, cmsg)) {
--		if (cmsg->cmsg_len < sizeof(struct cmsghdr) ||
--		    (unsigned long)(((char*)cmsg - (char*)msg->msg_control)
--				    + cmsg->cmsg_len) > msg->msg_controllen) {
-+		if (!CMSG_OK(msg, cmsg))
- 			return -EINVAL;
--		}
- 		if (cmsg->cmsg_level != SOL_IP)
- 			continue;
- 		switch (cmsg->cmsg_type) {
-diff -Nru a/net/ipv6/datagram.c b/net/ipv6/datagram.c
---- a/net/ipv6/datagram.c	2004-12-15 19:38:09 -08:00
-+++ b/net/ipv6/datagram.c	2004-12-15 19:38:09 -08:00
-@@ -260,9 +260,7 @@
- 
- 	for (cmsg = CMSG_FIRSTHDR(msg); cmsg; cmsg = CMSG_NXTHDR(msg, cmsg)) {
- 
--		if (cmsg->cmsg_len < sizeof(struct cmsghdr) ||
--		    (unsigned long)(((char*)cmsg - (char*)msg->msg_control)
--				    + cmsg->cmsg_len) > msg->msg_controllen) {
-+		if (!CMSG_OK(msg, cmsg)) {
- 			err = -EINVAL;
- 			goto exit_f;
- 		}
-diff -Nru a/net/sctp/socket.c b/net/sctp/socket.c
---- a/net/sctp/socket.c	2004-12-15 19:38:09 -08:00
-+++ b/net/sctp/socket.c	2004-12-15 19:38:09 -08:00
-@@ -4090,12 +4090,8 @@
- 	for (cmsg = CMSG_FIRSTHDR(msg);
- 	     cmsg != NULL;
- 	     cmsg = CMSG_NXTHDR((struct msghdr*)msg, cmsg)) {
--		/* Check for minimum length.  The SCM code has this check.  */
--		if (cmsg->cmsg_len < sizeof(struct cmsghdr) ||
--		    (unsigned long)(((char*)cmsg - (char*)msg->msg_control)
--				    + cmsg->cmsg_len) > msg->msg_controllen) {
-+		if (!CMSG_OK(msg, cmsg))
- 			return -EINVAL;
--		}
- 
- 		/* Should we parse this header or ignore?  */
- 		if (cmsg->cmsg_level != IPPROTO_SCTP)

Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/series/2.4.27-7
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/series/2.4.27-7	2004-12-19 12:43:53 UTC (rev 2009)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/series/2.4.27-7	2004-12-21 03:23:04 UTC (rev 2010)
@@ -1,6 +1,6 @@
 + 113-unix-serialization.diff
 + 114-binfmt_aout-CAN-2004-1074.diff
 + 115_tty_lockup-3.diff
-+ 116-cmsg-validation-checks.patch
-+ 117-igmp-source-filter-fixes.patch
-+ 118-cmsg-validation-checks-compat.patch
++ 116-cmsg-validation-checks.diff
++ 116-cmsg-validation-checks-compat.diff
++ 117-igmp-source-filter-fixes.diff