Magellan Linux

Diff of /mcore-src/trunk/mcore-tools/src/modules/lprng/printing.client.class.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

mcore-src/trunk/mcore-tools/daemon/client/include/printing.client.class revision 2011 by niro, Mon Aug 13 09:52:58 2012 UTC mcore-src/trunk/mcore-tools/src/modules/lprng/printing.client.class.in revision 2582 by niro, Thu Sep 17 14:02:24 2015 UTC
# Line 1  Line 1 
1  # $Id$  # $Id$
2    
3  provide lprng  provide printing lprng
4    
5  help_printing_printer()  help_printing_printer()
6  {  {
# Line 29  helper_addprinter() Line 29  helper_addprinter()
29   [[ -z ${name} ]] && help_printing_printer && return 1   [[ -z ${name} ]] && help_printing_printer && return 1
30   [[ -z ${port} ]] && help_printing_printer && return 1   [[ -z ${port} ]] && help_printing_printer && return 1
31    
32   [[ ! -d ${MROOT}/etc/printcap.d ]] && install -d ${MROOT}/etc/printcap.d   [[ ! -d ${MROOT}@@SYSCONFDIR@@/printcap.d ]] && install -d ${MROOT}@@SYSCONFDIR@@/printcap.d
33    
34   case ${port} in   case ${port} in
35   lpt[0-9]*) port="/dev/lp$(( ${port/lpt/}-1 ))" ;;   lpt[0-9]*) port="/dev/lp$(( ${port/lpt/}-1 ))" ;;
36   com[0-9]*) port="/dev/ttyS$(( ${port/com/}-1 ))" ;;   com[0-9]*) port="/dev/ttyS$(( ${port/com/}-1 ))" ;;
37   usb[0-9]*) port="/dev/usb/lp$(( ${port/usb/}-1 ))" ;;   usb[0-9]*) port="/dev/usb/lp$(( ${port/usb/}-1 ))" ;;
38   #lpd) port="lpd://${ip}/${share}" ;;   #lpd) port="lpd://${ip}/${share}" ;;
39   #socket) port="socket://${ip}:${share}" ;;   #socket) port="socket://${ip}:${share}" ;;
40   esac   esac
41    
42   CONFIG="${MROOT}/etc/printcap.d/${name}.conf"   CONFIG="${MROOT}@@SYSCONFDIR@@/printcap.d/${name}.conf"
43   clearconfig   clearconfig
44   addconfig "${name}|${name}"   addconfig "${name}|${name}"
45   addconfig " :lp=${port}"   addconfig " :lp=${port}"
# Line 57  helper_delprinter() Line 57  helper_delprinter()
57    
58   [[ -z ${name} ]] && help_printing_printer && return 1   [[ -z ${name} ]] && help_printing_printer && return 1
59    
60   if [[ -f ${MROOT}/etc/printcap.d/${name}.conf ]]   if [[ -f ${MROOT}@@SYSCONFDIR@@/printcap.d/${name}.conf ]]
61   then   then
62   rm ${MROOT}/etc/printcap.d/${name}.conf   rm ${MROOT}@@SYSCONFDIR@@/printcap.d/${name}.conf
63   fi   fi
64    
65   if [[ -d ${MROOT}/var/spool/lpd/${name} ]]   if [[ -d ${MROOT}@@LOCALSTATEDIR@@/spool/lpd/${name} ]]
66   then   then
67   rm -rf ${MROOT}/var/spool/lpd/${name}   rm -rf ${MROOT}@@LOCALSTATEDIR@@/spool/lpd/${name}
68   fi   fi
69    
70   if [[ -d ${MROOT}/var/log/lprng/${name} ]]   if [[ -d ${MROOT}@@LOCALSTATEDIR@@/log/lprng/${name} ]]
71   then   then
72   rm -rf ${MROOT}/var/log/lprng/${name}   rm -rf ${MROOT}@@LOCALSTATEDIR@@/log/lprng/${name}
73   fi   fi
74    
75   # regenerate printcap   # regenerate printcap
76   helper_generate_printcap   helper_generate_printcap
77  }  }
78    
79  set_printing_printer()  set_printing_printer()
80  {  {
81   local action="$1"   local action="${CLASS_ARGV[0]}"
82   local name="$2"   local name="${CLASS_ARGV[1]}"
83   local port="$3"   local port="${CLASS_ARGV[2]}"
84   local ip="$4"   local ip="${CLASS_ARGV[3]}"
85   local share="$5"   local share="${CLASS_ARGV[4]}"
86    
87   case "${action}" in   case "${action}" in
88   add) helper_addprinter "${name}" "${port}" "${ip}" "${share}" ;;   add) helper_addprinter "${name}" "${port}" "${ip}" "${share}" ;;
# Line 93  set_printing_printer() Line 93  set_printing_printer()
93    
94  get_printing_printer()  get_printing_printer()
95  {  {
96   local i   list_files_in_directory ${MROOT}@@SYSCONFDIR@@/printcap.d
  local printer  
   
  for i in $(find /etc/printcap.d -type f -name \*.conf)  
  do  
  printer="${printer} $(basename ${i} .conf)"  
  done  
   
  rvecho ${printer}  
97  }  }
98    
99  helper_generate_printcap()  helper_generate_printcap()
# Line 109  helper_generate_printcap() Line 101  helper_generate_printcap()
101   local i   local i
102   local prn   local prn
103    
104   CONFIG="${MROOT}/etc/printcap"   CONFIG="${MROOT}@@SYSCONFDIR@@/printcap"
105   clearconfig   clearconfig
106    
107   for i in $(find ${MROOT}/etc/printcap.d -type f -name \*.conf)   for i in $(find ${MROOT}@@SYSCONFDIR@@/printcap.d -type f -name \*.conf)
108   do   do
109   mecho "adding ${i}"   mecho "adding ${i}"
110   addconfig "#--- added by mcored ---"   addconfig "#--- added by mcored ---"
# Line 123  helper_generate_printcap() Line 115  helper_generate_printcap()
115   prn=$(basename ${i} .conf)   prn=$(basename ${i} .conf)
116    
117   # install spooler directories   # install spooler directories
118   install -o lp -g lp -m0700 -d ${MROOT}/var/spool/lpd/${prn}   install -o lp -g lp -m0700 -d ${MROOT}@@LOCALSTATEDIR@@/spool/lpd/${prn}
119    
120   # create empty log files   # create empty log files
121   install -d ${MROOT}/var/log/lprng   install -d ${MROOT}@@LOCALSTATEDIR@@/log/lprng
122   touch ${MROOT}/var/log/lprng/${prn}   touch ${MROOT}@@LOCALSTATEDIR@@/log/lprng/${prn}
123   chown lp:lp ${MROOT}/var/log/lprng/${prn}   chown lp:lp ${MROOT}@@LOCALSTATEDIR@@/log/lprng/${prn}
124   chmod 0600 ${MROOT}/var/log/lprng/${prn}   chmod 0600 ${MROOT}@@LOCALSTATEDIR@@/log/lprng/${prn}
125   done   done
126  }  }

Legend:
Removed from v.2011  
changed lines
  Added in v.2582