Unable to print from AIX to NDPS via LPR.

(Last modified: 04Nov2003)

This document (10027370) is provided subject to the disclaimer at the end of this document.

fact

Novell NetWare 5.1

NDPS

IBM AIX

symptom

Unable to print from AIX to NDPS via LPR.

The print jobs terminate prematurely.

fact

The print jobs from Linux to NDPS via LPR function correctly.

cause

The administrator on the AIX box selected AIX for the remote queue and not BSD.

fix

When setting up LPR (and the remote print queue) on the AIX box, there is a setting as to what kind of remote print queue this is.  If AIX is selected as the remote print queue type, the print job fails.  If BSD is selected as the remote print queue type, then the print job succeeds.  Again, this setting is on the AIX host and not on the NetWare server.  Please see the solution titled "How do you setup LPR/LPD printing with NetWare 5.1" on how to set LPR/LPD printing with NetWare 5.1.

Since always, UNIX promotes Open Systems. One of the conditions to make the concept 'Open System' actually happen is that all UNIX vendors make their system compliant with standard network and application protocols (like IP, TCP, FTP, SMTP, LPR, DNS, DHCP, Telnet, etc.) so that it does not matter which UNIX flavor you run, your system can always communicate with any other UNIX flavor. Berkeley's BSD and AT&T's System V are the original versions of the UNIX operating system and therefore all UNIX operating systems are based on the Berkeley and/or AT&T versions. To make the network protocols available to all software developers, RFCs (Request For Comment) are published. These documents describe exactly how you can make your system compliant with the standards. Novell aims to be compliant with standard IP network and application protocols. Regarding the LPD (Line Printer Daemon) functions of the LPR (Line Printer) protocol, the NetWare implementations PLPD.NLM and LPR2NDPS.NLM are compliant with RFC1179, which reads how Berkeley defined the standard protocol for line printer spooling. This makes the NetWare implementations of the Line Printer Daemon PLPD.NLM and LPR2NDPS.NLM BSD compliant. The specific AIX print protocols are not open standards but proprietary to IBM. Probably IBM developed their AIX and AIXV2 print protocols to give remote printing extra functionality specific to AIX print servers only. AIX allows configuring remote printing with print protocol type BSD and is therefore regarding TCP/IP network printing also compliant with this standard print protocol.

Troubleshooting:

A LAN trace was taken of the print jobs coming from the AIX box with the remote print queue setup as AIX.  In that trace, when the control file is sent to NDPS, there were additional options (-N, -Z, -t, -T, -B) that are not defined in RFC 1179.  It appears that these additional options cause NDPS to prematurely send a FIN ACK back to the AIX box and the print job is then discarded.  When the AIX box is configured to use BSD as the remote print queue type instead of AIX, then the additional options (-N1, -Z, -t, -T, -B) are not sent and the print job functions without a problem.

On AIX and AIX 5L, you can adjust your remote queue configuration to print to a BSD type print server, like PLPD.NLM or UNIX2NDPS.NLM the following ways:

a) With the chque command:

/usr/bin/chque -q<queue_name> -a 's_statfilter = /usr/lib/lpd/bsdshort' -a 'l_statfilter = /usr/lib/lpd/bsdlong'

b) Or by editing /etc/qconfig:
You can edit /etc/qconfig and change the configuration for the queue that prints to the remote NetWare Print Queue or NDPS Printer the following way. Please note that you may only edit /etc/qconfig when the qdaemon is down.

<queue_name>:
     device = <device_name>
     host = <remote_hostname>
     rq = <remote_queue_name>
     s_statfilter = /usr/lib/lpd/bsdshort
     l_statfilter = /usr/lib/lpd/bsdlong
<device_name>:
     backend = /usr/lib/lpd/rembak

c) If you print per /usr/lib/lpd/rembak:

If you print to the NetWare LPD server per /usr/lib/lpd/rembak, you can use the following syntax:

/usr/lib/lpd/rembak -S <remote_hostname> - P <remote_queue_name> -N /usr/lib/lpd/bsdshort <file>


<queue_name> is the name of the queue on the AIX system that you have configured for remote printing to the NDPS Printer or Print Queue on the NetWare server.
<remote_hostname> is the hostname of the NetWare server running PLPD.NLM or UNIX2NDPS.NLM.
<remote_queue_name> is the name of the NetWare Print Queue or NDPS Printer.
<file> is the path to the file to be printed.
<device_name> is a unique device name to process print jobs in <queue_name> per /usr/lib/lpd/rembak.

document

Document Title: Unable to print from AIX to NDPS via LPR.
Document ID: 10027370
Solution ID: 1.0.58347771.2561693
Creation Date: 28Feb2000
Modified Date: 04Nov2003
Novell Product Class:NetWare

disclaimer

The Origin of this information may be internal or external to Novell. Novell makes all reasonable efforts to verify this information. However, the information provided in this document is for your information only. Novell makes no explicit or implied claims to the validity of this information.
Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information.