~ubuntu-branches/debian/experimental/samba4/experimental

« back to all changes in this revision

Viewing changes to packaging/RHEL/setup/smbprint

  • Committer: Package Import Robot
  • Author(s): Jelmer Vernooij
  • Date: 2012-10-28 16:21:43 UTC
  • mfrom: (1.3.3)
  • Revision ID: package-import@ubuntu.com-20121028162143-zksa7dz2hu3fls89
Tags: 4.0.0~rc4+dfsg1-1
* New upstream release.
 + Bump minimum ldb version to 1.1.13.
* Switch to Git as VCS.
* Remove DM-Upload-Allowed field.
* Depend on heimdal-multidev rather than heimdal-dev.
 + Add 11_system_heimdal to support building with system heimdal.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/sh
2
 
# This script is an input filter for printcap printing on a unix machine. It
3
 
# uses the smbclient program to print the file to the specified smb-based 
4
 
# server and service.
5
 
# For example you could have a printcap entry like this
6
 
#
7
 
# smb:lp=/dev/null:sd=/usr/spool/smb:sh:if=/usr/local/samba/smbprint
8
 
#
9
 
# which would create a unix printer called "smb" that will print via this 
10
 
# script. You will need to create the spool directory /usr/spool/smb with
11
 
# appropriate permissions and ownerships for your system.
12
 
 
13
 
# Set these to the server and service you wish to print to 
14
 
# In this example I have a WfWg PC called "lapland" that has a printer 
15
 
# exported called "printer" with no password.
16
 
 
17
 
#
18
 
# Script further altered by hamiltom@ecnz.co.nz (Michael Hamilton)
19
 
# so that the server, service, and password can be read from 
20
 
# a /usr/var/spool/lpd/PRINTNAME/.config file.
21
 
#
22
 
# In order for this to work the /etc/printcap entry must include an 
23
 
# accounting file (af=...):
24
 
#
25
 
#   cdcolour:\
26
 
#       :cm=CD IBM Colorjet on 6th:\
27
 
#       :sd=/var/spool/lpd/cdcolour:\
28
 
#       :af=/var/spool/lpd/cdcolour/acct:\
29
 
#       :if=/usr/local/etc/smbprint:\
30
 
#       :mx=0:\
31
 
#       :lp=/dev/null:
32
 
#
33
 
# The /usr/var/spool/lpd/PRINTNAME/.config file should contain:
34
 
#   share=PC_SERVER
35
 
#   user="user"
36
 
#   password="password"
37
 
#
38
 
# Please, do not modify the order in the file.
39
 
# Example:
40
 
#   share=\\server\deskjet
41
 
#   user="fred"
42
 
#   password=""
43
 
 
44
 
#
45
 
# The last parameter to the filter is the accounting file name.
46
 
#   Extract the directory name from the file name.
47
 
#   Concat this with /.config to get the config file.
48
 
#
49
 
eval acct_file=\${$#}
50
 
spool_dir=`dirname $acct_file` 
51
 
config_file=$spool_dir/.config
52
 
 
53
 
# Should read the following variables set in the config file:
54
 
#   share
55
 
#   hostip
56
 
#   user
57
 
#   password
58
 
 
59
 
eval `cat $config_file`
60
 
 
61
 
share=`echo $share | sed "s/[\]/\//g"`
62
 
 
63
 
if [ "$user" != "" ]; then
64
 
   usercmd="-U"
65
 
else
66
 
   usercmd=""
67
 
fi
68
 
 
69
 
if [ "$workgroup" != "" ]; then
70
 
   workgroupcmd="-W"
71
 
else
72
 
   workgroupcmd=""
73
 
fi
74
 
 
75
 
if [ "$translate" = "yes" ]; then
76
 
 command="translate ; print -"
77
 
else
78
 
 command="print -"
79
 
fi
80
 
#echo $share $password $translate $x_command > /tmp/smbprint.log
81
 
 
82
 
cat | /usr/bin/smbclient "$share" "$password" -E ${hostip:+-I} \
83
 
     $hostip -N -P $usercmd "$user" $workgroupcmd "$workgroup" \
84
 
     -c "$command" 2>/dev/null