diff options
author | Cyrill Gorcunov <gorcunov@openvz.org> | 2009-11-08 00:51:19 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-10 23:54:41 -0500 |
commit | 13cfa97bef0f1172879f98307ac716acf3e9cea9 (patch) | |
tree | 012d5da286e39fbe94c7b100be9153a49191bd7e /net | |
parent | 37e8273cd30592d3a82bcb70cbb1bdc4eaeb6b71 (diff) |
net: netlink_getname, packet_getname -- use DECLARE_SOCKADDR guard
Use guard DECLARE_SOCKADDR in a few more places which allow
us to catch if the structure copied back is too big.
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/netlink/af_netlink.c | 2 | ||||
-rw-r--r-- | net/packet/af_packet.c | 2 | ||||
-rw-r--r-- | net/unix/af_unix.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index aea805c98da3..f30d596dbc58 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c | |||
@@ -708,7 +708,7 @@ static int netlink_getname(struct socket *sock, struct sockaddr *addr, | |||
708 | { | 708 | { |
709 | struct sock *sk = sock->sk; | 709 | struct sock *sk = sock->sk; |
710 | struct netlink_sock *nlk = nlk_sk(sk); | 710 | struct netlink_sock *nlk = nlk_sk(sk); |
711 | struct sockaddr_nl *nladdr = (struct sockaddr_nl *)addr; | 711 | DECLARE_SOCKADDR(struct sockaddr_nl *, nladdr, addr); |
712 | 712 | ||
713 | nladdr->nl_family = AF_NETLINK; | 713 | nladdr->nl_family = AF_NETLINK; |
714 | nladdr->nl_pad = 0; | 714 | nladdr->nl_pad = 0; |
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index 3304caa65347..c620bd9ae3de 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c | |||
@@ -1537,7 +1537,7 @@ static int packet_getname(struct socket *sock, struct sockaddr *uaddr, | |||
1537 | struct net_device *dev; | 1537 | struct net_device *dev; |
1538 | struct sock *sk = sock->sk; | 1538 | struct sock *sk = sock->sk; |
1539 | struct packet_sock *po = pkt_sk(sk); | 1539 | struct packet_sock *po = pkt_sk(sk); |
1540 | struct sockaddr_ll *sll = (struct sockaddr_ll *)uaddr; | 1540 | DECLARE_SOCKADDR(struct sockaddr_ll *, sll, uaddr); |
1541 | 1541 | ||
1542 | if (peer) | 1542 | if (peer) |
1543 | return -EOPNOTSUPP; | 1543 | return -EOPNOTSUPP; |
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index 178d3af2a605..7553ea6edd8f 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c | |||
@@ -1259,7 +1259,7 @@ static int unix_getname(struct socket *sock, struct sockaddr *uaddr, int *uaddr_ | |||
1259 | { | 1259 | { |
1260 | struct sock *sk = sock->sk; | 1260 | struct sock *sk = sock->sk; |
1261 | struct unix_sock *u; | 1261 | struct unix_sock *u; |
1262 | struct sockaddr_un *sunaddr = (struct sockaddr_un *)uaddr; | 1262 | DECLARE_SOCKADDR(struct sockaddr_un *, sunaddr, uaddr); |
1263 | int err = 0; | 1263 | int err = 0; |
1264 | 1264 | ||
1265 | if (peer) { | 1265 | if (peer) { |