]> git.ipfire.org Git - thirdparty/cups.git/blame - cups.sh.in
Load cups into easysw/current.
[thirdparty/cups.git] / cups.sh.in
CommitLineData
ef416fc2 1#!/bin/sh
2#
3# "$Id: cups.sh.in 4493 2005-02-18 02:09:53Z mike $"
4#
5# Startup/shutdown script for the Common UNIX Printing System (CUPS).
6#
7# Copyright 1997-2005 by Easy Software Products, all rights reserved.
8#
9# These coded instructions, statements, and computer programs are the
10# property of Easy Software Products and are protected by Federal
11# copyright law. Distribution and use rights are outlined in the file
12# "LICENSE.txt" which should have been included with this file. If this
13# file is missing or damaged please contact Easy Software Products
14# at:
15#
16# Attn: CUPS Licensing Information
17# Easy Software Products
18# 44141 Airport View Drive, Suite 204
19# Hollywood, Maryland 20636 USA
20#
21# Voice: (301) 373-9600
22# EMail: cups-info@cups.org
23# WWW: http://www.cups.org
24#
25
26#### OS-Dependent Information
27
28#
29# Linux chkconfig stuff:
30#
31# chkconfig: 235 99 00
32# description: Startup/shutdown script for the Common UNIX \
33# Printing System (CUPS).
34#
35
36#
37# NetBSD 1.5+ rcorder script lines. The format of the following two
38# lines is very strict -- please don't add additional spaces!
39#
40# PROVIDE: cups
41# REQUIRE: DAEMON
42#
43
44
45#### OS-Dependent Configuration
46
47case "`uname`" in
48 IRIX*)
49 IS_ON=/sbin/chkconfig
50
51 if $IS_ON verbose; then
52 ECHO=echo
53 else
54 ECHO=:
55 fi
56 ECHO_OK=:
57 ECHO_ERROR=:
58 ;;
59
60 *BSD*)
61 IS_ON=:
62 ECHO=echo
63 ECHO_OK=:
64 ECHO_ERROR=:
65 ;;
66
67 Darwin*)
68 . /etc/rc.common
69
70 if test "${CUPS:=-YES-}" = "-NO-"; then
71 exit 0
72 fi
73
74 IS_ON=:
75 ECHO=ConsoleMessage
76 ECHO_OK=:
77 ECHO_ERROR=:
78 ;;
79
80 Linux*)
81 IS_ON=/bin/true
82 if test -f /etc/init.d/functions; then
83 . /etc/init.d/functions
84 ECHO=echo
85 ECHO_OK="echo_success"
86 ECHO_ERROR="echo_failure"
87 else
88 ECHO=echo
89 ECHO_OK=:
90 ECHO_ERROR=:
91 fi
92 ;;
93
94 *)
95 IS_ON=/bin/true
96 ECHO=echo
97 ECHO_OK=:
98 ECHO_ERROR=:
99 ;;
100esac
101
102#### OS-Independent Stuff
103
104#
105# Set the timezone, if possible... This allows the
106# scheduler and all child processes to know the local
107# timezone when reporting dates and times to the user.
108# If no timezone information is found, then Greenwich
109# Mean Time (GMT) will probably be used.
110#
111
112for file in /etc/TIMEZONE /etc/rc.config /etc/sysconfig/clock; do
113 if test -f $file; then
114 . $file
115 fi
116done
117
118if test "x$ZONE" != x; then
119 TZ="$ZONE"
120fi
121
122if test "x$TIMEZONE" != x; then
123 TZ="$TIMEZONE"
124fi
125
126if test "x$TZ" != x; then
127 export TZ
128fi
129
130#
131# See if the CUPS server (cupsd) is running...
132#
133
134case "`uname`" in
135 HP-UX* | AIX* | SINIX*)
136 pid=`ps -e | awk '{if (match($4, ".*/cupsd$") || $4 == "cupsd") print $1}'`
137 ;;
138 IRIX* | SunOS*)
139 pid=`ps -e | nawk '{if (match($4, ".*/cupsd$") || $4 == "cupsd") print $1}'`
140 ;;
141 UnixWare*)
142 pid=`ps -e | awk '{if (match($6, ".*/cupsd$") || $6 == "cupsd") print $1}'`
143 . /etc/TIMEZONE
144 ;;
145 OSF1*)
146 pid=`ps -e | awk '{if (match($5, ".*/cupsd$") || $5 == "cupsd") print $1}'`
147 ;;
148 Linux* | *BSD* | Darwin*)
149 pid=`ps ax | awk '{if (match($5, ".*/cupsd$") || $5 == "cupsd") print $1}'`
150 ;;
151 *)
152 pid=""
153 ;;
154esac
155
156#
157# Start or stop the CUPS server based upon the first argument to the script.
158#
159
160case $1 in
161 start | restart | reload)
162 if $IS_ON cups; then
163 if test "$pid" != ""; then
164 kill -HUP $pid
165 else
166 prefix=@prefix@
167 exec_prefix=@exec_prefix@
168 @sbindir@/cupsd
169 if test $? != 0; then
170 $ECHO_FAIL
171 $ECHO "cups: unable to $1 scheduler."
172 exit 1
173 fi
174 fi
175 $ECHO_OK
176 $ECHO "cups: ${1}ed scheduler."
177 fi
178 ;;
179
180 stop)
181 if test "$pid" != ""; then
182 kill $pid
183 $ECHO_OK
184 $ECHO "cups: stopped scheduler."
185 fi
186 ;;
187
188 status)
189 if test "$pid" != ""; then
190 echo "cups: scheduler is running."
191 else
192 echo "cups: scheduler is not running."
193 fi
194 ;;
195
196 *)
197 echo "Usage: cups {reload|restart|start|status|stop}"
198 exit 1
199 ;;
200esac
201
202#
203# Exit with no errors.
204#
205
206exit 0
207
208
209#
210# End of "$Id: cups.sh.in 4493 2005-02-18 02:09:53Z mike $".
211#