diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2011-06-07 01:42:06 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-06-07 01:42:06 -0400 |
commit | 13fcb7bd322164c67926ffe272846d4860196dc6 (patch) | |
tree | aa7727f84e4ce2a2b1cf758e03d176c62354f44b /include/linux/if_packet.h | |
parent | 79b3891587741dfac72cdfead1f2764b56a567b0 (diff) |
af_packet: prevent information leak
In 2.6.27, commit 393e52e33c6c2 (packet: deliver VLAN TCI to userspace)
added a small information leak.
Add padding field and make sure its zeroed before copy to user.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/if_packet.h')
-rw-r--r-- | include/linux/if_packet.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/if_packet.h b/include/linux/if_packet.h index 6d66ce1791a9..7b318630139f 100644 --- a/include/linux/if_packet.h +++ b/include/linux/if_packet.h | |||
@@ -62,6 +62,7 @@ struct tpacket_auxdata { | |||
62 | __u16 tp_mac; | 62 | __u16 tp_mac; |
63 | __u16 tp_net; | 63 | __u16 tp_net; |
64 | __u16 tp_vlan_tci; | 64 | __u16 tp_vlan_tci; |
65 | __u16 tp_padding; | ||
65 | }; | 66 | }; |
66 | 67 | ||
67 | /* Rx ring - header status */ | 68 | /* Rx ring - header status */ |
@@ -101,6 +102,7 @@ struct tpacket2_hdr { | |||
101 | __u32 tp_sec; | 102 | __u32 tp_sec; |
102 | __u32 tp_nsec; | 103 | __u32 tp_nsec; |
103 | __u16 tp_vlan_tci; | 104 | __u16 tp_vlan_tci; |
105 | __u16 tp_padding; | ||
104 | }; | 106 | }; |
105 | 107 | ||
106 | #define TPACKET2_HDRLEN (TPACKET_ALIGN(sizeof(struct tpacket2_hdr)) + sizeof(struct sockaddr_ll)) | 108 | #define TPACKET2_HDRLEN (TPACKET_ALIGN(sizeof(struct tpacket2_hdr)) + sizeof(struct sockaddr_ll)) |