/var/spool/hylafax/bin/tiff2pdf is in hylafax-server 3:6.0.6-8.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | #! /bin/bash
# $Id$
#
# HylaFAX Facsimile Software
#
# Copyright (c) 1990-1996 Sam Leffler
# Copyright (c) 1991-1996 Silicon Graphics, Inc.
# HylaFAX is a trademark of Silicon Graphics
#
# Permission to use, copy, modify, distribute, and sell this software and
# its documentation for any purpose is hereby granted without fee, provided
# that (i) the above copyright notices and this permission notice appear in
# all copies of the software and related documentation, and (ii) the names of
# Sam Leffler and Silicon Graphics may not be used in any advertising or
# publicity relating to the software without the specific, prior written
# permission of Sam Leffler and Silicon Graphics.
#
# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
#
# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
# OF THIS SOFTWARE.
#
# 01/03/2004 Frank Brock
#
# Convert TIFF to pdf as needed.
# the tiff2pdf that is part of ghostscript seems to choke on many tiffs
# without a bunch of help. So, I extracted most of the code here from
# faxrcvd and dropped it into a script. So, that section of faxrcvd
# could eventually be simplified by also using this script.
#
# tiff2pdf [-o output] file ...
#
# NB: This script converts tiff files to pdf files instead of
# using the ghostscript tiff2pdf which seems to blow up man times
test -f etc/setup.cache || {
SPOOL=`pwd`
cat<<EOF
FATAL ERROR: $SPOOL/etc/setup.cache is missing!
The file $SPOOL/etc/setup.cache is not present. This
probably means the machine has not been setup using the faxsetup(8C)
command. Read the documentation on setting up HylaFAX before you
startup a server system.
EOF
exit 1
}
# These settings may not be present in setup.cache if user upgraded and
# didn't re-run faxsetup; we set them before calling setup.cache for
# backward compatibility.
ENCODING=base64
TTYCMD=tty
. etc/setup.cache
TIFFINFO=tiffinfo
TIFF2PS=$TIFFBIN/tiff2ps
PS2PDF=ps2pdf
if $TTYCMD >/dev/null 2>&1; then
ERRORSTO=`$TTYCMD`
else
ERRORSTO=/dev/null
fi
tmpps=tmp/foo$$.ps
out=tmp/foo.pdf # default output filename
FILE=
opt=
while test $# != 0
do case "$1" in
-o) shift; out=$1 ;;
*) FILE="$FILE $1" ;;
esac
shift
done
test -z "$FILE" && {
echo "$0: No input file specified."
exit 255
}
GW=`$TIFFINFO $FILE 2>$ERRORSTO | $GREP "Image Width" | \
$SED 's/.*Image Width: \([0-9]*\).*/\1/g' | sort -n | $SED -n '$p'`
GL=`$TIFFINFO $FILE 2>$ERRORSTO | $GREP "Image Length" | \
$SED 's/.*Image Length: \([0-9]*\).*/\1/g' | sort -n | $SED -n '$p'`
RES=`$TIFFINFO $FILE 2>$ERRORSTO | $AWK 'BEGIN {rw0=rl0=0;}
/Resolution:/ { rw=$2; rl=$3; unit=$4;
if(unit ~ /cm/) { rw *= 2.54; rl *= 2.54; }
if(rw > rw0) { rw0=rw;}
if(rl > rl0) { rl0=rl;}}
END { printf "%dx%d", rw0+0.5, rl+0.5;}' 2>$ERRORSTO`
$TIFF2PS -a -O $tmpps $FILE > $ERRORSTO 2>&1 # fax2ps output looks bad
$PS2PDF -g$GW\x$GL -r$RES $tmpps $out > $ERRORSTO 2>&1
$RM -f $tmpps 2>$ERRORSTO
|