summaryrefslogtreecommitdiffstats
path: root/net/appletalk
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2009-08-06 02:27:43 +0000
committerDavid S. Miller <davem@davemloft.net>2009-08-06 13:08:45 -0700
commit3d392475c873c10c10d6d96b94d092a34ebd4791 (patch)
tree5746cbd3c9d6fe4ca262a77353b7543b2bf36827 /net/appletalk
parentf6b97b29513950bfbf621a83d85b6f86b39ec8db (diff)
downloadlinux-3d392475c873c10c10d6d96b94d092a34ebd4791.tar.gz
linux-3d392475c873c10c10d6d96b94d092a34ebd4791.tar.bz2
linux-3d392475c873c10c10d6d96b94d092a34ebd4791.zip
appletalk: fix atalk_getname() leak
atalk_getname() can leak 8 bytes of kernel memory to user Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/appletalk')
-rw-r--r--net/appletalk/ddp.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/appletalk/ddp.c b/net/appletalk/ddp.c
index 590b83963622..9ef6ff26eb0c 100644
--- a/net/appletalk/ddp.c
+++ b/net/appletalk/ddp.c
@@ -1237,6 +1237,7 @@ static int atalk_getname(struct socket *sock, struct sockaddr *uaddr,
return -ENOBUFS;
*uaddr_len = sizeof(struct sockaddr_at);
+ memset(&sat.sat_zero, 0, sizeof(sat.sat_zero));
if (peer) {
if (sk->sk_state != TCP_ESTABLISHED)