diff options
author | Gerald Carter <jerry@samba.org> | 2003-12-09 17:36:11 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2003-12-09 17:36:11 +0000 |
commit | f9876dbe28c0df47a94b13d85447f4ab6bb7a8ad (patch) | |
tree | 3869a23dab3c69f70405d30d1b86c59abeb3222e /packaging/Fedora/smbprint | |
parent | 2598f2c820e8cbbaecba4a4ce21050c12c503552 (diff) | |
download | samba-f9876dbe28c0df47a94b13d85447f4ab6bb7a8ad.tar.gz samba-f9876dbe28c0df47a94b13d85447f4ab6bb7a8ad.tar.bz2 samba-f9876dbe28c0df47a94b13d85447f4ab6bb7a8ad.zip |
starting on Fedora packaging; reference point to begin with taken from RH 3.0.0-15 packaging files
(This used to be commit 4062cc38fde129056ea7ff796f7d00cfb6abf263)
Diffstat (limited to 'packaging/Fedora/smbprint')
-rw-r--r-- | packaging/Fedora/smbprint | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/packaging/Fedora/smbprint b/packaging/Fedora/smbprint new file mode 100644 index 0000000000..1c3959d49b --- /dev/null +++ b/packaging/Fedora/smbprint @@ -0,0 +1,84 @@ +#!/bin/sh +# This script is an input filter for printcap printing on a unix machine. It +# uses the smbclient program to print the file to the specified smb-based +# server and service. +# For example you could have a printcap entry like this +# +# smb:lp=/dev/null:sd=/usr/spool/smb:sh:if=/usr/local/samba/smbprint +# +# which would create a unix printer called "smb" that will print via this +# script. You will need to create the spool directory /usr/spool/smb with +# appropriate permissions and ownerships for your system. + +# Set these to the server and service you wish to print to +# In this example I have a WfWg PC called "lapland" that has a printer +# exported called "printer" with no password. + +# +# Script further altered by hamiltom@ecnz.co.nz (Michael Hamilton) +# so that the server, service, and password can be read from +# a /usr/var/spool/lpd/PRINTNAME/.config file. +# +# In order for this to work the /etc/printcap entry must include an +# accounting file (af=...): +# +# cdcolour:\ +# :cm=CD IBM Colorjet on 6th:\ +# :sd=/var/spool/lpd/cdcolour:\ +# :af=/var/spool/lpd/cdcolour/acct:\ +# :if=/usr/local/etc/smbprint:\ +# :mx=0:\ +# :lp=/dev/null: +# +# The /usr/var/spool/lpd/PRINTNAME/.config file should contain: +# share=PC_SERVER +# user="user" +# password="password" +# +# Please, do not modify the order in the file. +# Example: +# share=\\server\deskjet +# user="fred" +# password="" + +# +# The last parameter to the filter is the accounting file name. +# Extract the directory name from the file name. +# Concat this with /.config to get the config file. +# +eval acct_file=\${$#} +spool_dir=`dirname $acct_file` +config_file=$spool_dir/.config + +# Should read the following variables set in the config file: +# share +# hostip +# user +# password + +eval `cat $config_file` + +share=`echo $share | sed "s/[\]/\//g"` + +if [ "$user" != "" ]; then + usercmd="-U" +else + usercmd="" +fi + +if [ "$workgroup" != "" ]; then + workgroupcmd="-W" +else + workgroupcmd="" +fi + +if [ "$translate" = "yes" ]; then + command="translate ; print -" +else + command="print -" +fi +#echo $share $password $translate $x_command > /tmp/smbprint.log + +cat | /usr/bin/smbclient "$share" "$password" -E ${hostip:+-I} \ + $hostip -N -P $usercmd "$user" $workgroupcmd "$workgroup" \ + -c "$command" 2>/dev/null |