]> git.ipfire.org Git - thirdparty/HylaFAX.git/log
thirdparty/HylaFAX.git
20 months agoFix configure main functions argv argument type master
Patrice Fournier [Mon, 5 Aug 2024 18:48:55 +0000 (14:48 -0400)] 
Fix configure main functions argv argument type

argv is a pointer to an array of character strings, not a pointer to a single
character string. Some compilers do not like incorrect arguments for
main().

Based on patch for older configure script by Giuseppe Sacco <eppesuig@debian.org>.

20 months agoUpdate configure script to work on GNU gcc 14
Patrice Fournier [Fri, 2 Aug 2024 06:04:29 +0000 (02:04 -0400)] 
Update configure script to work on GNU gcc 14

gcc 14 require our tests to have a valid return type for the main
function, to have all functions declared before they are used (thus
having the right header file included) and to have arguments passed to
functions requiring them. Updated our configure script to do all of
this.

20 months agoCopied TIFF tables from Libtiff 4.5.0
Patrice Fournier [Fri, 21 Jun 2024 21:54:32 +0000 (17:54 -0400)] 
Copied TIFF tables from Libtiff 4.5.0

    From Lee's work:
    | commit fc167c4b11dc46f588c02258d86818888b58428e
    | Author: Lee Howard <faxguy@howardsilvan.com>
    | Date:   Thu Jan 5 21:44:57 2023 +0000
    |
    | As of libtiff-4.5.0 that library no longer exports TIFFFaxBlackCodes,
    | TIFFFaxBlackTable, TIFFFaxMainTable, TIFFFaxWhiteCodes,
    | TIFFFaxWhiteTable, and _TIFFFax3fillruns.
    |
    | This, then, makes them inaccessible to us in HylaFAX.
    |
    | libtiff development advised that those functions and tables simply be
    | copied from libtiff directly into HylaFAX source code.
    |
    | That's what this does.
    |
    | git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2695 5505949e-d877-4686-9e03-c53b7a51b376

20 months agoCorrectly report file encoding with cqtest
Patrice Fournier [Sat, 13 Apr 2024 02:54:40 +0000 (22:54 -0400)] 
Correctly report file encoding with cqtest

20 months agoCope with ECM data received in V.34 Class 1.0 phase D signaling
Patrice Fournier [Mon, 27 Nov 2023 18:34:42 +0000 (13:34 -0500)] 
Cope with ECM data received in V.34 Class 1.0 phase D signaling

From Lee's work:
| commit fc5a0fbc0029cd4526aadea731e244cf2b4138af
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Mon Apr 3 15:52:26 2023 +0000
|
|     cope with Class 1.0 V.34-Fax scenarios where we receive ECM data
| frames when we were expecting Phase D signaling
|
|     There are instances, possibly only with the Si2435, where after the
| modem indicates a switch to the control channel it can subsequently
| deliver Phase C ECM data frames without first indicating the primary
| channel.  This is odd, and may just mean that the control channel
| indication was in error or something.  V.34-Fax is just a stream of
| DLE-encoded HDLC frames, anyway, and whether the modem indicated the
| control channel or the primary channel to us it's all really the same
| thing.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2706
5505949e-d877-4686-9e03-c53b7a51b376

| commit 8e6f55893173bf6d52e0d44868c0e22bb96c783a
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed Apr 5 05:23:55 2023 +0000
|
|     Further to r2706, the other Phase C data frame is RCP, so we need to
| also handle that appropriately.
|
|    git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2707
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit c2e8cf78cfb2d055fcb77636f67600eeff8ac1ab
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed Apr 5 05:27:29 2023 +0000
|
|     Here's the rest of the changes missed by the previous commit.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2708
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoDo not flush the buffer following CONNECT after AT+FRM=n
Patrice Fournier [Mon, 27 Nov 2023 18:11:44 +0000 (13:11 -0500)] 
Do not flush the buffer following CONNECT after AT+FRM=n

From Lee's work:
| commit 900c3fe36e17a83d319caea8ea8d5d97ba203133
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Tue Dec 25 22:51:02 2012 +0000
|
|     Do not flush the buffer following CONNECT after AT+FRM=n as it risks
|     losing data.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+@2250
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoCope with V.21 HDLC carrier loss following +FRH:3 better
Patrice Fournier [Mon, 27 Nov 2023 17:21:37 +0000 (12:21 -0500)] 
Cope with V.21 HDLC carrier loss following +FRH:3 better

