igor@0: #!/bin/sh igor@0: igor@61: XENOMIPS='' igor@61: grep -qi xenomips /proc/cmdline && XENOMIPS=`cat /proc/cmdline | sed 's/.*xenomips="//; s/".*//'` igor@61: igor@49: case $1 in igor@49: start) nata@65: [ -e /dev/hvc0 ] || ln -s /dev/null /dev/hvc0 igor@49: if grep -qi xenomips /proc/cmdline igor@49: then igor@61: WORKDIR="/xenomips/config/dynamips" igor@61: if echo $XENOMIPS | grep -q ^./pemu igor@61: then igor@61: WORKDIR="/xenomips/config/pixemu" igor@61: PIXOS=`echo $XENOMIPS | sed 's/.* //'` igor@61: XENOMIPS=`echo $XENOMIPS | sed 's/ [^ ]*$//'` igor@61: cp /xenomips/config/pixemu/pemu.ini.ORIG /xenomips/config/pixemu/pemu.ini igor@61: sed -i -e "s@FLASH@$PIXOS@" /xenomips/config/pixemu/pemu.ini igor@61: fi igor@61: cd "$WORKDIR" igor@61: screen -e '^xx' -d -m sh -c "while true; do $XENOMIPS ; done" igor@49: else igor@49: /etc/init.d/quagga start igor@49: screen -e '^xx' -d -m sh -c 'while true; do vtysh; done' igor@49: fi igor@49: ;; igor@49: stop) igor@49: if grep -qi xenomips /proc/cmdline igor@49: then igor@61: kill $(ps aux | egrep "pemu|dynamips" | awk '{print $2}') igor@49: else igor@49: /etc/init.d/quagga stop igor@49: fi igor@49: ;; igor@49: esac igor@0: