HylaFAX The world's most advanced open source fax server

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [hylafax-users] segfault when sending certain tiff files withc2faxsend



>>What does faxstat say?
>>Any entries of the Faxqueuer-Process in the syslog trying to send? Just 
>>to checkout if config is OK but permissions are faulty.
> 
> 
> [eric@pepper ~] 1 $ faxstat
> Warning, verbose = Yes (line 16)
> Warning, timezone = local (line 25)
> Warning, Unknown configuration parameter "dialrules" ignored at line 33
> Warning, Unknown configuration parameter "fontmap" ignored at line 35
> Warning, Unknown configuration parameter "fontpath" ignored at line 36
> Trying localhost (127.0.0.1) at port 4559...
> Connected to pepper.
> 220 pepper server (HylaFAX (tm) Version 4.1.1) ready.
> -> USER eric
> 331 Password required for eric.
> Password:
> -> PASS XXXX
> 230 User eric logged in.
> -> TZONE LOCAL
> 200 Using time values in CET.
> -> PORT 127,0,0,1,128,12
> 200 PORT command successful.
> -> LIST status
> 150 Opening new data connection for "status".
> HylaFAX scheduler on pepper: Running
> Modem faxCAPI (): Running and idle

OK, the modem has been recognized by HylaFAX.

> 226 Transfer complete.
> Bad (null) user name; your password file entry probably has bogus GECOS field information.
> 
> Found this though in the syslog for each fax queued:
> Jul 23 14:49:53 pepper FaxQueuer[215]: SUBMIT JOB 7
> Jul 23 14:49:53 pepper FaxQueuer[215]: NOTIFY: bin/notify "doneq/q7" "rejected" ""
> Jul 23 14:59:07 pepper FaxQueuer[215]: SUBMIT JOB 8
> Jul 23 14:59:07 pepper FaxQueuer[215]: NOTIFY: bin/notify "doneq/q8" "rejected" ""

The jobs are rejected immediately. I assume that they never go to the 
queue! May be permissions problem.

Correct the "ServerTracing" parameter to get more info (see comments to 
your config below).

In your previous mail i recognized, that the files are owned by 
root.root . AFAIK, this should be "uucp" (or "fax" in newer versions of 
hylafax) for user/group. You can try to "chown -R uucp.uucp 
/var/spool/hylafax" the whole tree and see if this helps.

> 
> - on tracing set to high when sending a fax:
> match against (..., 512)
> rule: offset 0 string = "%!" -- failed (comparison)
> rule: offset 0 short = 0x4d4d -- failed (comparison)
> rule: offset 0 short = 0x4949 -- success (result tiff, rule "")
> Apply DisplayNumber rules to "2855945"
> --> return result "2855945"
> -> FORM TIFF
> 200 Format set to TIFF.
> -> TYPE I
> 200 Type set to Image.
> SEND data, 181636 bytes
> -> PORT 127,0,0,1,128,14
> 200 PORT command successful.
> -> STOT
> 150 FILE: /tmp/doc7.tif (Opening new data connection).

Is this one of the tiff-files you said are not going through?

Begin with a simple textfile to check outgoing service.
Try: sendfax -n -d xxxx /etc/passwd

If this works, proceed with a pdf-file.

> 226 Transfer complete (FILE: /tmp/doc7.tif).
> -> JNEW
> 200 New job created: jobid: 7 groupid: 7.
> 
> 
> .....
> -
> Eric Smith
> 
> 
> ------------------------------------------------------------------------
> 
> #ContCoverPage:         "etc/cover.templ"
> #DestControls:		"etc/destctrls"
> #DialStringRules:       "etc/dialrules"
> #QualifyCID:		"etc/cid"
> #QualifyTSI:		"etc/tsi"
> SeverTracing: 0xFFFFFFFF
^^^^^^^
This has been a tippy. Should be ServerTracing: ...

> #ServerTracing:		0x08501
> InternationalPrefix:	00
> SendFaxCmd: /usr/bin/c2faxsend
> 

I am missing some stuff here like:

LogFacility:            daemon
CountryCode:            49
AreaCode:               211
LongDistancePrefix:     0
DialStringRules:        "etc/dialrules.europe"
DeviceMode:             0666
SessionTracing:         527


