                               lpd v1.10
                               

                    by Reuben Thomas (rrt@sc3d.org)
                and Justin Fletcher (gerph@innocent.com)


lpd is a very simple daemon for the Unix line printer server protocol
(RFC1179), which allows Unix machines to print on a printer connected to a
RISC OS machine. It is basically a simplified version of Justin's LPRd.


Copyright and Disclaimer


lpd is licensed under the MIT license, and comes with no warranty. It is 
Justin Fletcher and Reuben Thomas 1999.

The EasySockets module is  Justin Fletcher and may not be redistributed on
its own.


Installation


The module EasySocket should be copied into !System.Modules.Network.

You can run !lpd whenever you like, but if like most daemons you want it
loaded in your boot sequence then Boot:Choices.Tasks is a good place to put
it.

Installation on the Unix machines which want to connect to the printer is a
matter for their documentation. Reuben is happy to try to help, but his
experience is limited to RedHat Linux.


Configuration


Manual configuration is the order of the day with lpd. Load !RunImage into
an editor and look at the first line:

  PrinterType%   = the type of the printer (1 for parallel, 2 for serial)
  Queue$         = the name of the queue (only used for reporting the queue
                   contents)

Justin suggests that you use a printer buffer of at least 64k for good
performance, whereas Reuben finds that a very large printer buffer (512Kb)
actually slows down printing, and is quite happy with 16Kb.

Use *Configure PrinterBufferSize <size>K to change the size; you'll have to
reset for this to take effect.


Usage


Once the program is configured, run it and it will serve print requests. It
only supports the plain and formatted text file types of lpr; all other
file types are ignored. This should not be a problem on common systems
such as RedHat Linux where the printer filters convert output files into the
format of the printer before sending them.

The program supports the lpq and lprm commands, though the latter is
untested, and not terribly useful, as only one file at a time can be queued.
It might come in handy if you spool an enormous file and then realise you've
made a mistake.


Acknowledgements


Thanks to the Zap developers for making programming that bit more fun and
colourful.


Comments and bugs


Reuben would appreciate reports of bugs or problems and suggestions for
improvement (though if want you want is a more functional daemon, you should
contact Justin about his LPRd).
