mirror of
https://github.com/torvalds/linux.git
synced 2026-10-03 17:59:02 +02:00
ppp_sync_txmunge() checks headroom before prepending the address and
control bytes, but does not ensure that the skb header is writable.
A received skb can reach this function through PPP channel bridging
without passing through ppp_start_xmit(), which calls skb_cow_head().
For example, a PPPoE frame may share its buffer with a clone queued to
an AF_PACKET socket. If it is bridged to a synchronous tty channel, the
address/control bytes can overwrite data still visible to that socket.
Use skb_cow_head() to ensure both sufficient headroom and a writable
header.
Fixes:
|
||
|---|---|---|
| .. | ||
| bsd_comp.c | ||
| Kconfig | ||
| Makefile | ||
| ppp_async.c | ||
| ppp_deflate.c | ||
| ppp_generic.c | ||
| ppp_mppe.c | ||
| ppp_mppe.h | ||
| ppp_synctty.c | ||
| pppoe.c | ||
| pppox.c | ||
| pptp.c | ||