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 | |
| 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')
| -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)) |