> 
> ------------------------------------------------------------------------
> 
> #
> # EDIT THIS CONFIGURATION TO REFLECT YOUR SETUP
> #
> 
> # Grundsätzliches:
> # - Es gibt für jeden Wert einen Standardzustand (default), sodass jede Zeile
> #   der Datei oder auch das komplette Configfile ausgelassen werden kann.
> # - Es gibt ausschließlich ein Configfile, in dem alle nötigen Angaben für
> #   "c2faxsend/-receive" eingetragen werden können.
> # - Werden für HylaFAX mehrere virtuelle Geräte (devices) angelegt, muss es
> #   für jedes Device ein Configfile im Format config.[DeviceName] geben.
> #   Dessen Existenz wird von HylaFAX überprüft. Ohne dieses File kann die
> #   Arbeit mit dem Device nicht aufgenommen werden. Die Existenz einer
> #   solchen Datei kann am einfachsten durch einen Link auf dieses ConfigFile
> #   oder ein minimales "dummy"-ConfigFile nachgewiesen werden.
> #
> # Basics:
> # - There is a default condition for each value, such that each line of the
> #   file or the complete configfile can be left out.
> # - There is only one configfile in which all information required for
> #   "c2faxsend/-receive" can be entered.
> # - If multiple virtual devices are created for HylaFAX, there must be a
> #   Configfile in the format config.[DeviceName] for each device. HylaFAX
> #   checks that this file exists. Without this file, it is not possible to
> #   start working with the device. The easiest way to establish the existence
> #   of such a file is to create a link to this ConfigFile or a minimum
> #   "dummy" ConfigFile.
> 
> 
> # "SpoolDir" gibt den Pfad an, unter dem im HylaFAX-kompatiblen Betrieb die
> # HylaFAX-Dateien zu finden sind oder unter dem im Stand-Alone-Betrieb die
> # empfangenen Faxe gespeichert werden sollen. Im HylaFAX-kompatiblen Betrieb
> # werden die Faxe im Verzeichnis $(SpoolDir)/recvq gespeichert.
> #
> # "SpoolDir" indicates the path in which the HylaFAX are located in HylaFAX-
> # compatible operation or in which received faxes are to be saved in
> # stand-alone operation. In HylaFAX-compatible operation, faxes are saved in
> # the directory $(SpoolDir)/recvq.
> #
> # default   /var/spool/fax
> #
> SpoolDir:               /var/spool/hylafax
> 
> 
> # "FaxRcvdCmd" gibt das Skript an, das ausgeführt wird, sobald ein Fax
> # empfangen wurde. Im Stand-Alone-Betrieb werden andere Parameter
> # übergeben als für HylaFAX (mehr dazu im sample_faxrcvd).
> #
> # "FaxRcvdCmd" indicates the script performed whenever a fax is
> # received. Parameters other than the ones for HylaFAX are returned in
> # stand-alone operation (see sample_faxrcvd for more information).
> #
> # default   /var/spool/fax/bin/faxrcvd
> #
> FaxRcvdCmd:             /var/spool/hylafax/bin/faxrcvd
> 
> 
> # "PollRcvdCmd" gibt das Skript an, das ausgeführt wird, sobald ein
> # Fax per Faxabruf empfangen wurde. Im Stand-Alone-Betrieb werden
> # andereParameter übergeben als für HylaFAX (mehr dazu im
> # sample_faxrcvd).
> #
> # "PollRcvdCmd" indicates the script performed whenever a fax was
> # received by fax polling. Parameters other than the ones for HylaFAX
> # are returned in stand-alone operation (see sample_faxrcvd for more
> # information).
> #
> # default   /var/spool/hylafax/bin/pollrcvd
> #
> PollRcvdCmd:             /var/spool/fax/bin/pollrcvd
> 
> 
> # "FaxReceiveUser" ist der User, als der c2faxrecv ausgeführt wird.
> # Die Änderung des Users kann nur vom Superuser bzw. "root" erfolgen. Sollte
> # c2faxrecv von einem anderen User gestartet werden, wird dieser Eintrag
> # ignoriert. Hier einen anderen als den Hylafax-Standardwert "uucp"
> # einzutragen ist dann sinnvoll, wenn beispielsweise die Rechte von
> # /dev/capi20 nicht geändert werden sollen oder Ihre Linux-Distribution einen
> # anderen User voraussetzt.
> #
> # "FaxReceiveUser" is the user when c2faxrecv is run. This user can be
> # changed only by the Superuser or "root" user. If c2faxrecv is started by
> # another user, this entry will be ignored. Here it is a good idea to enter a
> # value other than the hylafax default value "uucp", for instance, if the
> # rights of /dev/capi20 are not to be changed or your Linux distribution
> # requires another user.
> #
> # default   ""
> #
> FaxReceiveUser:         uucp
> 
> 
> # Im "LogFile" werden Informationen über den Faxablauf abgespeichert.
> #
> # Information about the order of events in faxing are saved in the "LogFile".
> #
> # default   ""
> #
> LogFile:                /var/log/hylafax/capi4hylafax
> 
> 
> # Der Befehl "LogTraceLevel" gibt die Menge der Daten an, die in ein LogFile
> # geschrieben werden. Die Spanne reicht von 0 = nichts bis 4 = vieles.
> #
> # The "LogTraceLevel" command indicates the amount of data written in a
> # LogFile. The range goes from 0 = nothing to 4 = many.
> #
> # default   0
> #
> LogTraceLevel:          4
> 
> 
> # "LogFileMode" sind die Angaben (mode), aufgrund derer sowohl das gerade
> # erwähnte LogFile als auch die LogFiles für HylaFAX angelegt werden.
> #
> # "LogFileMode" is the mode, on the basis of which both the LogFile just
> # mentioned and the LogFiles for HylaFAX are generated.
> #
> # default   0600
> #
> LogFileMode:            0666
> 
> 
> # Die geschweiften Klammern geben Anfang und Ende einer Section an.
> # Jede Section darf eine oder mehrere SubSections enthalten.
> # SubSubSections sind nicht erlaubt.
> # Dabei enthält die Section Angaben zu einem virtuellen Device;
> # die Subsection die Angaben für die Rufannahme jedes Controllers.
> # Es können beliebig viele Sections und, darin enthalten, jeweils beliebig
> # viele Subsections erzeugt werden.
> # Jede Section muss aber einen anderen HylafaxDeviceName erhalten;
> # zusätzlich muss in jeder Subsection innerhalb einer Section ein anderer
> # Controller aufgeführt werden. Beim Stand-Alone-Betrieb ist eine Section mit
> # entsprechend vielen Subsections ausreichend, da in diesem Betriebsmodus die
> # virtuellen DeviceNamen keine Rolle spielen.
> #
> # The curved brackets indicate the beginning and end of a section.
> # Each section may contain one or more subsections.
> # SubSubSections are not permitted.
> # The section contains information about a virtual device; the subsection the
> # call acceptance information for each controller.
> # Any number of sections containing any number of subsections may be
> # generated, but each section must receive a different HylafaxDeviceName; and
> # a different controller must be listed in every subsection within a section.
> # For stand-alone operation, it is sufficient to have just one section with
> # as many subsections as required, since virtual DeviceNames do not play
> # any role in this mode of operation.
> #
> {
> 
>     # "HylafaxDeviceName" ist der Name, unter dem sich C4H bei HylaFAX als
>     # "virtuelles Modem" anmeldet. Sollen für HylaFAX mehrere dieser "Modems"
>     # erzeugt werden, legen Sie einfach eine neue Section mit einem anderen
>     # HylafaxDeviceName an.
>     #
>     # "HylafaxDeviceName" is the name, under which C4H registers in HylaFAX as
>     # a "virtual modem". If multiple "modems" are to be generated for HylaFAX,
>     # simply create a new section with another HylafaxDeviceName.
>     #
>     # default   faxCAPI
>     #
>     HylafaxDeviceName:          faxCAPI
> 
> 
>     # "RecvFileMode" ist der Mode, in dem empfangene Faxe abgespeichert
>     # werden. User und Group der Datei wird durch FaxReceiveUser (s.o.)
>     # festgelegt.
>     #
>     # "RecvFileMode" is the mode, in which received faxes are saved. User and
>     # Group of the file are determined by the FaxReceiveUser (see above).
>     #
>     # default   0600
>     #
>     RecvFileMode:               0600
> 
> 
>     # "FAXNumber" ist die eigene Nummer des Computers und wird der Gegenseite
>     # mitgeteilt (sichtbar z. B. im Fax-Journal).
>     #
>     # "FAXNumber" is the fax number of the computer itself and is transmitted
>     # to the remote site (visible in the Fax Journal).
>     #
>     # default   ""
>     #
>     FAXNumber:                  "Fax No. 00 31 15 219 0524"

Use just numbers here and one of "-", "." instead of blanks.

> 
> 
>     # "LocalIdentifier" ist der von CAPI aus konfigurierbare Teil der
>     # Kopfzeile. Ein leerer Eintrag führt dazu, dass keine Fax-Kopfzeile
>     # eingefügt wird.
>     #
>     # "LocalIdentifier" is the part of the fax header which can be configured
>     # from CAPI. An empty entry specifies an empty header.
>     #
>     # default   ""
>     #
>     LocalIdentifier:            "Fruitcom BV, Delft"
> 
> 
>     # Die maximale Anzahl von gleichzeitig empfangbaren Faxen kann
>     # durch "MaxConcurrentRecvs" angepaßt werden. Diese Anzahl wird
>     # durch die Anzahl der durch die Hardware zur Verfügung
>     # gestellten B-Kanäle begrenzt.
>     #
>     # The maximum number of faxes that can be received at the same
>     # time can be adjusted using "MaxConcurrentRecvs". This number
>     # is limited by the number of B channels provided by the hardware.
>     #
>     # default   2
>     #
>     MaxConcurrentRecvs:         2
> 
> 
>     # ----------- outgoing params -----------
> 
>     # "OutgoingController" gibt den Controller an, über den eine externe
>     # Verbindung aufgebaut werden soll.
>     #
>     # "OutgoingController" indicates the controller which is to be used to
>     # establish an external connection.
>     #
>     # default   1
>     #
>     OutgoingController:         1
> 
> 
>     # Die "OutgoingMSN" ist die MSN, die für ausgehenden Faxe benutzt wird.
>     #
>     # The "OutgoingMSN" is the MSN used for outgoing faxes.
>     #
>     # default   ""
>     #
>     OutgoingMSN:                "00 31 15 219 0524"

Place just an MSN here, e.g. 2190524.

> 
> 
>     # CLIR (Rufnummernunterdrückung) kann über "SuppressMSN" und den Wert (0)
>     # abgeschaltet oder mit dem Wert (1) erneut angeschaltet werden.
>     #
>     # CLIR (Calling Line Identification Restriction) can be switched off using
>     # the value (0) or switched back on by entering the value (1).
>     #
>     # default   0
>     #
>     SuppressMSN:                0
> 
> 
>     # "NumberPrefix" wird vor jede Telefonnummer gestellt. Dies ist bei
>     # Nebenstellenanlagen wichtig, bei denen für den Aufbau einer externen
>     # Verbindung eine Ziffer vorgewählt werden muss.
>     #
>     # "NumberPrefix" is set to precede each telephone number. This is
>     # important for PBX systems which require that a number be dialed to
>     # obtain an outside line.
>     #
>     # default   ""
>     #
>     NumberPrefix:               
> 
> 
>     # Wenn der Wert in "UseISDNFaxService" = 1 ist, wird ein ausgehender Ruf
>     # mit der ISDN-FAX-G3 Dienstekennung aufgebaut. Bei 0 wird eine 3.1kHz
>     # Audio-Verbindung hergestellt.
>     #
>     # When in "UseISDNFaxService" the value is = 1, an outoing call will be
>     # established using the ISDN-FAX-G3 service indicator. For 0, a 3.1kHz
>     # audio connection is established.
>     #
>     # default   0
>     #
>     UseISDNFaxService:          1

AFAIK, this uses the ISDN-FAX-Service-Indicator for outgoing calls with 
the result that you can't send to analog fax machines! I set mine to 0.

> 
> 
>     # Gibt die Dauer in Sekunden an, die auf eine Verbindungsannahme durch die
>     # Gegenseite gewartet wird. So wird beim Faxversand nicht automatisch die
>     # gesamte von der Telekom vorgegebene Wartezeit genutzt. Eine Angabe des
>     # Wertes 0 nutzt die gesamte Wartezeit.
>     #
>     # The duration in seconds you wait for the remote site to accept your
>     # outgoing call In this way you do not have to use the entire ringing
>     # duration preset by the telephone company. The default value 0 uses the
>     # entire ringing duration.
>     #
>     # default   0
>     #
>     RingingDuration:            0
> 
> 
>     # ----------- incoming params -----------
>     {
> 
>         # Controller, für den diese Subsection gilt.
>         #
>         # Controller for which this subsection is valid.
>         #
>         # default   1
>         #
>         Controller:             1
> 
> 
>         # Wenn "AcceptSpeech" auf 1 steht, wird auch die Dienstekennung
>         # "Sprache" angenommen.
>         #
>         # If "AcceptSpeech" is set to 1, the service indicator "Voice" also
>         # will be accepted.
>         #
>         # default   0
>         #
>         AcceptSpeech:           1
> 
> 
>         # Sofern man DDI nutzen will, sollte man "UseDDI" auf 1 stellen.
>         #
>         # If DDI is to be used, "UseDDI" should be set to a value of 1.
>         #
>         # default   0
>         #
>         UseDDI:                 0
> 
> 
>         # Die DDI-Stammnummer wird bei "DDIOffset" eingetragen.
>         # Der Standardwert führt zu keinem korrekten Ergebnis und
>         # sollte, sofern "UseDDI" auf 1 gestellt wurde, immer
>         # verändert werden.
>         #
>         # "DDIOffset" indicates the DDI offset number which precedes
>         # extension number. Because the default value can't guarantee
>         # a correct result, this value should be modified whenever
>         # "UseDDI" is set to 1.
>         #
>         # default   ""
>         #
>         DDIOffset:              
> 
> 
>         # "DDILength" gibt die Anzahl der Durchwahlziffern an. (Diese Ziffern
>         # werden lediglich als Teil der Empfängernummer mitgeteilt.) Der
>         # Standardwert sollte bei Verwendung von DDI ebenfalls angepasst
>         # werden.
>         #
>         # "DDILength" indicates the number of digits in the extension. (These
>         # numbers are only used as a component of the recipient's number.) The
>         # default value should be adapted whenever DDI is used.
>         #
>         # default   0
>         #
>         DDILength:              0
> 
> 
>         # Bei "IncomingDDIs" können in einer durch Komma getrennten Liste alle
>         # Durchwahlziffern (DDIs) angegeben werden, für die Rufe angenommen
>         # werden sollen. Eine Bereichsangabe ist auch möglich (z.B. 100-300),
>         # wobei aber keine offenen Bereiche (z.B. -100) erlaubt sind.
>         # Sofern IncommingDDIs gesetzt ist, wird DDILength ignoriert.
>         #
>         # In "IncomingDDIs", all extension numbers (DDIs) for which calls are
>         # to be accepted may be listed, separated by commas. It is also
>         # possible to specify a range (e.g. 100-300); here no open ranges are
>         # permitted (e.g. -100). When the "IncomingDDIs" switch is set, the
>         # parameters for DDILength will be ignored.
>         #
>         # default   ""
>         #
>         IncomingDDIs:           
> 
> 
>         # Bei "IncomingMSNs" können in einer durch Komma getrennten Liste alle
>         # MSNs angegeben werden, für die Rufe angenommen werden sollen. Ist
>         # die Liste leer, werden alle Rufe auf ISDN FAX G3, 3,1kHz Audio und
>         # eventuell "Sprache" angenommen.
>         # Wenn "UseDDI" auf 1 gestellt ist, wird "IncomingMSNs" ignoriert.
>         #
>         # In "IncomingMSNs", all MSNs for which calls are to be accepted may
>         # be listed, separated by commas. When the list is empty, all calls
>         # are accepted for ISDN FAX G3, 3,1kHz audio and perhaps "Voice".
>         # When "UseDDI" is set to 1, "IncomingMSNs" is ignored.
>         #
>         # default   ""
>         #
>         IncomingMSNs:           
> 
> 
>         # Wenn "AcceptGlobalCall" auf 1 steht, werden auch Calls ohne
>         # Zielrufnummer (ohne MSN) angenommen.
>         # Notwendig hinter einigen Telefonanlagen, die keine Zielrufnummer
>         # senden.
>         #
>         # If "AcceptGlobalCall" is set to 1, calls without Called Party
>         # Number also will be accepted.
>         # Needed on internal ports of some PBX.
>         #
>         # default   1
>         #
>         AcceptGlobalCall:   1
>     }
> }
> 


-- 
Mit freundlichen Grüßen

Holger Raschke
IT-Strategie und Controlling

RB Presse-Data GmbH
D-40196 Düsseldorf
Hausadresse:
Zülpicher Str. 8a                 Tel: +49 (0) 211 / 5697 - 395
D-40549 Düsseldorf                Fax: +49 (0) 211 / 5697 - 111395
E-Mail: holger.raschke@Presse-Data.de


____________________ HylaFAX(tm) Users Mailing List _______________________
  To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi
 On UNIX: mail -s unsubscribe hylafax-users-request@hylafax.org < /dev/null
  *To learn about commercial HylaFAX(tm) support, mail sales@hylafax.org.*




Project hosted by iFAX Solutions