packaging: Move smbprint to a comman location.
authorAndreas Schneider <asn@samba.org>
Wed, 17 Oct 2012 16:25:41 +0000 (18:25 +0200)
committerAndreas Schneider <asn@cryptomilk.org>
Mon, 29 Oct 2012 13:08:37 +0000 (14:08 +0100)
This also removes all the duplicate smbprint scripts.

This fixes bug #9301.

Signed-off-by: Andreas Schneider <asn@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Mon Oct 29 14:08:37 CET 2012 on sn-devel-104

examples/printing/smbprint [deleted file]
packaging/RHEL-CTDB/samba.spec.tmpl
packaging/RHEL/samba.spec.tmpl
packaging/RHEL/setup/smbprint [deleted file]
packaging/printing/README [new file with mode: 0644]
packaging/printing/smbprint [moved from packaging/RHEL-CTDB/setup/smbprint with 91% similarity]

diff --git a/examples/printing/smbprint b/examples/printing/smbprint
deleted file mode 100755 (executable)
index 375f29f..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-#!/bin/bash
-
-# 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.
-#
-# Script further modified by Richard Sharpe to fix some things.
-# Get rid of the -x on the first line, and add parameters
-#
-#    -t  now causes translate to be used when sending files
-#
-# Further modifications by Alfred Perlstein to fix some problems and
-# improve the quality of the code (3-Dec-2001).
-#
-# More hacking by Richard Sharpe to improve portability. 9-Dec-2001.
-#
-# 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:
-#   server=PC_SERVER
-#   service=PR_SHARENAME
-#   password="password"
-#
-# E.g.
-#   server=PAULS_PC
-#   service=CJET_371
-#   password=""
-
-#smbclient=/usr/pkg/bin/smbclient
-# Assume that smbclient will be in the same place as smbprint
-
-smbclient="`dirname $0`/smbclient"
-
-#
-# 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.
-#
-TRANS=0
-eval acct_file=\${$#}
-spool_dir=`dirname $acct_file` 
-config_file=$spool_dir/.config
-
-# Should read the following variables set in the config file:
-#   server
-#   service
-#   password
-#   username (optional)
-#   IP (optional)
-#   debug (optional)
-#   debugsmb (optional)
-#   debugfile (optional)
-. $config_file
-
-if [ "x$password" = "x" ] ; then
-       password="-N"
-fi
-
-if [ "x$username" = "x" ] ; then
-       username="$server";
-fi
-
-while test $# -gt 0; do
-       case "$1" in
-       -t)
-               TRANS=1
-               ;;
-
-        *)   # Bad Parameters, ignore them ...
-               ;;
-        esac
-        shift
-done
-
-command="print - ;"
-if [ $TRANS -eq 1 ]; then
-       command="translate;$command";
-fi
-
-##
-## Some security checks on the logfile if we are using it
-##
-## make the directory containing the logfile is necessary 
-## and set the permissions to be rwx for owner only
-##
-
-debugfile="/tmp/smb-print/logfile"
-logdir=`dirname $debugfile`
-if [ ! -d $logdir ]; then 
-       mkdir -m 0700 $logdir
-fi
-
-##
-## check ownership.  If I don't own it refuse to 
-## create the logfile
-##
-if [ ! -O $logdir ]; then
-       echo "user running script does not own $logdir. Ignoring any debug options."
-       debug=""
-fi
-
-touch $debugfile
-if [ -h $debugfile ]; then
-       echo "$debugful is a symlink.  Turning off debugging!"
-       debug=""
-fi
-
-##
-## We should be safe at this point to create the log file
-## without fear of a symlink attack -- move on to more script work.
-##
-
-if [ "x$debug" = "x" ] ; then 
-               debugfile=/dev/null debugargs=
-else
-        if [ $debug -eq 0 ] ; then
-               debugfile=/dev/null debugargs=
-       else
-               set -x; exec >>$debugfile 2>&1
-               debugargs="$debugfile."
-               #[ "x$debugsmb" = "x" ] || debugargs="$debugargs -d $debugsmb"
-       fi
-fi
-
-if [ "x$smbconf" != "x" ]; then
-
-       smbconf="-s $smbconf"
-
-fi
-
-if [ "x$IP" != "x" ]; then
-
-       IP="-I $IP"
-
-fi
-
-if [ "x$debugargs" != "x" ]; then
-
-       debugargs="-l $debugargs"
-
-fi
-
-$smbclient \
-       "\\\\$server\\$service" \
-       $password \
-       $smbconf \
-       $IP \
-       $debugargs \
-       -U $username \
-       -c "$command"
-#
index 61a5bdd06ff521aa9615333fbc101393b335525d..16d2fa43cbb4a22afdb01dc0368c406535a695bf 100644 (file)
@@ -290,7 +290,7 @@ install -m644 setup/samba.sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/samb
 install -m755 setup/smb.init $RPM_BUILD_ROOT%{initdir}/smb
 install -m755 setup/winbind.init $RPM_BUILD_ROOT%{initdir}/winbind
 install -m644 setup/samba.pamd $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/samba