From Lee's work:
| commit 1df7b3cfc4c15289aca919d97e0ee2700eb4da5e
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Fri Jan 22 18:20:05 2016 +0000
|
|     Some modems (spandsp v0.0.6 is one) will signal +FRH:3 incorrectly.
|
|     This probably happens because it can be difficult to distinguish
| between carriers quickly.
|
|     The tested scenario only happens with V.17 long-train (TCF), so this
| patch only addresses the situation for TCF/training.  It does
| not address the situation for following CRC/CTR exchange in which the
| carrier is changed.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2396
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit 911bcf000b3bdff72018883671f5236dca338ff9
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed Jan 27 00:08:22 2016 +0000
|
|     This applies the same fixes to Phase C +FRH:3, CONNECT, NO CARRIER
| as was done for TCF in r2396.
|
|     The codework looks messy, but it really just is mostly adding a
| do-while loop around a large block of code.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2400
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoUpdate SiLabs configuration for more peculiarities
Patrice Fournier [Mon, 20 Nov 2023 19:55:37 +0000 (14:55 -0500)] 
Update SiLabs configuration for more peculiarities

From Lee's work:
| commit 522f94c60eb92d331807af6aa4de784d1783c049
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Tue Dec 27 16:22:42 2022 +0000
|
|     Add some Si2435 configuration considerations.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2693
5505949e-d877-4686-9e03-c53b7a51b376

and:
| | icommit 67665a62778219ddebbcd55d6ec52922e95d47b1
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Fri Jan 20 20:21:01 2023 +0000
|
|     Put the si2435 considerations into the silabs-10 config and make
| some adjustments.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2698
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoTry to cope with SiLabs OK result after +FRM/+FRH timeout
Patrice Fournier [Mon, 20 Nov 2023 19:50:33 +0000 (14:50 -0500)] 
Try to cope with SiLabs OK result after +FRM/+FRH timeout

From Lee's work:
| commit 1d9a6464c57794015c272b13ba21a86c9bd38526
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Tue Apr 26 00:48:53 2022 +0000
|
|     Try to cope with the Si2435/Si2417 resulting with an OK after timing
| out with +FRM/+FRH
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2676
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoHandle NO CARRIER results to AT+FRH=3 better
Patrice Fournier [Mon, 20 Nov 2023 19:07:32 +0000 (14:07 -0500)] 
Handle NO CARRIER results to AT+FRH=3 better

From Lee's work:
| commit 5acea904d6680964ba222b87367b55fdbbad3b76
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed May 21 18:27:29 2008 +0000
|
|     This is a continuation of the same work to handle NO CARRIER after
| AT+FRH=3.
|     It was needed in two spots, and I only managed to put it in one
| place before.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+@1956
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoDo not try to abort with CAN byte if Class1RecvAbortOK is 0
Patrice Fournier [Thu, 16 Nov 2023 17:59:04 +0000 (12:59 -0500)] 
Do not try to abort with CAN byte if Class1RecvAbortOK is 0

From Lee's changes:
| commit 93b731fc61f5f7a66970c83606f619f244fc66b8
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed Dec 8 16:15:27 2021 +0000
|
|     The Si2435 is inconsistent in how it reacts to +FRH=3 aborts.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2663
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit b485d62e3b474099d3a654b3437950b362290758
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Tue Nov 1 02:43:26 2022 +0000
|
|     If the modem isn't properly supporting character aborting with the
| CAN byte, then don't bother with the CAN byte at all, and just
| get on with it using the AT command.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2691
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoSet hasV34Trouble on Si2435/Si2417 V.34/V.8 connection glitch
Patrice Fournier [Thu, 16 Nov 2023 11:05:50 +0000 (06:05 -0500)] 
Set hasV34Trouble on Si2435/Si2417 V.34/V.8 connection glitch

From Lee's changes:
| commit 22243a57f2b54d83e78ecc64b663e476e8354abf
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Mon Nov 15 20:32:27 2021 +0000
|
|     Add hasV34Trouble condition for Si2435/Si2417 case.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2658
5505949e-d877-4686-9e03-c53b7a51b376

| commit dd31221bd9c337f3c753630ffd938641ea5cba38
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Thu Nov 18 03:06:47 2021 +0000
|
|     Cope with Si2435 V.34/V.8 connection glitch.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2659
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit ae5d1835fa4ecf6b06a696880507f23cd22cc334
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Fri Nov 19 14:30:53 2021 +0000
|
|     The Si2435 appears to result OK on its own after 30 seconds' wait at
| this point.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2660
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoFix timer when receiving DIS
Patrice Fournier [Thu, 16 Nov 2023 10:49:29 +0000 (05:49 -0500)] 
Fix timer when receiving DIS

From Lee's changes:
| commit a5d3b1c0309def560a3d4e4d01f3d4cdb67724b3
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed Oct 13 23:45:25 2021 +0000
|
|     Consistently wait until T1 times out.
|
|     Way back in r1740 (2007-09-04) there was an error in the calculation
| for a wait timeout.  It was intended to wait until T1 times out,
| but instead caused the wait to be as long as had elapsed since the
| start of prologue - a bit confused.  Furthermore, it missed changing
| an identical recvFrame() timeout from T2 to T1 in the same
| procedure.
|
|     This commit now fixes those by waiting to the T1 timeout plus T2 -
| so that we at least wait a period of T2.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2650
5505949e-d877-4686-9e03-c53b7a51b376

| commit ef9c81cf1b02a053ce910453abd84ca2044d2a66
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Wed Oct 13 23:59:29 2021 +0000
|
|     Order of operations.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2651
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit 5053f4c7575c43c18028da949261ac31c191683e
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Mon Nov 15 19:10:13 2021 +0000
|
|     We should be waiting T1 rather than T2 in trying to detect the
| receiver's prologue frames.
|
|     This is consistent with the changes made in r2650.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2657
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoFlush modem input before sending any command to modem
Patrice Fournier [Thu, 16 Nov 2023 10:12:32 +0000 (05:12 -0500)] 
Flush modem input before sending any command to modem

From Lee's changes:
| commit 18c1bfcad009f8552308a1f00a106d793ebf2be3
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Tue Oct 26 19:48:14 2021 +0000
|
|     Cope with spurious messages from the modem interfering with expected
| responses from commands.
|
|     The Si2417/Si2435 have a quirk where the cancelation of an +FRM
| command does not necessarily lead to the avoidance of +FCERROR
| messages.  So, it may look like this:
|
|     <-- AT+FRM=145
|     (timeout)
|     <-- abort
|     --> NO CARRIER
|     (wait, remote signals V.21 HDLC)
|     --> +FCERROR
|
|     Unfortunately, that spurious +FCERROR message is unpredictable and
| unexpected and will cause all sort of logical confusion to our
| operations.
|
|     While the spurious +FCERROR usually will be seen at predictable
| commands (notably AT+FTH=3 and AT+FRS=7) and we could limit the
| flushing to those specific commands, it makes sense to flush modem input
| prior to every AT command because at no point will we be expecting
| messages from a preceding command to appear after we send a subsequent
| AT command.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2655
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoAdding suppport for SiLabs Si2417/Si2435 (Mainpine rev4)
Patrice Fournier [Thu, 16 Nov 2023 09:53:33 +0000 (04:53 -0500)] 
Adding suppport for SiLabs Si2417/Si2435 (Mainpine rev4)

Based on Lee's work:
| commit db71bc023fc9df4ca6cd7fc913e4d83bfc87a731
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Fri Feb 5 16:07:56 2021 +0000
|
|     add support for SiLabs Si2417/Si2435
|
|     The Si2435 supports V.34-Fax (SuperG3) but does not implement
| auto-fallback to G3 modes which requires us to implement the fallback
|  in the DTE.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2580
5505949e-d877-4686-9e03-c53b7a51b376

| commit acf58db7a3caba2a58e92fb1b910e28bed6dfab7
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Thu Sep 30 21:28:47 2021 +0000
|
|     More adjustments for Si2435
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2646
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit 2a83c97ea9eca7971cf9b02d24f9fde64fcedc28
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Sun Nov 14 23:56:19 2021 +0000
|
|     Correction
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2656
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoSet hasV34Trouble on Class 1.0 "OK" and DLE+EOT dial responses
Patrice Fournier [Thu, 16 Nov 2023 07:30:21 +0000 (02:30 -0500)] 
Set hasV34Trouble on Class 1.0 "OK" and DLE+EOT dial responses

Based on Lee's work in:
| commit 82b66318b2ea22a8d383abda6aa33d0ec71f3b85
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Fri Oct 8 12:35:41 2010 +0000
|
|     When some Class 1.0 modems respond OK after dialing it means that there
|     was some kind of V.34/V.8 handshake incompatibility.  Disable V.34
|     automatically for those destinations.
|
|    git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+@2135
5505949e-d877-4686-9e03-c53b7a51b376

and:
| commit b0901cf480430d84479ee6474e7ae556c2033fa4
| Author: Lee Howard <faxguy@howardsilvan.com>
| Date:   Sat Nov 20 19:59:09 2010 +0000
|
|     detect hasV34Trouble for Class 1.0 DLE+EOT dial responses
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+@2149
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoFixed callStatus comment alignment
Patrice Fournier [Thu, 16 Nov 2023 06:50:53 +0000 (01:50 -0500)] 
Fixed callStatus comment alignment

20 months agoSet FIFO response waiting flag earlier to prevent deadlock
Patrice Fournier [Mon, 24 Apr 2023 15:08:19 +0000 (11:08 -0400)] 
Set FIFO response waiting flag earlier to prevent deadlock

We set the flag indicating we are waiting for a response before sending
our FIFO message so that if the response arrives before we enter the
dispatcher loop waiting for it, it correctly gets saved and we can
process it when we are ready instead of it being discarded and then
causing a deadlock where we are waiting for a message that will never
arrive.

20 months agoIncreasing file header buffer used to detect file type
Patrice Fournier [Tue, 20 Jun 2023 21:42:25 +0000 (17:42 -0400)] 
Increasing file header buffer used to detect file type

We need to look at byte 513 to detect some Microsoft files, so our
512 bytes buffer is not enough. Doubling to 1024 for now until we
move to a better solution.

20 months agoLog invalid FIFO messages received by hfaxd
Patrice Fournier [Mon, 24 Apr 2023 15:01:15 +0000 (11:01 -0400)] 
Log invalid FIFO messages received by hfaxd

20 months agoAdd support for newer Libtiff versions
Patrice Fournier [Fri, 31 Mar 2023 22:48:48 +0000 (18:48 -0400)] 
Add support for newer Libtiff versions

Accept any version of Libtiff 3.4 or newer with any version 4 or newer
using the same settings as version 4.0

20 months agoLibtiff website address change
Patrice Fournier [Fri, 31 Mar 2023 22:38:14 +0000 (18:38 -0400)] 
Libtiff website address change

Libtiff lost its remotesensing website in 2018, updating links to new
simplesystems address.

20 months agoCompile against newer PoDoFo packages with C++11
Patrice Fournier [Fri, 3 Jun 2022 19:35:29 +0000 (15:35 -0400)] 
Compile against newer PoDoFo packages with C++11

Newer PoDoFo packages require and are built with C++11 standard
We thus do the same for faxcover so we can compile against these
newer packages. We also make sure to only link faxcover against
the PoDoFo library.

20 months agoSupport compiling with TIFF 4.1 and 4.2
Patrice Fournier [Sat, 4 Jun 2022 00:05:18 +0000 (20:05 -0400)] 
Support compiling with TIFF 4.1 and 4.2

20 months agoPrevent crash when user is missing or disabled in hosts.hfaxd
Patrice Fournier [Fri, 10 Sep 2021 22:33:11 +0000 (18:33 -0400)] 
Prevent crash when user is missing or disabled in hosts.hfaxd

20 months agoDo not call shell to run external commands for hardened security
Patrice Fournier [Mon, 9 Aug 2021 18:10:07 +0000 (14:10 -0400)] 
Do not call shell to run external commands for hardened security

Based on Lee's work:
| commit ee202b04eb9d0704fc58ecfb0404fc2302b4777c
| Author: faxguy <faxguy@5505949e-d877-4686-9e03-c53b7a51b376>
| Date:   Fri Jul 3 20:25:38 2020 +0000
|
|     Run scripts directly rather than invoking them via a shell for security hardening.
|
|     Johannes Segitz rightly pointed out that we can run our executable
| shell scripts directly rather than invoking them via a shell - and that
| doing so would harden security regarding various arguments that
| originate from user-supplied data.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2551
5505949e-d877-4686-9e03-c53b7a51b376

| commit 96999a3e8c285113e864d7e40b24e236a4177ae2
| Author: faxguy <faxguy@5505949e-d877-4686-9e03-c53b7a51b376>
| Date:   Sun Jul 5 17:43:14 2020 +0000
|
|     Two conditional fields were missed in r2551
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2553
5505949e-d877-4686-9e03-c53b7a51b376

| commit f45f705b9e01bc9bd8e7d30cd40b140f46318309
| Author: faxguy <faxguy@5505949e-d877-4686-9e03-c53b7a51b376>
| Date:   Sun Jul 5 19:52:54 2020 +0000
|
|     Job::jobStatusName returns a static fxStr which seems to be
| problematic for use as an argv element, so this works around that.
|
|     git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+/trunk@2554
5505949e-d877-4686-9e03-c53b7a51b376

20 months agoCorrectly tag RHEL7 builds
Patrice Fournier [Tue, 18 Sep 2018 13:00:50 +0000 (09:00 -0400)] 
Correctly tag RHEL7 builds

20 months agoUpdate build dependencies
Patrice Fournier [Tue, 18 Sep 2018 13:00:50 +0000 (09:00 -0400)] 
Update build dependencies

20 months agopo/de.po file missing from distrules
Patrice Fournier [Tue, 18 Sep 2018 13:00:50 +0000 (09:00 -0400)] 
po/de.po file missing from distrules

20 months agoAllow triggers to work in passive mode
Patrice Fournier [Mon, 8 Feb 2021 10:31:20 +0000 (05:31 -0500)] 
Allow triggers to work in passive mode

20 months agoAbort deleting user when an error prevent writing new file
Patrice Fournier [Thu, 4 Feb 2021 03:43:36 +0000 (22:43 -0500)] 
Abort deleting user when an error prevent writing new file

20 months agoMake CentOS 8 gcc happy
Patrice Fournier [Wed, 18 Dec 2019 21:14:42 +0000 (16:14 -0500)] 
Make CentOS 8 gcc happy

20 months agoFix condition to load FontMaps once only
Patrice Fournier [Wed, 18 Dec 2019 21:05:35 +0000 (16:05 -0500)] 
Fix condition to load FontMaps once only

20 months agoGenerate Fontmap.HylaFAX even when alias name equals base filename
Patrice Fournier [Tue, 28 Apr 2020 20:24:18 +0000 (16:24 -0400)] 
Generate Fontmap.HylaFAX even when alias name equals base filename

20 months agoAllow recvstats to correctly show times over 99 minutes
Patrice Fournier [Tue, 28 Apr 2020 17:17:19 +0000 (13:17 -0400)] 
Allow recvstats to correctly show times over 99 minutes

20 months agoGetting a double-quote in a Caller*ID value causes problems.
Patrice Fournier [Mon, 11 Feb 2019 03:21:56 +0000 (22:21 -0500)] 
Getting a double-quote in a Caller*ID value causes problems.

From Lee:
| commit 91d837f7f0f4a6bff9a9c08b81dddc4eee3714c6
| Author: faxguy <faxguy@5505949e-d877-4686-9e03-c53b7a51b376>
| Date:   Fri Nov 24 13:27:42 2006 +0000
|
|     Getting a double-quote in a Caller*ID value causes problems.
|
|     Furthermore, it poses a risk for Caller*ID doing mischevious things.
|
|     So I'm changing the quote/enquote to ticks instead of double-quotes and then
|     parsing through all quoted strings and coping with any ticks that appear.
|
|
|    git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+@1503 5505949e-d877-4686-9e03-c53b7a51b376

20 months agoDon't wait forever after +FRH:3.
Patrice Fournier [Mon, 11 Feb 2019 03:09:53 +0000 (22:09 -0500)] 
Don't wait forever after +FRH:3.

From Lee:
| commit 3e1e3e54560ccc97a8a778d12d054ff9970258ab
| Author: faxguy <faxguy@5505949e-d877-4686-9e03-c53b7a51b376>
| Date:   Mon Jun 18 18:27:30 2018 +0000
|
|     Don't wait forever after +FRH:3.
|
|     What was I thinking back in 2005 (commit r902) when I added several "waitFor(AT_CONNECT,0)"?  The "0" in the waitFor allows for it to inherit the existing timer, but as best I can tell there are no timers to inherit.
|
|     I must have either just mindlessly copied code from elsewhere in HylaFAX where the timer inheritance was probably appropriate, or maybe I thought that I'd go through it later to implement the timers since it wasn't really obvious how long the timer should be.
|
|    git-svn-id: https://svn.code.sf.net/p/hylafax/HylaFAX+@2447 5505949e-d877-4686-9e03-c53b7a51b376

20 months agoAllow Fax client parameters to start or end with double-quote
Patrice Fournier [Sat, 9 Feb 2019 02:59:42 +0000 (21:59 -0500)] 
Allow Fax client parameters to start or end with double-quote

Having a double-quote character at the start or end of a parameter was causing
the fax client to send an invalid command to hfaxd causing syntax error.

20 months agoDon't send faxmaster 'done' notifications when only errors are requested
Patrice Fournier [Thu, 6 Sep 2018 16:52:41 +0000 (12:52 -0400)] 
Don't send faxmaster 'done' notifications when only errors are requested

20 months agoSupport PDF form as cover page template
Patrice Fournier [Tue, 23 Jan 2018 15:02:03 +0000 (10:02 -0500)] 
Support PDF form as cover page template

20 months agoTypo fixes
Patrice Fournier [Mon, 9 Oct 2017 19:56:07 +0000 (15:56 -0400)] 
Typo fixes

20 months agoRemoved misleading comment about notify not being called for all jobs
Patrice Fournier [Mon, 9 Oct 2017 19:55:33 +0000 (15:55 -0400)] 
Removed misleading comment about notify not being called for all jobs

20 months agoSome manual pages had 12000 speed mentioned as 12200
Patrice Fournier [Tue, 16 May 2017 16:56:39 +0000 (12:56 -0400)] 
Some manual pages had 12000 speed mentioned as 12200

20 months agoMust check for MIME boundary before Quoted-Printable soft line break
Patrice Fournier [Sat, 6 May 2017 13:53:29 +0000 (09:53 -0400)] 
Must check for MIME boundary before Quoted-Printable soft line break

20 months agoClose both sides of the control pipe when jobcontrol fork fails
Patrice Fournier [Wed, 21 Dec 2016 00:02:26 +0000 (19:02 -0500)] 
Close both sides of the control pipe when jobcontrol fork fails

20 months agoWe must remove a job from jcontrolq on pipe or fork failure
Patrice Fournier [Tue, 20 Dec 2016 23:40:00 +0000 (18:40 -0500)] 
We must remove a job from jcontrolq on pipe or fork failure

