summaryrefslogtreecommitdiffstats
path: root/net/ipv6
diff options
context:
space:
mode:
authorMark J Cox <mjc@redhat.com>2005-09-19 17:55:30 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-19 18:45:42 -0700
commit6d1cfe3f1752f17e297df60c8bcc6cd6e0a58449 (patch)
tree458323fe234aef3e5b96abf153feec48fe8a84df /net/ipv6
parent997a51ae373df6484cdd4a5fc61a9c9bec82cd68 (diff)
downloadlinux-stable-6d1cfe3f1752f17e297df60c8bcc6cd6e0a58449.tar.gz
linux-stable-6d1cfe3f1752f17e297df60c8bcc6cd6e0a58449.tar.bz2
linux-stable-6d1cfe3f1752f17e297df60c8bcc6cd6e0a58449.zip
[PATCH] raw_sendmsg DoS on 2.6
Fix unchecked __get_user that could be tricked into generating a memory read on an arbitrary address. The result of the read is not returned directly but you may be able to divine some information about it, or use the read to cause a crash on some architectures by reading hardware state. CAN-2004-2492. Fix from Al Viro, ack from Dave Miller. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/raw.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
index 5aa3691c578d..a1265a320b11 100644
--- a/net/ipv6/raw.c
+++ b/net/ipv6/raw.c
@@ -627,7 +627,7 @@ static void rawv6_probe_proto_opt(struct flowi *fl, struct msghdr *msg)
if (type && code) {
get_user(fl->fl_icmp_type, type);
- __get_user(fl->fl_icmp_code, code);
+ get_user(fl->fl_icmp_code, code);
probed = 1;
}
break;