Bug #788
CORRECTION: (part 2) pppX fix for altq/pf
| Status: | Closed | Start date: | ||
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | - | % Done: | 0% |
|
| Category: | - | |||
| Target version: | - |
Description
Oops again. my version has no crit_enter/crit_exit .. so I've needed to
tweak the patch to not touch those (2) lines ..
Index: ppp_tty.c
===================================================================
RCS file: /usr/dfly/repo/src/sys/net/ppp_layer/ppp_tty.c,v
retrieving revision 1.23
diff -u -r1.23 ppp_tty.c
--- ppp_tty.c 22 Dec 2006 23:44:57 -0000 1.23
+++ ppp_tty.c 11 Apr 2007 03:41:54 -0000
@@ -378,12 +368,16 @@
uio->uio_resid < PPP_HDRLEN)
return (EMSGSIZE);
crit_enter();
for (mp = &m0; uio->uio_resid; mp = &m->m_next) {
- MGET(m, MB_WAIT, MT_DATA);
+ if ( mp == &m0 ) {
+ MGETHDR(m, MB_WAIT, MT_DATA);
+ m->m_pkthdr.len = uio->uio_resid - PPP_HDRLEN;
+ m->m_pkthdr.rcvif = NULL;
+ }
+ else
+ MGET(m, MB_WAIT, MT_DATA);
if ((*mp = m) == NULL) {
m_freem(m0);
crit_exit();
return (ENOBUFS);
}
m->m_len = 0;
Related todos
History
Updated by hasso almost 6 years ago
It's committed, so closing bug.