Since I am not sure where the problem lies I will explain the situation,
then give my suspicions. I am using a Linux (Fedora core 5) cups print
server. (FC5 linux uses cups and is very similar to OSX in configuration
files.) This server will serve Mac OSX, OS 9.x, Windows (XP and 2000) and
AS400s.
The OSX and Windows use IPP and work perfectly. AS400 is using
LPR and also works. I have also tested printing from Windows via
LPR ("create new port"), and this works also. Just less
conveniently that IP printing.
The 9.x boxes don't work at all. I have tried to enable Appletalk via
netatalk and can share directories on the Linux box with 9.x by connecting
with Appleshare. However, 9.2 does not see printers shared by Linux. I
tried to connect using "Apple Desktop Printer Utility" to create an LPR
printer, connect to IP address and queue name. The utility says it can see
the printer (I think this just verifies the IP address, not port) but
after creating the printer, jobs fail to send. The error message is that
the printer is not accepting jobs.
I started wireshark (essentially ethereal) on the Linux box and it sees
the attempt to print LPR. If I am correctly interpreting what I see, the
Linux box does indeed seem to say the queue is not accepting jobs. I do
not see where the Mac specified the queue to use.
Suspicions:
I think Appletalk is not working on Linux because of bad configuration in
the /etc/atalk/papd.conf file. I think it should only need one line,
something about cupsautoadd. However, I've seen this as
cupsautoadd@zone

p=root: cupsautoadd

p=root:
and numerous multi-line configurations. I want to add all shared printers
to use the PPDs installed on Linux and have no zones. If anyone knows the
correct format (or what else I might be missing) I'd like to hear from
you.
Alternately, printing via TCP LPR from 9.x: Since the Linux box can accept
LPR jobs from Windows, I know LPR is working on Linux. I think "Apple
Desktop Printer Utility" is not correctly specifying the queue, possibly
because I do not know the correct format to enter in the box when
prompted. (Is it just "cupslaserwriter"? Or "/printer/cupslaserwriter"?
Or maybe "printer/cupslaserwriter"?