20 months agoReorder destinations when a job is removed from runq
Patrice Fournier [Thu, 8 Dec 2016 19:27:55 +0000 (14:27 -0500)] 
Reorder destinations when a job is removed from runq

When a destination has multiple jobs and the first job gets removed
from the readyQ, the next job takes its place in the queue. So if the
next job priority differs from the one that got removed, it causes the
(destination) runq list to be unordered and any later sorted insert can
be fooled by it. e.g. if a job of priority 150 completes and the next
job to that destination is of priority 201, any job with priority 200
added after that will get put in front of that destination, preventing
all other destinations with jobs of priority 150 that were later in the
queue to be pushed back even lower.

We now re-sort the destination on the runq when a job is removed and
might have been on the destination readyQ.

20 months agoBlindly concatenating files to pass to ps2fax can cause issues
Patrice Fournier [Tue, 18 Oct 2016 18:35:59 +0000 (14:35 -0400)] 
Blindly concatenating files to pass to ps2fax can cause issues

There are file types (like EPS) that can't be blindly concatenated
with whatever FaxModify adds... pass the files on the command line
instead.

20 months agoASCIIESC should use the same true/false values as other options
Patrice Fournier [Tue, 2 Aug 2016 22:15:36 +0000 (18:15 -0400)] 
ASCIIESC should use the same true/false values as other options

20 months agoUse prefix in front of local variables in common functions
Patrice Fournier [Fri, 29 Jul 2016 03:18:39 +0000 (23:18 -0400)] 
Use prefix in front of local variables in common functions

We can't use the "local" keyword for portability reasons, but add a
"hfcf_" prefix to all local variables to reduce likeliness of variable
conflicts.

20 months agoPer the RFC, we must make sure MIME boundary is preceded by CRLF
Patrice Fournier [Fri, 29 Jul 2016 03:10:17 +0000 (23:10 -0400)] 
Per the RFC, we must make sure MIME boundary is preceded by CRLF

NOTE: The CRLF preceding the boundary delimiter line is conceptually
attached to the boundary so that it is possible to have a part that does
not end with a CRLF (line break). Body parts that must be considered to
end with line breaks, therefore, must have two CRLFs preceding the
boundary delimiter line, the first of which is part of the preceding body
part, and the second of which is part of the encapsulation boundary.

20 months agoFixed grep command in CheckForGandO()
Patrice Fournier [Thu, 28 Jul 2016 18:15:54 +0000 (14:15 -0400)] 
Fixed grep command in CheckForGandO()

20 months agoFixed configuration file name in faxmail manual.
Patrice Fournier [Tue, 12 Apr 2016 13:16:35 +0000 (09:16 -0400)] 
Fixed configuration file name in faxmail manual.

20 months agoDon't log in faxq signal handler
Patrice Fournier [Mon, 11 Jan 2016 04:25:36 +0000 (23:25 -0500)] 
Don't log in faxq signal handler

Logging in signal handler can cause deadlock if signal arrives while
the process is already logging.

20 months agoRemoved 'c' prefix to commid value in many templates.
Patrice Fournier [Tue, 3 Jul 2012 16:17:09 +0000 (12:17 -0400)] 
Removed 'c' prefix to commid value in many templates.

Some (but not all) templates had the commid value prefixed by a 'c' letter.
This makes the commid match the communication log file, but does not match
the commid in xferfaxlog or other log files.

20 months agoTypo in notify template
Patrice Fournier [Mon, 2 Jul 2012 21:09:16 +0000 (17:09 -0400)] 
Typo in notify template

20 months agoAdd missing documentation for TrimText config option
Patrice Fournier [Fri, 29 Jun 2012 19:08:47 +0000 (15:08 -0400)] 
Add missing documentation for TrimText config option

20 months agoAllow non-nul terminated messages on the PIPE
Patrice Fournier [Sun, 29 Apr 2012 00:51:26 +0000 (20:51 -0400)] 
Allow non-nul terminated messages on the PIPE

non-nul terminated messages on the PIPE will be accepted so that messages
can be sent with echo. But such message need to be parsed by the daemon
before a new message come in, else the behaviour is unspecified.

20 months agoMake sure not to cut faxq FIFO messages in two when reaching end of buffer
Patrice Fournier [Tue, 17 Jan 2012 20:25:39 +0000 (15:25 -0500)] 
Make sure not to cut faxq FIFO messages in two when reaching end of buffer

20 months agohfaxd: Port is network byte order, correct logging of it
Aidan Van Dyk [Fri, 3 Jun 2011 17:28:58 +0000 (13:28 -0400)] 
hfaxd: Port is network byte order, correct logging of it

20 months agoAllow faxmail -O to set SendFaxClient options also
Patrice Fournier [Tue, 19 Apr 2011 16:00:22 +0000 (12:00 -0400)] 
Allow faxmail -O to set SendFaxClient options also