-install -m755 setup/smbprint $RPM_BUILD_ROOT%{_bindir}
+install -m755 packaging/printing/smbprint $RPM_BUILD_ROOT%{_bindir}
 install -m644 setup/smbusers $RPM_BUILD_ROOT%{_sysconfdir}/samba/smbusers
 install -m644 setup/smb.conf $RPM_BUILD_ROOT%{_sysconfdir}/samba/smb.conf
 install -m755 source3/script/mksmbpasswd.sh $RPM_BUILD_ROOT%{_bindir}
index adbc6dfb65f202c68d26233926a6d5c2429b58d8..84392565f8a1f3aba296bff28354b1bc5869604c 100644 (file)
@@ -242,7 +242,7 @@ install -m644 setup/samba.sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/samb
 install -m755 setup/smb.init $RPM_BUILD_ROOT%{initdir}/smb
 install -m755 setup/winbind.init $RPM_BUILD_ROOT%{initdir}/winbind
 install -m644 setup/samba.pamd $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/samba
-install -m755 setup/smbprint $RPM_BUILD_ROOT%{_bindir}
+install -m755 packaging/printing/smbprint $RPM_BUILD_ROOT%{_bindir}
 install -m644 setup/smbusers $RPM_BUILD_ROOT%{_sysconfdir}/samba/smbusers
 install -m644 setup/smb.conf $RPM_BUILD_ROOT%{_sysconfdir}/samba/smb.conf
 install -m755 source3/script/mksmbpasswd.sh $RPM_BUILD_ROOT%{_bindir}
diff --git a/packaging/RHEL/setup/smbprint b/packaging/RHEL/setup/smbprint
deleted file mode 100644 (file)
index 1c3959d..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/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
diff --git a/packaging/printing/README b/packaging/printing/README
new file mode 100644 (file)
index 0000000..0dfcc3c
--- /dev/null
@@ -0,0 +1,3 @@
+The smbprint 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.
similarity index 91%
rename from packaging/RHEL-CTDB/setup/smbprint
rename to packaging/printing/smbprint
index 1c3959d49b58621743ae8ac81bfa2f01200cf801..a02d7543accd606af05dc4a62989b5a6f05881a4 100644 (file)
@@ -1,25 +1,25 @@
 #!/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 
+# 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 
+# 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 
+# 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 
+# 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 
+# In order for this to work the /etc/printcap entry must include an
 # accounting file (af=...):
 #
 #   cdcolour:\
@@ -47,7 +47,7 @@
 #   Concat this with /.config to get the config file.
 #
 eval acct_file=\${$#}
-spool_dir=`dirname $acct_file` 
+spool_dir=`dirname $acct_file`
 config_file=$spool_dir/.config
 
 # Should read the following variables set in the config file: