]> git.ipfire.org Git - thirdparty/HylaFAX.git/commitdiff
[Bug 753] Patton 2977 optimisations
authorDarren Nickerson <darren.nickerson@ifax.com>
Mon, 3 Apr 2006 14:57:33 +0000 (14:57 +0000)
committerDarren Nickerson <darren.nickerson@ifax.com>
Mon, 3 Apr 2006 14:57:33 +0000 (14:57 +0000)
This patch, by Lee Howard, adds Class1RMPersistence: 0 to the digi config file,
and doubles the V.21 HDLC frame reception timeout to 10 seconds. Thanks to Lee
for the patch, and to Christian for confirming that it helps. See:

http://www.hylafax.org/archive/2006-03/msg00171.php

CHANGES
config/digi
faxd/Class1.c++

diff --git a/CHANGES b/CHANGES
index 39e1f86d15286d3a8cf06ad6ddd61d7f05161d87..45edaee2eceeb578623cce6df57604964bcb2a2e 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,8 @@
 
 Changelog
 
+* set Class1RMPersistence to 0 in digi config prototype (03 Apr 2006)
+* extend V.21 HDLC frame reception timeout to 10 sec (03 Apr 2006)
 * ignore MESSAGE-WAITING response after dialing (02 Apr 2006)
 * Correctly remove EOFB at the end of MMR images (02 Apr 2006)
 * set minimum of 4800 for V.34 primary rate renegotiations (02 Apr 2006)
index 0cedf217e72ddab507c949490c6600118401377b..2c5e49897e70bd429525a0f6b2d5d457ef7824cd 100644 (file)
@@ -21,3 +21,6 @@ ModemFlowControl:     rtscts          # seems to work better than xonxoff
 # ModemResetCmds:      "AT#CID=1"
 # CallIDPattern:       "NMBR="
 # CallIDPattern:       "NAME="
+
+# The modem does not report +FCERROR, so this helps us simulate it
+Class1RMPersistence:   0
index 2a795948506cf8f4493e5252c298c6b52544f6e7..d4fbc7b77f98e12c81886cf5b0baca99e8d49be2 100644 (file)
@@ -693,9 +693,18 @@ Class1Modem::recvRawFrame(HDLCFrame& frame)
      * The spec says that a frame that takes between
      * 2.55 and 3.45 seconds to be received may be
      * discarded; we also add some time for DCE
-     * to detect and strip flags. 
+     * to detect and strip flags.
+     * We need to be generous here ... given that
+     * some frames can be long and some devices
+     * can add lots of flags to the signalling.
+     * The previous value of 5 seconds appears
+     * to have been too conservative; if the modem
+     * has said CONNECT, then it should be
+     * responsible enough to carry-through with
+     * things.  A timeout here is only needed to
+     * reign in modems that don't carry through.
      */
-    startTimeout(5000);
+    startTimeout(10000);
     /*
      * Strip HDLC frame flags. This is not needed,
      * (according to the standard DCE does the job),