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 with c2faxsend



Thanks Holger!

Holger Raschke said:
> >>was C4H installed in conjunction with HylaFAX or as standalone solution?
> >
> >
> >[eric@pepper ~] 1 $ dpkg --get-selections|egrep 'hyla|capi'
> >capi4hylafax                                    install
> >hylafax-client                                  install
> >hylafax-doc                                     install
> >hylafax-server                                  install
> >libcapi20-2                                     install
> 
> Just to complete this: which version/build of the c4h/hylafax-package?
Version: 1:01.02.02-1
> And: Was capi4hylafax installed prior to hylafax or afterwards?
C4H was installed after hylafax.

> Try "c2faxrecv -q /var/spool/hylafax" to check if c2faxrecv searches in 
> the wrong directory for the config.faxCAPI.
Yes, I tried that but it does not seem to help.
Also I noticed each fax submitted gives me this in the syslog:
FaxQueuer[215]: NOTIFY: bin/notify "doneq/q8" "rejected" ""

> >>3.) a config.faxCAPI (or whatever you named your device) is present in 
> >>$hylaspooldir/etc
> >
> >[eric@pepper ~] 1 $ ls -l /var/spool/hylafax/etc/ |head -3
> >-rw-r--r--    1 root     root          242 Jul 23 03:30 config
> >-rw-r--r--    1 root     root        14880 Jul 20 14:21 config.faxCAPI
> 
> Please post these two.
- attached.

> I assume /etc/hylafax is a link to /var/spool/hylafax/etc ?
[eric@pepper ~] 1 $ ls -l /var/spool/hylafax/etc -d
lrwxrwxrwx    1 root     root           12 Jul 16 00:48 /var/spool/hylafax/etc -> /etc/hylafax/

> 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
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" ""

- 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).
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
#ServerTracing:		0x08501
InternationalPrefix:	00
SendFaxCmd: /usr/bin/c2faxsend
#
# 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"


    # "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"


    # 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


    # 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
    }
}




Project hosted by iFAX Solutions