Looking at the defaults used for your samba configuration, I'm pretty sure that your smbd was not compiled against libcups, but just to make sure, can you confirm that "ldd /usr/sbin/smbd |grep cups" returns nothing?
# ldd /usr/sbin/smbd |grep cups
#
If your /etc/smb.conf still has the line "printcap name = /etc/printcap"
# fgrep printcap /etc/smb.conf
printcap name = /etc/printcap
but testparm reports "printcap name = lpstat",
# testparm -s |& fgrep printcap
printcap name = lpstat
then something must be wrong with samba. It's starting to look like samba has trouble setting and using correct values for "printing = cups". Since cups has SysV and BSD frontends, you could try the following workaround:
1. Keep the template fragment that sets "printcap name = /etc/printcap"
# find /etc/e-smith -name \*printcap\* | xargs fgrep 'printcap name'
/etc/e-smith/templates-custom/etc/smb.conf/11printcapName:printcap name = /etc/printcap
2. Change the template fragment that sets the "printing" parameter from "printing = cups" to "printing = sysv"
OK, so that is :
# find /etc/e-smith -type f | xargs fgrep 'printing ='
/etc/e-smith/templates/etc/smb.conf/20printing:printing = cups
so, I copy that to 'templates-custom/...' and change it :
# find /etc/e-smith -type f | xargs fgrep 'printing = '
/etc/e-smith/templates/etc/smb.conf/20printing:printing = cups
/etc/e-smith/templates-custom/etc/smb.conf/20printing:printing = sysv
3. Expand the template for /etc/smb.conf
# /sbin/e-smith/expand-template /etc/smb.conf
#
4. Get the output of "testparm -s" and post it, please.
I put them on my web site (would you prefer I post them here for prosperity?) :
http://reality.sgiweb.org/maxw/tmp/samba-debug/testparm-2.txt
5. /etc/e-smith/events/actions/reload-samba
bingo (from my powerbook):
% net -S truth share
unable to open file (No such file or directory)
Password:
print$
Primary
admin-files
shared-files
IPC$
ADMIN$
HP1120C
HP2100-Corp
philly
ricardo
mwaterman
What next? Is this a good workaround to actually use semi-permanently?