Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE
mailman.7917
rcmailman
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File rcmailman of Package mailman.7917
#! /bin/sh # Copyright (c) 2000-2001 SuSE GmbH Nuernberg, Germany. # Copyright (c) 2002 SuSE Linux AG # # Author: Heiko Rommel <feedback@suse.de> # # /etc/init.d/mailman # ### BEGIN INIT INFO # Provides: mailman # Required-Start: $remote_fs $syslog cron sendmail $named # Required-Stop: $remote_fs $syslog # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: Starts the mailinglist manager Mailman ### END INIT INFO # Check for missing binaries (stale symlinks should not happen) ETC_CT=/etc/cron.d/mailman MM_CT=/usr/lib/mailman/cron/crontab MM_CTRL=/usr/lib/mailman/bin/mailmanctl MM_PID=/var/lib/mailman/data/master-qrunner.pid test -f $MM_CT || exit 5 test -x $MM_CTRL || exit 5 # Shell functions sourced from /etc/rc.status: # rc_check check and set local and overall rc status # rc_status check and set local and overall rc status # rc_status -v ditto but be verbose in local rc status # rc_status -v -r ditto and clear the local rc status # rc_failed set local and overall rc status to failed # rc_failed <num> set local and overall rc status to <num><num> # rc_reset clear local rc status (overall remains) # rc_exit exit appropriate to overall rc status # rc_active checks whether a service is activated by symlinks . /etc/rc.status # First reset status of this service rc_reset # Return values acc. to LSB for all commands but status: # 0 - success # 1 - generic or unspecified error # 2 - invalid or excess argument(s) # 3 - unimplemented feature (e.g. "reload") # 4 - insufficient privilege # 5 - program is not installed # 6 - program is not configured # 7 - program is not running # # special checkproc, we would need -k in checkproc but that doesn't have return code 3 mailman_checkproc() { unset COLUMNS mailman_pslist=$(ps xao "%p %a" | grep -E "/usr/bin/python.*/usr/lib/mailman/bin/mailmanctl" | grep -v grep | awk '{print $1}') if [ -n "$mailman_pslist" ]; then return 0 else return 3 fi } # check if the Apache2 webinterface for Mailman has been activated check_apache2_serverflags() { APACHE2_SYSCONFIG=/etc/sysconfig/apache2 mw_active=0 if [ -r $APACHE2_SYSCONFIG ]; then . $APACHE2_SYSCONFIG for f in $APACHE_SERVER_FLAGS; do if [ "$f" = "MAILMAN" ]; then mw_active=1; fi; done else mv_active=2 fi return $mw_active } # Note that starting an already running service, stopping # or restarting a not-running service as well as the restart # with force-reload (in case signalling is not supported) are # considered a success. case "$1" in start) echo -n "Starting mailman" ## Start daemon with startproc(8). If this fails ## the echo return value is set appropriate. check_apache2_serverflags && echo -n >&2 " (Warning: the Apache2 webinterface for Mailman has not been activated!)" rc_reset mailman_checkproc if [ $? -eq 3 ]; then install -m 0644 $MM_CT $ETC_CT $MM_CTRL --quiet --stale-lock-cleanup start else rc_reset fi rc_status -v ;; stop) echo -n "Shutting down mailman" ## Stop daemon with killproc(8) and if this fails ## set echo the echo return value. rm -f $ETC_CT /sbin/killproc -p $MM_PID -TERM /usr/bin/python # Remember status and be verbose rc_status -v ;; try-restart) ## Stop the service and if this succeeds (i.e. the ## service was running before), start it again. ## Note: try-restart is not (yet) part of LSB (as of 0.7.5) $0 status >/dev/null && $0 restart # Remember status and be quiet rc_status ;; restart) ## Stop the service and regardless of whether it was ## running or not, start it again. $0 stop $0 start # Remember status and be quiet rc_status ;; force-reload) echo -n "Reload service mailman" ## Signal the daemon to reload its config. Most daemons ## do this on signal 1 (SIGHUP). ## If it does not support it, restart. /sbin/killproc -p $MM_PID -HUP /usr/bin/python rc_status -v ## Otherwise: #$0 stop && $0 start #rc_status ;; reload) echo -n "Reload service mailman" ## Like force-reload, but if daemon does not support ## signalling, do nothing (!) /sbin/killproc -p $MM_PID -HUP /usr/bin/python rc_status -v ## Otherwise if it does not support reload: #rc_failed 3 #rc_status -v ;; status) echo -n "Checking for service mailman: " ## Check status with checkproc(8), if process is running ## checkproc will return with exit status 0. # Return value is slightly different for the status command: # 0 - service running # 1 - service dead, but /var/run/ pid file exists # 2 - service dead, but /var/lock/ lock file exists # 3 - service not running # NOTE: checkproc returns LSB compliant status values. mailman_checkproc rc_status -v ;; *) echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}" exit 1 ;; esac rc_exit
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor