Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

xlator_call(8) [ultrix man page]

xlator_call(8)						      System Manager's Manual						    xlator_call(8)

Name
       xlator_call - shell script to invoke PostScript translators

Syntax
       xlator_call datatype orientation pagesize width length indent

Description
       This  Bourne  shell script can be called by the line printer daemon to invoke the appropriate translator to convert each data type to Post-
       Script.	The data type passed by may be specified by using the command with the -Ddatatype option, or by using the  Da=datatype	capability
       in the file.

       For a file in a data syntax to be translated to PostScript, the script must contain a case branch which recognizes the data type string and
       calls a suitable filter.  The supplied recognizes the ANSI, ASCII, ReGIS and Tektronix 4014 data types.

Arguments
       datatype
       The valid data types are: or any other for which a translator has been installed.

       orientation
       The valid orientations are: portrait or landscape.

       pagesize
       The valid page sizes are: or

       width
       The width (in characters) of the page.

       length
       The length (in lines) of the page.

       indent
       The amount (in spaces) the output is to be indented.

       All the valid arguments are described in detail by the reference page.

Examples
       An example shell script is shown below:
       case $datatype in
       ansi)
	    exec ansi_ps -F $pagesize -O $orientation -e "$@";;
       ascii)
	    echo "(04) cvn {} def"
	    exec ln03rof -w$width -l$length -i$indent;;
       postscript)
	    exec cat;;
       tek4014)
	    exec tek4014_ps -F $pagesize -O $orientation;;
       regis)
	    exec regis_ps -F $pagesize -O $orientation;;
       *)
	    echo "$0: Translator for data type $datatype not installed" >&2
       esac

       When the shell script is called, the path searched is:
       /usr/local/lib/lpdfilters:/usr/ucb:/bin:/usr/bin:
				   /usr/lib:/usr/lib/lpdfilters

Files
       The				       script

See Also
       lno3rof(8), printcap(5), ansi_ps(8), lpd(8)

																    xlator_call(8)

Check Out this Related Man Page

lpd(8)							      System Manager's Manual							    lpd(8)

Name
       lpd - line printer daemon

Syntax
       /usr/lib/lpd [ -l ] [ -L logfile ] [ portnumber ]

