diff options
| author | Greg Kroah-Hartman <gregkh@suse.de> | 2010-11-17 16:47:26 -0500 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-11-17 16:47:50 -0500 |
| commit | 14c05aa399e30f343f25158c9adfc44631378a96 (patch) | |
| tree | 9ee42af7327555673132cd3cff73449e5392ed2d /net/packet/af_packet.c | |
| parent | 319684b1cd15f24120b9513b38a949539c0b7938 (diff) | |
| parent | e53beacd23d9cb47590da6a7a7f6d417b941a994 (diff) | |
Driver core: Merge 2.6.37-rc2 into driver-core-next
This resolves some build issues that were present in the older -rc1
tree that kept bothering me.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'net/packet/af_packet.c')
| -rw-r--r-- | net/packet/af_packet.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index 3616f27b9d46..8298e676f5a0 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c | |||
| @@ -1610,9 +1610,11 @@ static int packet_recvmsg(struct kiocb *iocb, struct socket *sock, | |||
| 1610 | 1610 | ||
| 1611 | err = -EINVAL; | 1611 | err = -EINVAL; |
| 1612 | vnet_hdr_len = sizeof(vnet_hdr); | 1612 | vnet_hdr_len = sizeof(vnet_hdr); |
| 1613 | if ((len -= vnet_hdr_len) < 0) | 1613 | if (len < vnet_hdr_len) |
| 1614 | goto out_free; | 1614 | goto out_free; |
| 1615 | 1615 | ||
| 1616 | len -= vnet_hdr_len; | ||
| 1617 | |||
| 1616 | if (skb_is_gso(skb)) { | 1618 | if (skb_is_gso(skb)) { |
| 1617 | struct skb_shared_info *sinfo = skb_shinfo(skb); | 1619 | struct skb_shared_info *sinfo = skb_shinfo(skb); |
| 1618 | 1620 | ||
| @@ -1719,7 +1721,7 @@ static int packet_getname_spkt(struct socket *sock, struct sockaddr *uaddr, | |||
| 1719 | rcu_read_lock(); | 1721 | rcu_read_lock(); |
| 1720 | dev = dev_get_by_index_rcu(sock_net(sk), pkt_sk(sk)->ifindex); | 1722 | dev = dev_get_by_index_rcu(sock_net(sk), pkt_sk(sk)->ifindex); |
| 1721 | if (dev) | 1723 | if (dev) |
| 1722 | strlcpy(uaddr->sa_data, dev->name, 15); | 1724 | strncpy(uaddr->sa_data, dev->name, 14); |
| 1723 | else | 1725 | else |
| 1724 | memset(uaddr->sa_data, 0, 14); | 1726 | memset(uaddr->sa_data, 0, 14); |
| 1725 | rcu_read_unlock(); | 1727 | rcu_read_unlock(); |
| @@ -1742,6 +1744,7 @@ static int packet_getname(struct socket *sock, struct sockaddr *uaddr, | |||
| 1742 | sll->sll_family = AF_PACKET; | 1744 | sll->sll_family = AF_PACKET; |
| 1743 | sll->sll_ifindex = po->ifindex; | 1745 | sll->sll_ifindex = po->ifindex; |
| 1744 | sll->sll_protocol = po->num; | 1746 | sll->sll_protocol = po->num; |
| 1747 | sll->sll_pkttype = 0; | ||
| 1745 | rcu_read_lock(); | 1748 | rcu_read_lock(); |
| 1746 | dev = dev_get_by_index_rcu(sock_net(sk), po->ifindex); | 1749 | dev = dev_get_by_index_rcu(sock_net(sk), po->ifindex); |
| 1747 | if (dev) { | 1750 | if (dev) { |
