linux/drivers/net
Herbert Xu 260916dfb4 macvlan: Fix potential use-after free for broadcasts
When we postpone a broadcast packet we save the source port in
the skb if it is local.  However, the source port can disappear
before we get a chance to process the packet.

This patch fixes this by holding a ref count on the netdev.

It also delays the skb->cb modification until after we allocate
the new skb as you should not modify shared skbs.

Fixes: 412ca1550c ("macvlan: Move broadcasts into a work queue")
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-06-01 17:48:46 -07:00
..
appletalk
arcnet
bonding
caif
can can: ifi: Add more detailed error reporting 2016-05-09 11:07:28 +02:00
cris
dsa net: dsa: mv88e6xxx: remove bridge work 2016-05-16 13:46:24 -04:00
ethernet ravb: Add SET_RUNTIME_PM_OPS macro 2016-06-01 16:00:45 -07:00
fddi
fjes fjes: Fix unnecessary spinlock_irqsave 2016-05-09 22:05:51 -04:00
hamradio Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2016-05-17 16:26:30 -07:00
hippi
hyperv hv_netvsc: set nvdev link after populating chn_table 2016-05-16 13:26:01 -04:00
ieee802154 net: ieee802154/adf7242: syntax error ifdef DEBUG 2016-05-19 11:30:56 -07:00
ipvlan
irda net: irda: avoid null pointer dereference 2016-05-19 11:30:57 -07:00
phy Revert "phy: add support for a reset-gpio specification" 2016-05-20 17:56:59 -04:00
plip
ppp
slip
team team: don't call netdev_change_features under team->lock 2016-05-25 12:58:04 -07:00
usb usbnet: smsc95xx: fix link detection for disabled autonegotiation 2016-05-31 14:22:23 -07:00
vmxnet3
wan
wimax
wireless remove lots of IS_ERR_VALUE abuses 2016-05-27 15:26:11 -07:00
xen-netback xen-netback: only deinitialized hash if it was initialized 2016-05-20 17:41:18 -04:00
dummy.c
eql.c
geneve.c udp: prevent skbs lingering in tunnel socket queues 2016-05-20 19:56:02 -04:00
gtp.c gtp: put back reference to netns when not required anymore 2016-05-12 12:27:15 -04:00
ifb.c
Kconfig gtp: add initial driver for datapath of GPRS Tunneling Protocol (GTP-U) 2016-05-10 12:25:04 -04:00
LICENSE.SRC
loopback.c
macsec.c macsec: fix netlink attribute for key id 2016-05-20 11:14:13 -07:00
macvlan.c macvlan: Fix potential use-after free for broadcasts 2016-06-01 17:48:46 -07:00
macvtap.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-05-09 15:59:24 -04:00
Makefile gtp: add initial driver for datapath of GPRS Tunneling Protocol (GTP-U) 2016-05-10 12:25:04 -04:00
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c net: Fix coding style warnings and errors. 2016-05-19 11:48:27 -07:00
sungem_phy.c
tun.c tuntap: correctly wake up process during uninit 2016-05-20 19:28:37 -04:00
veth.c
virtio_net.c virtio_net: fix virtnet_open and virtnet_probe competing for try_fill_recv 2016-05-31 14:21:09 -07:00
vrf.c net: vrf: protect changes to private data with rcu 2016-05-16 13:46:24 -04:00
vxlan.c vxlan: Accept user specified MTU value when create new vxlan link 2016-05-31 11:46:00 -07:00
xen-netfront.c