20 months agoHave sendfax pass the sender faxnumber it received (-W) to the fax server
Patrice Fournier [Tue, 5 Apr 2011 15:11:24 +0000 (11:11 -0400)] 
Have sendfax pass the sender faxnumber it received (-W) to the fax server

20 months agofaxq: scanQueueDirectory fixup
Aidan Van Dyk [Fri, 12 Nov 2010 17:27:28 +0000 (12:27 -0500)] 
faxq: scanQueueDirectory fixup

We need to not wait forever here, but just a tiny pause, enough to let jobcontrol
make progress, and then dispatcher to reap child PIDs and proces jobcontrol's output.

But if no jobcontrol, we need to not wait "forever" until next fifo/alarm.

20 months agofaxq: Dispatch while we are scanning for all our jobs
Aidan Van Dyk [Wed, 22 Sep 2010 19:09:55 +0000 (15:09 -0400)] 
faxq: Dispatch while we are scanning for all our jobs

Without, and with a big queue, and with jobcontrol, we get to the
point where we are out of FDs

20 months agoModemServer: Write freeing status to void no-longer valid status
Aidan Van Dyk [Mon, 31 May 2010 14:33:34 +0000 (10:33 -0400)] 
ModemServer: Write freeing status to void no-longer valid status

20 months agoconfigure: GLDOPTS
Aidan Van Dyk [Fri, 16 Oct 2009 18:49:02 +0000 (14:49 -0400)] 
configure: GLDOPTS

20 months agofaxq: Make debug show modems and their states too
Aidan Van Dyk [Thu, 18 Mar 2010 19:51:53 +0000 (15:51 -0400)] 
faxq: Make debug show modems and their states too

20 months agoTimeout.h, Timeout.c++:
Aidan Van Dyk [Tue, 19 Jul 2005 19:54:57 +0000 (14:54 -0500)] 
Timeout.h, Timeout.c++:
  Extend timeout to call an expire() function

Originally from:
86b35b881f890a9e8865f44216a7f03f0340849a
And then in 3.0/3.1:
7a7d03b93b65fa65f9789709ce672f110c9e90f9

Pretty important fix to include...

20 months agofxStr: Allow a (char*) conversion too
Aidan Van Dyk [Tue, 28 Aug 2007 17:18:07 +0000 (13:18 -0400)] 
fxStr: Allow a (char*) conversion too

20 months agoMove ClassModem members to public
Aidan Van Dyk [Tue, 30 Jun 2009 17:22:00 +0000 (13:22 -0400)] 
Move ClassModem members to public

20 months agoFaxRecvInfo::encode() const
Aidan Van Dyk [Fri, 17 Aug 2007 19:02:47 +0000 (15:02 -0400)] 
FaxRecvInfo::encode() const

Make this const, so you can have a const FaxRecvInfo object...

20 months agoUpdate releasenotes
Aidan Van Dyk [Tue, 8 May 2012 00:46:01 +0000 (20:46 -0400)] 
Update releasenotes

20 months agoUUCPLockUser and UUCPLockGroup support
Patrice Fournier [Thu, 24 Sep 2015 19:50:53 +0000 (15:50 -0400)] 
UUCPLockUser and UUCPLockGroup support

20 months agoFix password too short error message
Patrice Fournier [Thu, 24 Sep 2015 19:20:56 +0000 (15:20 -0400)] 
Fix password too short error message

20 months agofaxdeluser: preserve current hosts file ownership and modes
Patrice Fournier [Sun, 19 Apr 2015 01:55:28 +0000 (21:55 -0400)] 
faxdeluser: preserve current hosts file ownership and modes

20 months agoFixed manual page info about default value of UUCPLockMode to 0444
Patrice Fournier [Sat, 18 Apr 2015 02:31:00 +0000 (22:31 -0400)] 
Fixed manual page info about default value of UUCPLockMode to 0444

20 months agoRespect NOTIFY_FAXMASTER setting even when no fax was received.
Patrice Fournier [Fri, 17 Apr 2015 02:58:36 +0000 (22:58 -0400)] 
Respect NOTIFY_FAXMASTER setting even when no fax was received.

20 months agoIf prepare job fork failed, only run failed section
Patrice Fournier [Thu, 6 Nov 2014 16:29:33 +0000 (11:29 -0500)] 
If prepare job fork failed, only run failed section

20 months agoFree temporary buffer after use
Patrice Fournier [Thu, 6 Nov 2014 16:24:38 +0000 (11:24 -0500)] 
Free temporary buffer after use

20 months agoClose files when done with them.
Patrice Fournier [Fri, 5 Sep 2014 15:53:45 +0000 (11:53 -0400)] 
Close files when done with them.

20 months agoDeallocate array space with right delete[] operator
Patrice Fournier [Fri, 5 Sep 2014 15:51:40 +0000 (11:51 -0400)] 
Deallocate array space with right delete[] operator

