samba-technical digest, Vol 1 #42 - 2 msgs
papowell at astart.com
papowell at astart.com
Thu Aug 10 02:36:54 GMT 2000
> 3) Printing is currently also not completely functional,
> because it is being developed in another tree and at times
> we try to merge this back into this tree.
> For win9x domain logins it would be helpful to know, wether
> they currently work in HEAD. If so, I can try to look for
> differences/similarities and merge some things over. If
> it's not working, a proper bugreport for HEAD should be
> Printing is currently more developed in HEAD. Some quite
> interesting stuff is happening there. I'm currently trying
> to merge some of the backend-functionality for printing
> over. But real functionality will take some time, because
> the merging is quite hard, cause a lot of stuff was
> changed in HEAD.
> As usual with bugreports, check out
> http://www.kneschke.de/projekte/samba_tng/ before writing
> them and also please check the latest cvs, if you can.
> And send them to samba-ntdom at samba.org, so others know,
> what is already reported.
I have spent the last couple of days using the CVS version
and folding some of my old changes to the 2.0.3 Version into the
Most of these changes do not effect anything at the SMB level,
as they are concerned with the UNIX side of things.
Printcap Information Caching
Printcap information is now cached. Reduces much wear and
tear and overhead when you get printer information.
You refresh it just like you do with updating the smb.conf
information : send the smbd a SIGHUP.
There may be need for a 'periodic refresh', but that is
left as an exercise to the Samba Wizards.
Printcap Information Fetching
You can now get printcap information via a program as well
as from a file:
printcap file = |/program
This means you can do:
printcap file = |/bin/cat /etc/printcap
(for the curious, this is the same as above, but
with the overhead of an extra process.)
You can put this in /usr/local/samba/bin/getpc:
lpq -s -a | sed -n -e 's/[@:].*//p'
printcap file = |/usr/local/samba/bin/getpc
Also, LPRng has had the 'lpc client all' enhanced so you
printcap file = |/usr/sbin/lpc client all
And the various LPRng majic wizardries of LDAP support,
NIS support, printcap mangling, etc., are automatically
taken care of.
Wildcard Printcap Entries Handled Correctly:
You can have printcap entries of the form:
And the new code will do a glob style match on printer names.
This allows you to set up printers by hand with the following
And LO! The LPRng printer will now understand this.
This is the same as a 'MajikFilter' but raised a couple of
octaves in confusion.
Printer Driver Specfication VIA Printcap Information
Now for the neat one:
In the current release of Samba you can specify a driver
for a print queue. This is done by:
A) setting up a database that has all of the drivers
neatly tucked away
B) putting the various driver files in a place where the
Samba Server can find them.
C) Up to now, you would specify a printer and a driver
by setting up an entry:
[ hp4 ]
printer driver = HP4 LaserJet
The 'HP4 LaserJet' would be used as a key to look up the
driver and download the right stuff. You could not
do this with printers that you had set up by 'autoloading'
or from a printcap.
Now, if you set up a printcap with the following:
You will be AMAZED (I hope) to discover that the printer
driver information is now set to be HP4 LaserJet.
CUPS and LPRng
What about CUPS support? Well, I have taken the CUPS stuff
(very nice job, CUPS folks did, I congratulate them),
and converted their information stuff to a simple printcap
entry. Part of the CUPS information is the name of the
printer driver. Right now I don't know quite how they
are doing this, but I suspect after I post them the code
that they will improve this out of recognition as well.
Greatly Improved Print Job Status Reporting
On another topic, I have just finished updating LPRng
and improving its status lookup (LPQ) tremendously.
Together with the changes to the printcap lookup,
this has made printing MUCH faster.
Patrick Powell Astart Technologies,
papowell at astart.com 9475 Chesapeake Drive, Suite D,
Network and System San Diego, CA 92123
Consulting 858-874-6543 FAX 858-279-8424
LPRng - Print Spooler (http://www.astart.com)
More information about the samba-technical