#!/bin/sh . /etc/init.d/globals # Camd-Fileflags FLAGDIR="/var/etc" F_MGCAM=".mgcamd" F_DOSCAM=".doscam" F_OSCAM=".oscam" F_CCCAM=".cccam" F_OSMOD=".osmod" F_NCAM=".ncam" F_GBOX=".gbox" MGCAM_Action() { case $1 in "start" ) SHOWINFO "start mgcamd" { /var/bin/mgcamd; pzapit -rz; } & ;; "stop" ) SHOWINFO "stop mgcamd" kill $( cat /tmp/mgcamd.pid ) sleep 1 rm -rf /tmp/mgstat.info rm -rf /tmp/mgshare.info rm -rf /tmp/ecm.info rm -rf /tmp/pid.info rm -rf /tmp/ca_cache.list rm -rf /tmp/cccam.info rm -rf /tmp/ecm.info rm -rf /tmp/mg.info ;; * ) MGCAM_Action "stop" sleep 1 MGCAM_Action "start" ;; esac } DOSCAM_Action() { case $1 in "start" ) if [ -e /var/etc/.coredump ]; then ulimit -c unlimited fi SHOWINFO "start camd_datefix" /etc/init.d/camd_datefix start doscam SHOWINFO "start doscam" /var/bin/doscam -b -w0 if [ -e $FLAGDIR/$F_MGCAM ]; then sleep 15 fi ;; "stop" ) SHOWINFO "stop camd_datefix" /etc/init.d/camd_datefix stop doscam SHOWINFO "stop doscam" killall doscam sleep 1 rm -rf /tmp/doscam.* rm -rf /tmp/ecm.info ;; * ) DOSCAM_Action "stop" sleep 1 DOSCAM_Action "start" ;; esac } OSCAM_Action() { case $1 in "start" ) SHOWINFO "start camd_datefix" /etc/init.d/camd_datefix start oscam SHOWINFO "start oscam" /var/bin/oscam -b if [ -e $FLAGDIR/$F_MGCAM ]; then sleep 15 fi ;; "stop" ) SHOWINFO "stop camd_datefix" /etc/init.d/camd_datefix stop oscam SHOWINFO "stop oscam" killall oscam sleep 1 rm -rf /tmp/oscam.* rm -rf /tmp/ecm.info ;; * ) OSCAM_Action "stop" sleep 1 OSCAM_Action "start" ;; esac } OSMOD_Action() { case $1 in "start" ) SHOWINFO "start camd_datefix" /etc/init.d/camd_datefix start osmod SHOWINFO "start osmod" /var/bin/osmod -b if [ -e $FLAGDIR/$F_MGCAM ]; then sleep 15 fi ;; "stop" ) SHOWINFO "stop camd_datefix" /etc/init.d/camd_datefix stop osmod SHOWINFO "stop osmod" killall osmod sleep 1 rm -rf /tmp/osmod.* rm -rf /tmp/ecm.info ;; * ) OSMOD_Action "stop" sleep 1 OSMOD_Action "start" ;; esac } NCAM_Action() { case $1 in "start" ) SHOWINFO "start camd_datefix" /etc/init.d/camd_datefix start ncam SHOWINFO "start ncam" /var/bin/ncam -b if [ -e $FLAGDIR/$F_MGCAM ]; then sleep 15 fi ;; "stop" ) SHOWINFO "stop camd_datefix" /etc/init.d/camd_datefix stop ncam SHOWINFO "stop ncam" killall ncam sleep 1 rm -rf /tmp/ncam.* rm -rf /tmp/ecm.info ;; * ) NCAM_Action "stop" sleep 1 NCAM_Action "start" ;; esac } CCCAM_Action() { case $1 in "start" ) SHOWINFO "start cccam" /var/bin/cccam & sleep 5 ;; "stop" ) SHOWINFO "stop cccam" killall cccam ;; * ) CCCAM_Action "stop" sleep 1 CCCAM_Action "start" ;; esac } GBOX_Action() { case $1 in "start" ) SHOWINFO "start gbox" /var/bin/gbox & sleep 10 ;; "stop" ) SHOWINFO "stop gbox" touch /tmp/gbox.kill sleep 1 rm -rf /tmp/pid.info rm -rf /tmp/ecm.info rm -rf /tmp/gbox.pid rm -rf /tmp/gbox.ver rm -rf /tmp/gbox.kill ;; * ) GBOX_Action "stop" sleep 1 GBOX_Action "start" ;; esac } CAMD_Action() { case $1 in "gbox") GBOX_Action $ACTION ;; "doscam") DOSCAM_Action $ACTION ;; "oscam") OSCAM_Action $ACTION ;; "ncam") NCAM_Action $ACTION ;; "osmod") OSMOD_Action $ACTION ;; "cccam") CCCAM_Action $ACTION ;; "mgcamd") MGCAM_Action $ACTION ;; *) if [ -e $FLAGDIR/$F_GBOX ]; then GBOX_Action $ACTION fi if [ -e $FLAGDIR/$F_DOSCAM ]; then DOSCAM_Action $ACTION fi if [ -e $FLAGDIR/$F_OSCAM ]; then OSCAM_Action $ACTION fi if [ -e $FLAGDIR/$F_OSMOD ]; then OSMOD_Action $ACTION fi if [ -e $FLAGDIR/$F_NCAM ]; then NCAM_Action $ACTION fi if [ -e $FLAGDIR/$F_CCCAM ]; then CCCAM_Action $ACTION fi if [ -e $FLAGDIR/$F_MGCAM ]; then MGCAM_Action $ACTION fi ;; esac } case $1 in "start") ACTION="start" CAMD_Action $2 ;; "stop") ACTION="stop" CAMD_Action $2 ;; *) ACTION="restart" CAMD_Action $2 ;; esac