| #!/bin/sh |
| # |
| # openct This shell script takes care of starting and stopping OpenCT. |
| # |
| # chkconfig: 2345 24 89 |
| # description: OpenCT is a middleware framework for smart card terminals. |
| # |
| # processname: ifdhandler |
| # config: /etc/openct.conf |
| |
| ### BEGIN INIT INFO |
| # Provides: openct |
| # Default-Start: 2 3 4 5 |
| # Default-Stop: 0 1 6 |
| # Should-Start: $syslog $network |
| # Should-Stop: $syslog $network |
| # Short-Description: Middleware framework for smart card terminals |
| # Description: This starts/stops the OpenCT middleware framework support |
| # for smart card terminals. |
| ### END INIT INFO |
| |
| . /etc/init.d/functions |
| |
| exec="/usr/sbin/openct-control" |
| prog=openct |
| proc=ifdhandler |
| |
| OPENCT_OPTIONS= |
| [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog |
| |
| lockfile=/var/lock/subsys/$prog |
| |
| start() { |
| retval=0 |
| if ! status $proc >/dev/null 2>&1 ; then |
| action $"Initializing OpenCT smart card terminals: " \ |
| $exec $OPENCT_OPTIONS init |
| retval=$? |
| [ $retval -eq 0 ] && touch $lockfile |
| fi |
| return $retval |
| } |
| |
| stop() { |
| if status $proc >/dev/null 2>&1 ; then |
| action $"Stopping OpenCT smart card terminals: " \ |
| $exec $OPENCT_OPTIONS shutdown |
| fi |
| retval=$? |
| if [ $retval -eq 0 ] ; then |
| rm -f /var/run/openct/status |
| rm -f $lockfile |
| fi |
| return $retval |
| } |
| |
| restart() { |
| stop |
| start |
| } |
| |
| oct_status() { |
| status $proc |
| retval=$? |
| if [ -e /var/run/openct/status ] ; then |
| $exec $OPENCT_OPTIONS status |
| [ -e /var/run/openct/status ] && \ |
| echo $"Waiting for reader attach/detach events..." |
| fi |
| return $retval |
| } |
| |
| case "$1" in |
| start|stop|restart) |
| $1 |
| ;; |
| reload|force-reload) |
| restart |
| ;; |
| status) |
| oct_status |
| ;; |
| try-restart|condrestart) |
| [ ! -f $lockfile ] || restart |
| ;; |
| *) |
| echo $"Usage: $0 {start|stop|status|restart|try-restart|reload|force-reload}" |
| exit 2 |
| esac |