Using PLP with Other LPD Implementations
----------------------------------------

Send additions to this file to <jmason@iona.ie>. Use any
info in here at your own risk!

Using PLP to Send Jobs to Other LPD Implementations
---------------------------------------------------

1. SunOS LPD
2. HP JetDirect cards
3. WSLPD (Windows Sockets LPD)

1. SunOS LPD

    SunOS LPD, and some other BSD-derived LPDs, are fussy about the
    order their control file records arrive in; you may need to
    set the "bk" flag in the PLP printcap entries in order to allow
    your printer queues to talk to them.

2. HP JetDirect cards

    These will accept only one connection at a time, print an
    annoying banner page continually (although apparently there's
    a PCL string to switch this off -- I don't know it though),
    won't allow you to remove printing jobs, and won't queue
    incoming requests on a first-come first-served basis like
    a proper lpd. You're better off using the LP-pipes written
    to talk to these cards, namely "hpnp-lp", or preferably
    "tcp-lp". See the file "doc/README.lp-pipes" for more
    details.

    To use these, you should put "rt#0" in your printcap entries,
    so PLP will retry opening the connection forever.

    Note that you should make a "funnel queue" for the jobs to
    pass through; this'll probably help keep the retrying down,
    and it'll ensure the first job spooled will be the first
    job printed. RTFM for an explanation of why you should do this.

    This should not interfere with your setup too much, as
    PLP does not limit the number of remote queues a job passes
    through.

3. WSLPD (Windows Sockets LPD)

    This really ought to become an lp-pipe, as it's even worse
    than the HP JetDirect cards.

    To use these, you should put "rt#0" in your printcap entries,
    so PLP will retry opening the connection (and sending jobs)
    forever. Also, if you want multiple queues sending jobs to one
    printer, make a queue on the PLP host and have all the other
    queues sending their jobs to this queue.

    You will probably see logged messages along the lines of
    "wslpd: error from remote site stream - Interrupted system call".
    This is WSLPD refusing to acknowledge successful transfers,
    which is in violation of the LPD protocol (RFC 1179). Bummer.

    Note that you should make a "funnel queue" for the jobs to
    pass through; this'll probably help keep the retrying down,
    and it'll ensure the first job spooled will be the first
    job printed. RTFM for an explanation of why you should do this.

Using PLP to Recieve Jobs from Other Printer Spooling Implementations
---------------------------------------------------------------------

1. MS Windows NT 3.5 (Daytona release)

    Daytona bends the rules of the RFC pretty heavily, but PLP
    supports it. :( You should be able to set up a PLP server as
    a "TCP/IP Printer Server" from the Daytona Printer Manager;
    it's in the "Other ports..." section of the Ports pulldown
    menu.

