summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>1998-05-04 06:11:50 +0000
committerPaul Mackerras <paulus@samba.org>1998-05-04 06:11:50 +0000
commitf9573cffbde6dd807c7237c60a090b3195d6dbec (patch)
treed820e2920d9272489d6e49b6878762fce605ebc8 /modules
parent63526107ef91931ac8ef8c242b9cbcdf7da96520 (diff)
downloadppp-f9573cffbde6dd807c7237c60a090b3195d6dbec.tar.gz
work around se driver bug
Diffstat (limited to 'modules')
-rw-r--r--modules/ppp_ahdlc.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/modules/ppp_ahdlc.c b/modules/ppp_ahdlc.c
index c1853bb..cfde35d 100644
--- a/modules/ppp_ahdlc.c
+++ b/modules/ppp_ahdlc.c
@@ -24,7 +24,7 @@
* OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
* OR MODIFICATIONS.
*
- * $Id: ppp_ahdlc.c,v 1.7 1998/03/24 23:52:35 paulus Exp $
+ * $Id: ppp_ahdlc.c,v 1.8 1998/05/04 06:11:50 paulus Exp $
*/
/*
@@ -395,12 +395,14 @@ stuff_frame(q, mp)
goto bomb;
/*
- * Put in an initial flag for now. We'll remove it later
- * if we decide we don't need it.
+ * Put in an initial flag, unless the serial driver currently has
+ * packets still to be transmitted in its queue.
*/
dp = op->b_wptr;
- *dp++ = PPP_FLAG;
- --olen;
+ if (qsize(q->q_next) == 0) {
+ *dp++ = PPP_FLAG;
+ --olen;
+ }
/*
* For LCP packets with code values between 1 and 7 (Conf-Req
@@ -513,12 +515,6 @@ stuff_frame(q, mp)
op->b_wptr = dp;
/*
- * Remove the initial flag, if possible.
- */
- if (qsize(q->q_next) > 0)
- ++omsg->b_rptr;
-
- /*
* Update statistics.
*/
state->stats.ppp_obytes += msgdsize(omsg);