* [PATCH] PPP handling fragmented skbuff's
@ 2003-06-27 23:35 Stephen Hemminger
2003-06-28 7:21 ` David S. Miller
2003-07-10 2:08 ` David S. Miller
0 siblings, 2 replies; 3+ messages in thread
From: Stephen Hemminger @ 2003-06-27 23:35 UTC (permalink / raw)
To: David S. Miller; +Cc: netdev
Don't think this ever happens today, but if PPP ever gets a fragmented a skbuff
and decides to copy it then bad things will happen. The following replaces the
places that memcpy() with skb_copy_bits().
Please review carefully before applying, it builds and runs but can't really force
these code path to occur under normal systems and devices.
diff -Nru a/drivers/net/ppp_generic.c b/drivers/net/ppp_generic.c
--- a/drivers/net/ppp_generic.c Fri Jun 27 16:13:38 2003
+++ b/drivers/net/ppp_generic.c Fri Jun 27 16:13:38 2003
@@ -844,7 +844,7 @@
if (ns == 0)
goto outf;
skb_reserve(ns, dev->hard_header_len);
- memcpy(skb_put(ns, skb->len), skb->data, skb->len);
+ skb_copy_bits(skb, 0, skb_put(ns, skb->len), skb->len);
kfree_skb(skb);
skb = ns;
}
@@ -1455,7 +1455,7 @@
goto err;
}
skb_reserve(ns, 2);
- memcpy(skb_put(ns, skb->len), skb->data, skb->len);
+ skb_copy_bits(skb, 0, skb_put(ns, skb->len), skb->len);
kfree_skb(skb);
skb = ns;
}
@@ -1826,7 +1826,7 @@
if (head != tail)
/* copy to a single skb */
for (p = head; p != tail->next; p = p->next)
- memcpy(skb_put(skb, p->len), p->data, p->len);
+ skb_copy_bits(p, 0, skb_put(skb, p->len), p->len);
ppp->nextseq = tail->sequence + 1;
head = tail->next;
}
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] PPP handling fragmented skbuff's
2003-06-27 23:35 [PATCH] PPP handling fragmented skbuff's Stephen Hemminger
@ 2003-06-28 7:21 ` David S. Miller
2003-07-10 2:08 ` David S. Miller
1 sibling, 0 replies; 3+ messages in thread
From: David S. Miller @ 2003-06-28 7:21 UTC (permalink / raw)
To: shemminger; +Cc: netdev
From: Stephen Hemminger <shemminger@osdl.org>
Date: Fri, 27 Jun 2003 16:35:24 -0700
Don't think this ever happens today, but if PPP ever gets a
fragmented a skbuff and decides to copy it then bad things will
happen. The following replaces the places that memcpy() with
skb_copy_bits().
Please review carefully before applying, it builds and runs but
can't really force these code path to occur under normal systems
and devices.
It looks ok. But I'll let this one sit over the weekend
before applying so others can test it out.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] PPP handling fragmented skbuff's
2003-06-27 23:35 [PATCH] PPP handling fragmented skbuff's Stephen Hemminger
2003-06-28 7:21 ` David S. Miller
@ 2003-07-10 2:08 ` David S. Miller
1 sibling, 0 replies; 3+ messages in thread
From: David S. Miller @ 2003-07-10 2:08 UTC (permalink / raw)
To: shemminger; +Cc: netdev
From: Stephen Hemminger <shemminger@osdl.org>
Date: Fri, 27 Jun 2003 16:35:24 -0700
Don't think this ever happens today, but if PPP ever gets a
fragmented a skbuff and decides to copy it then bad things will
happen. The following replaces the places that memcpy() with
skb_copy_bits().
Applied, thanks Stephen.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-07-10 2:08 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-27 23:35 [PATCH] PPP handling fragmented skbuff's Stephen Hemminger
2003-06-28 7:21 ` David S. Miller
2003-07-10 2:08 ` David S. Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).