Description
       The  line  printer  daemon  uses the system calls and to receive requests to print files in the print queue, transfer files to the spooling
       area, display the queue, and remove jobs from the queue.

       The line printer daemon is invoked by the command file when the system goes multi-user (normally at system start up).  The daemon looks	at
       the  file  to find out about the capabilities of existing printers, and prints any files that were not printed when the system last stopped
       operating.

       The Internet port number used to rendezvous with other processes is normally obtained with but can be changed by using the portnumber argu-
       ment.

       Access to the facilities provided by the daemon is controlled by only allowing requests from the machines listed in the or files.  The file
       is described on the reference page.  The file is a list of names consisting of one host machine name per line.  An * character at the start
       of  any	line  in  allows print requests from all systems.  The machine names listed in the and files may optionally contain the local BIND
       domain name.  For more information on BIND, see the Guide to the BIND/Hesiod Service.

       You can also control access to the daemon by specifying the rs capability for a particular printer in the file.	This restricts the printer
       users to those with accounts on the machine which the printer is connected to.

       The  file  lock	in  each spool directory is used to prevent multiple daemons from becoming active simultaneously, and to store information
       about the daemon process for and

       After the daemon has successfully set the lock, it scans the directory for command files with names beginning with cf .	These files  spec-
       ify  names  of files which are to be printed and parameters affecting how the files are printed.  Each line in a command file begins with a
       key character to specify what to do with the remainder of the line.  The key characters and their  meanings  are  shown	below.	 They  are
       listed in the order that they would appear in a command file.

       If a file is to be printed but can not be opened, a message will be placed in the logfile (by default, the system console).

       The  daemon  uses  to provide exclusive access to the lock file.  The lock is automatically removed by the kernel when a process terminates
       for any reason.	The lock file contains two lines.  The first is the process id of the daemon and the second is the control  file  name	of
       the current job being printed.  The second line is updated for use by and

       The key characters in the command file and their meanings are as follows:

       Hhost	 Host Name.  Name of the machine where was invoked.

       Puser	 Person.  Login name of the person who invoked This is used to verify ownership by

       Jjob	 Job Name.  String to be used for the job name on the banner page.

       Cclass	 Classification.  String to be used for the classification line on the banner page.

       Luser	 Literal.  The line contains identification information from the password file and causes the banner page to be printed.

       Inum	 Indent.  The number of characters by which the output is indented (in ASCII).

       Muser	 Send mail to the specified user when the current print job completes.

       1font	 Troff Font R.	Name of the font file to use instead of the default.

       2font	 Troff Font I.	Name of the font file to use instead of the default.

       3font	 Troff Font B.	Name of the font file to use instead of the default.

       4font	 Troff Font S.	Name of the font file to use instead of the default.

       Wnum	 Width.  Changes the page width (in characters) used by and the text filters.

       Znum	 Length.  Changes the page length (in lines) used by and the text filters.

       Ddata_type
		 Data type of the job.
		 (PostScript (TM) printers only.)

       <input_tray
		 Selects the input tray that supplies paper for the print job.
		 (PostScript (TM) printers only.)

       >output_tray
		 Selects the output tray where the printed paper is deposited.
		 (PostScript (TM) printers only.)

       Oorientation
		 Specifies the orientation of the printed output on the page.
		 (PostScript (TM) printers only.)

       Fpage_size
		 Specifies the size of the pages being printed.
		 (PostScript (TM) printers only.)

       Ssheet_size
		 Specifies the physical size of the sheets being printed.
		 (PostScript (TM) printers only.)

       Emessage  Specifies what happens to messages generated when processing the print job.
		 (PostScript (TM) printers only.)

       Xnum	 Specifies the number of times each page is printed.
		 (PostScript (TM) printers only.)

       Anum	 Specifies the first page to be printed for the job.
		 (PostScript (TM) printers only.)

       Bnum	 Specifies the last page to be printed for the job.
		 (PostScript (TM) printers only.)

       Gnum	 Specifies the number of pages to be printed on a single physical sheet.
		 (PostScript (TM) printers only.)

       zfilename Layup definition file which alters the appearance of pages (margins, borders, etc).
		 (PostScript (TM) printers only.)

       Ksides	 Specifies  whether  the job should be printed on both sides to the physical sheet, and whether the pages should be rotated by 180
		 degrees.
		 (PostScript (TM) printers only.)

       Ttitle	 Title.  String to be used as the title for

       ffilename Formatted File.  Name of a file to print which is already formatted.

       pfilename Name of a file to print using as a filter.

       lfilename Like but passes control characters and does not make page breaks.

       tfilename Troff File.  The file contains

       nfilename Ditroff File.	The file contains output (device independent

       dfilename DVI File.  The file contains TeX output (DVI format from Stanford).

       gfilename Graph File.  The file contains data produced by

       vfilename The file contains a raster image.

       cfilename Cifplot File.	The file contains data produced by cifplot.

       rfilename The file contains text data with Fortran carriage control characters.

       xfilename Do not interpret any control characters in the file.

       Ufilename Unlink.  Name of file to remove upon completion of printing.

       Nname	 File name.  The name of the file which is being printed, or a blank for the standard input (when is invoked in a pipeline).

   PostScript (TM) Printers With Specialised Support
       To use the features of the PostScript (TM) printers for which specialised support is available, you must ensure that :ps=LPS: is set in the
       appropriate entry in the file.

       For  PostScript	(TM)  printers, the line printer daemon assembles the PostScript (TM) from the users data files and PostScript (TM) device
       control modules.  The device control modules access device features and manipulate the appropriate printer parameters.  Device control mod-
       ules  (the Dl capability in are provided in an archive file, refer to Device control modules access printer specific features of PostScript
       (TM) and are therefore device dependent.

       The data type of the spooled files is given by the Da capability in the file.  The data type can be overridden by the D	key  character	in
       the command file.

       The support for PostScript (TM) printers introduces a new method of specifying the type of the data to be printed using the -D option of or
       the Da capability in The mechanism for invoking these translators needs to interact with the existing mechanism for  invoking  filters  for
       non-text files, so that the existing mechanism can be used if required.	The mechanism has the following features:

	      The new translators are invoked via the shell program which is passed the data type as one of its parameters.

	      Any  old	style  filter  arguments (for example, -t and -x) take precedence over -D (even though will accept the combination).  This
	      means that the if capability in must not be specified if data types are being used.

   Filter Capabilities
       Two of the capabilities that affect the behaviour of require a more detailed explanation than that given on the reference page.

       ct Connection type.  This entry in the file determines the type of connection.  The following table shows the valid choices for ct, and the
	  mandatory and optional entries to go with each choice.

	  -----------------------------------------------
	  ct=	    Mandatory Entries	Optional Entries
	  -----------------------------------------------
	  (R)dev       lp		   of
	  lat	    lp, ts, op, os	of
	  remote    rp, rm
	  network   of
	  -----------------------------------------------

	  Remote  means  a printer that is connected to another system running a compatible printing daemon.  Network means that the output filter
	  does not use stdout (that is, no lp) and is restarted for each job.

       uv ULTRIX version.  To enable the ct capability to determine the type of connection, and to ensure % escapes are  expanded  in  all  filter
	  command strings, you must have
	  :uv=psv1.0:
	  as part of the entry.

   Using Filter Capabilities
       This section refers to the programs specified by the following filter capabilities in the file: and

       Filters	may  be  specified as pipelines as well as simple commands.  The syntax accepts tab or space as word separators, and | to set up a
       pipe connection.  You can specify arguments to the filters.  The individual commands may be specified as full path names or as simple  pro-
       gram names, in which case the path searched is:
       /usr/local/lib/lpdfilters:/usr/ucb:/bin:/usr/bin:
				   /usr/lib:/usr/lib/lpdfilters

   Filter Argument Parameterisation
       The  arguments  to  the filter program are normally supplied automatically by but you can assign your own arguments to filters.	When argu-
       ments are supplied automatically, they are put after the arguments for the first command in a pipeline, or after the arguments of a  simple
       command.

       If you want to assign your own arguments to filters, you must ensure that :uv=psv1.0: is set in the appropriate entry in the file.

       Arguments  are  supplied exactly as for previous releases unless a special character (%) is found anywhere in the command.  If a % is found
       it tells that you have taken control of passing arguments to the filter.  In this case, the default set of arguments are no longer appended
       to  the	argument  list.  The arguments supplied to the command are those specified in the command string, but with replacing %x pairs with
       parameter strings.

       To allow the special character, %, to be passed, a pair of %%'s are replaced by a %.  It is an error to specify an unknown %x pair.  The %x
       pairs and the parameter strings that replace them are shown below.

       -------------------------------------------------------------
       %x Pairs   Parameter String
       -------------------------------------------------------------
       (R)%%	     %
       %0	  null	string	(used to pass null argument or dis-
		  able default arguments)
       %_	  space (used to insert spaces in arguments)
       %A	  accounting file
       %D	  data type
       %F	  pagesize
       %H	  host where job was submitted
       %I	  indent
       %j	  job name
       %J	  job id as shown by
       %L	  length
       %O	  orientation
       %P	  printer name
       %T	  title
       %U	  user's login name
       %W	  width
       %X	  pixel width
       %Y	  pixel length
       -------------------------------------------------------------

       All of the above %x pairs are available to all input filters.  For a network printer (:ct=network: in the file) they are all  available	to
       the output filter of.  For dev and lat printers the per-job parameters (%H, %U, %J and %j) are not available to the output filter.  This is
       because the output filter is invoked per session so that per-job parameters are still unset.

   Filter Arguments Supplied By lpd
       The arguments automatically assigned to each filter by are shown below.	For clarity the parameters for each  argument  are  shown  as  the
       appropriate %x pair.

       -----------------------------------------------------------------
       Filter			Parameterised Form of Default Arguments
       -----------------------------------------------------------------
       (R)cf			   -x%X -y%Y -n %U -h %H %A
       df			-x%X -y%Y -n %U -h %H %A
       gf			-x%X -y%Y -n %U -h %H %A
       if			-w%W -l%L -n %U -h %H %A
       ishinvoked
       without the -l option)
       if			-c -w%W -l%L -n %U -h %H %A
       ishinvoked
       with the -l option)
       nf			-w%W -l%L -n %U -h %H %A
       of			-w%W -l%L
       pp			-w%W -l%L -h %T
       rf			-w%W -l%L -n %U -h %H %A
       tf			-x%X -y%Y -n %U -h %H %A
       vf			-x%X -y%Y -n %U -h %H %A
       xf			(no arguments)
       Lf			(no arguments)
       Xf			%D %O %F %W %L %I
       -----------------------------------------------------------------

       The %A argument is only supplied if the af capability is present.

Options
       -l Log valid requests received from the network.  This can be useful for debugging purposes.

       -Llogfile
	  Write  error	conditions to the file specified by the argument logfile.  If this option is not used, error conditions are written to the
	  system console.

Files
       Printer description file

       Spool directories

       Line printer devices

       Socket for local requests

       Lists machine names allowed printer access

       Lists machine names allowed printer access as trusted machines

See Also
       lpq(1), lpr(1), lprm(1), printcap(5), lpc(8), pac(8), xlator_call(8)
       Guide to the BIND/Hesiod Service
       Guide to System Environment Setup

																	    lpd(8)
Man Page