20 months agoCheck if fax file exist before attempting to extract info from it
Patrice Fournier [Fri, 5 Sep 2014 15:42:26 +0000 (11:42 -0400)] 
Check if fax file exist before attempting to extract info from it

20 months agoSimplified callid configuration code
Patrice Fournier [Fri, 22 Aug 2014 16:45:51 +0000 (12:45 -0400)] 
Simplified callid configuration code

20 months agoWait for end marker before terminating SHIELDED_DTMF retrieval
Patrice Fournier [Fri, 22 Aug 2014 16:19:57 +0000 (12:19 -0400)] 
Wait for end marker before terminating SHIELDED_DTMF retrieval

20 months agoAllow email headers to be folded between field-name and field-body
Patrice Fournier [Thu, 5 Jun 2014 21:03:33 +0000 (17:03 -0400)] 
Allow email headers to be folded between field-name and field-body

20 months agoWe need to check for child that terminate while SIGCLD is not setup.
Patrice Fournier [Mon, 14 Apr 2014 14:40:29 +0000 (10:40 -0400)] 
We need to check for child that terminate while SIGCLD is not setup.

20 months agoMAXSEQNUM is a valid value to be returned. It's any above that is invalid
Patrice Fournier [Thu, 16 Jan 2014 20:00:13 +0000 (15:00 -0500)] 
MAXSEQNUM is a valid value to be returned. It's any above that is invalid

20 months agoUpdate comment about destcontrols to point to jobcontrol instead
Patrice Fournier [Wed, 8 Jan 2014 16:26:43 +0000 (11:26 -0500)] 
Update comment about destcontrols to point to jobcontrol instead

20 months agoFixed various typos in code, comments and logs
Patrice Fournier [Wed, 8 Jan 2014 16:25:46 +0000 (11:25 -0500)] 
Fixed various typos in code, comments and logs

20 months agoSet regarding and recipient name even if no cover page is generated
Patrice Fournier [Tue, 19 Nov 2013 19:28:37 +0000 (14:28 -0500)] 
Set regarding and recipient name even if no cover page is generated

20 months agoNew option to return receive stats by device (already in xfer stats)
Patrice Fournier [Tue, 19 Nov 2013 18:03:56 +0000 (13:03 -0500)] 
New option to return receive stats by device (already in xfer stats)

20 months agoGet DF from params when DCS is not present/valid
Patrice Fournier [Tue, 29 Oct 2013 22:15:15 +0000 (18:15 -0400)] 
Get DF from params when DCS is not present/valid

Some sending utils do (did) not save the DCS in the xferfaxlog. Use
the DF from the params when it is not available in the DCS.

20 months agoDo not poll for children when checking for FD or processes already ready
Patrice Fournier [Tue, 24 Sep 2013 15:57:29 +0000 (11:57 -0400)] 
Do not poll for children when checking for FD or processes already ready

Doing so can bypass the code that make sure that FIFO messages by a child
are all processed before this child is reapped

20 months agoMake sure all messages from a child are processed before reaping that child
Patrice Fournier [Thu, 19 Sep 2013 13:44:38 +0000 (09:44 -0400)] 
Make sure all messages from a child are processed before reaping that child

20 months agoFixed JobProtection default setting in documentation
Patrice Fournier [Wed, 18 Sep 2013 20:46:54 +0000 (16:46 -0400)] 
Fixed JobProtection default setting in documentation

20 months agoUsing prev without checking can cause crash of faxq
Patrice Fournier [Tue, 17 Sep 2013 18:05:22 +0000 (14:05 -0400)] 
Using prev without checking can cause crash of faxq

20 months agoConsider *send program fatal errors (exit -1 -> 255) as send_failed.
Patrice Fournier [Mon, 22 Apr 2013 21:26:08 +0000 (17:26 -0400)] 
Consider *send program fatal errors (exit -1 -> 255) as send_failed.

20 months ago"notify=never" can now be set to disable notifications even on errors
Patrice Fournier [Sun, 21 Apr 2013 02:30:48 +0000 (22:30 -0400)] 
"notify=never" can now be set to disable notifications even on errors

20 months agoReplace non signal-safe signal handlers with simple ones setting a flag
Patrice Fournier [Tue, 18 Dec 2012 18:17:58 +0000 (13:17 -0500)] 
Replace non signal-safe signal handlers with simple ones setting a flag

We used non signal-safe functions in signal handlers (or functions called
in signal handlers) and this caused deadlocks in some occasions. (e.g.
when the signal is received while writing to syslog, the handler would
deadlock when trying to write to syslog itself, waiting on the interrupted
call to finish.)

We now set a simple variable to notify of a received signal and process
the signal in the regular loop.

20 months agoPDF2FaxCmd documentation
Patrice Fournier [Fri, 30 Nov 2012 14:44:07 +0000 (09:44 -0500)] 
PDF2FaxCmd documentation