#! /usr/sbin/magicfilter
#
# Magic filter setup file for the Tektronix 4693
# THIS FILE IS UNTESTED!
#
# This file is in the public domain.
#
# This file has been automatically adapted to your system.
#
# wild guess: native control codes start with <ESC>
0 \033 cat

# PostScript
0 %! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r100 -sDEVICE=t4693d8 -sOutputFile=- /usr/share/magicfilter/quiet.ps - -c quit
0 \004%! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r100 -sDEVICE=t4693d8 -sOutputFile=- /usr/share/magicfilter/quiet.ps - -c quit

# Wind/U postscript driver. This one creates broken postscript, so we have to
# put in a special case to convert it to PCL first
65 "%%Creator: Wind/U" filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r100 -sDEVICE=t4693d8 -sOutputFile=- /usr/share/magicfilter/quiet.ps - -c quit

# PDF
0 %PDF fpipe /usr/bin/pdftops $FILE -



# TeX DVI
0 \367\002 fpipe /usr/bin/dvips -D 100 -R -q -f

# compress'd data
0 \037\235 pipe /bin/gzip -cdq

# packed, gzipped, frozen and SCO LZH data
0 \037\036 pipe /bin/gzip -cdq
0 \037\213 pipe /bin/gzip -cdq
0 \037\236 pipe /bin/gzip -cdq
0 \037\240 pipe /bin/gzip -cdq

0 BZh pipe /bin/bzip2 -cdq

# troff documents
0 .\?\?\040 fpipe `/usr/bin/grog -Tps $FILE`
0 .\?\?\012 fpipe `/usr/bin/grog -Tps $FILE`
0 .\\\" fpipe `/usr/bin/grog -Tps $FILE`
0 '\\\" fpipe `/usr/bin/grog -Tps $FILE`
0 '.\\\" fpipe `/usr/bin/grog -Tps $FILE`
0 \\\" fpipe `/usr/bin/grog -Tps $FILE`

# ditroff
0 "x T ps" pipe /usr/bin/grops
0 "x T dvi" pipe /usr/bin/grodvi
0 "x T ascii" pipe /usr/bin/grotty
0 "x T latin1" pipe /usr/bin/grotty
0 "x T lj4" reject Cannot print LaserJet 4 ditroff files.

# Portable bit-, grey- and pixmaps
0 P1\n pipe /usr/bin/pnmtops -scale 1000 -dpi 100 2>/dev/null
0 P2\n pipe /usr/bin/pnmtops -scale 1000 -dpi 100 2>/dev/null
0 P3\n pipe /usr/bin/pnmtops -scale 1000 -dpi 100 2>/dev/null
0 P4\n pipe /usr/bin/pnmtops -scale 1000 -dpi 100 2>/dev/null
0 P5\n pipe /usr/bin/pnmtops -scale 1000 -dpi 100 2>/dev/null
0 P6\n pipe /usr/bin/pnmtops -scale 1000 -dpi 100 2>/dev/null

# PNG - Portable network graphics
0 \x89PNG pipe /usr/bin/pngtopnm

# HP Printer Control Language (PCL) -- assume start with reset code
0 \033E\033 reject Cannot print PCL files on this printer.

# HP Printer Job Language (PJL)
0 \033%-12345X reject Cannot print PJL files on this printer.
0 "@PJL " reject Cannot print PJL files on this printer.
0 @PJL\t reject Cannot print PJL files on this printer.
0 @PJL\r reject Cannot print PJL files on this printer.
0 @PJL\n reject Cannot print PJL files on this printer.

# GIF files
0 GIF87a pipe /usr/bin/giftopnm 2>/dev/null
0 GIF89a pipe /usr/bin/giftopnm 2>/dev/null

# JFIF (JPEG) files
0 \377\330\377\340\?\?JFIF\0 pipe /usr/bin/djpeg -pnm
# Bug 40599
0 \377\330\377\341\?\?Exif\0 pipe /usr/bin/djpeg -pnm
6 JFIF pipe /usr/bin/djpeg -pnm

# TIFF files (the last two bytes of the "magic" is really a version number;
# but the magic is really lame and as far as I have understood the version
# number has never changed and never will, so we include it.)
0 MM\0\x2a fpipe /usr/bin/tiff2ps -a $FILE
0 II\x2a\0 fpipe /usr/bin/tiff2ps -a $FILE

# BMP files (even lousier magic -- Microsoft strikes again!)
0 BM\?\?\?\?\?\?\?\?\?\?\?\?\x0c pipe \
 /usr/bin/bmptopnm 2>/dev/null
0 BM\?\?\?\?\?\?\?\?\?\?\?\?\x40 pipe \
 /usr/bin/bmptopnm 2>/dev/null
0 BM\?\?\?\?\?\?\?\?\?\?\?\?\x28 pipe \
 /usr/bin/bmptopnm 2>/dev/null

# Garbage delivered from Windows via Samba
# (donated by Andree Leidenfrost <leidenfrost@dkrz.de>)
# 300 \033\052\157 cat
# later changed to
# (Bug report #22866: magicfilter: Incorrect magic for Win95/Samba print jobs)
0 \000\000\000\000\000 cat

# Sun rasterfiles
0 \x59\xa6\x6a\x95 pipe /usr/bin/rasttopnm 2>/dev/null

# SGI Imagelib (IRIS RGB) files
0 \x1\xda pipe /usr/bin/sgitopnm 2>/dev/null
0 \xda\x1 pipe /usr/bin/sgitopnm 2>/dev/null

# FIG files; reported by Steven P. Hill <sph@uscbu.ih.att.com>
0 #FIG pipe /usr/bin/fig2dev -Lps -P -l dummy

#
# Standard rejects... things we don't want to print
#

# Various archive formats
257 ustar\0 reject Attempted to print a tar file.
257 "ustar \0" reject Attempted to print a tar file.
0 07070 reject Attempted to print a cpio file.
0 PK\3\4 reject Attempted to print a zip file.
20 \xdc\xa7\xc7\xfd reject Attempted to print a zoo file.

# Binaries (Linux): reject with email message
0 \013\1d\0 reject Attempted to print a compiled binary.
0 \100\1d\0 reject Attempted to print a compiled binary.
0 \007\1d\0 reject Attempted to print a compiled binary.
0 \314\0d\0 reject Attempted to print a compiled binary.
0 \177ELF reject Attempted to print an ELF object.
0 \007\001\0 reject Attempted to print an object file.
216 \021\001\0\0 reject Attempted to print a core dump file.
0 !<arch> reject Attempted to print an archive.
0 =<ar> reject Attempted to print an archive.

# Don't confuse this one with troff!
0 .snd reject Attempted to print Sun/NeXT audio data.

# wacko troff magic
0 ''' fpipe `/usr/bin/grog -Tps $FILE`

# Default entry -- for normal (text) files. MUST BE LAST.
default text
