#!/system/bin/sh
debmenu=0
sshrun=0
c="h"

while [ X"$c" != "Xq" ]
do
  echo ""

  if [ X"$c" = "Xa" ]
  then
    export HOME=/data/local
    echo -e "\033[0m"
    /system/bin/sh -
  fi

  if [ X"$c" = "Xw" ]
  then
    echo -e "\033[36m"
    echo " remount,rw /system..."
    mount -o remount,rw /system
    if mount | grep /data/local/debian/system > /dev/null
    then
      echo " remount,rw /data/local/debian/system..."
      mount -o remount,rw /data/local/debian/system
    fi
  fi

  if mount | grep /data/local/debian > /dev/null
  then
    if [ X"$c" = "Xu" ]
    then
      chroot /data/local/debian /etc/init.d/ssh stop > /dev/null
      sshrun=0

      umount /data/local/debian/data
      umount /data/local/debian/factory
      umount /data/local/debian/system
      umount /data/local/debian/dev/pts
      umount /data/local/debian/proc
      umount /data/local/debian/sys
      if umount /data/local/debian
      then
        export HOME=/data/local
        losetup -d /dev/loop0
        echo -e "\033[31m > DEBIAN NOW UNMOUNTED"
        debmenu=0
      else
        echo -e "\033[32m > SYSTEM BUSY, STILL MOUNTED"
        mount -t devpts devpts /data/local/debian/dev/pts
        mount -t proc proc /data/local/debian/proc
        mount -t sysfs sysfs /data/local/debian/sys
        mount -o bind /data /data/local/debian/data
        mount -o bind /factory /data/local/debian/factory
        mount -o bind /system /data/local/debian/system
      fi
    else
      echo -e "\033[32m DEBIAN MOUNTED"
      debmenu=1

      if [ X"$c" = "Xd" ]
      then
        export HOME=/root
        export TERM=linux
        echo -e "\033[0m"
        chroot /data/local/debian /bin/bash -l
      fi

      if [ X"$c" = "Xc" ]
      then
        chroot /data/local/debian /usr/sbin/logrotate /etc/logrotate.conf
        echo -e "\033[36m"
        echo " ...logrotate done"
      fi

      if [ X"$c" = "Xn" ]
      then
        echo -e "\033[0m"
        chroot /data/local/debian /usr/bin/nmap -p 0-65535 localhost
      fi

      if [ X"$c" = "Xp" ]
      then
        echo -e "\033[31m WARNING: This will write a pcap-file on your sd-storage!"
        echo " Location: /data/media/ettercap-local.pcap"
        echo " Much traffic means: VERY BIG PCAP FILE!"
        echo " Stop ettercap soon by pressing 'q'"
        echo -e "\033[0m"
        echo " Press any key to start"
        read -n 1
        chroot /data/local/debian /usr/sbin/ettercap -Tq -i wlan0 -w /data/media/ettercap-local.pcap
      fi

      if [ X"$c" = "Xe" ]
      then
        echo -e "\033[31m WARNING: This will write a pcap-file on your sd-storage!"
        echo " Location: /data/media/ettercap-MIM.pcap"
        echo " If man in the middle attack (ARP) works,"
        echo " it will storage ALL traffic."
        echo " Much traffic means: VERY BIG PCAP FILE!"
        echo " Stop ettercap soon by pressing 'q'"
        echo " It could be illegal to attack your neighbours WLAN."
        echo " The SSL-fake-certificate is disabled, because it would crash your SSH-session, if you are connected (edit /etc/etter.conf to enable SSL)."
        echo " We will start:"
        echo " ettercap -Tq -i wlan0 -w /data/media/ettercap-MIM.pcap -M arp:remote // // -P autoadd"
        echo -e "\033[0m"
        echo " Press any key to start"
        read -n 1
        chroot /data/local/debian /usr/sbin/ettercap -Tq -i wlan0 -w /data/media/ettercap-MIM.pcap -M arp:remote // // -P autoadd
      fi

    fi
  else
    if [ X"$c" = "Xm" ]
    then
      mknod /dev/loop0 b 7 0
      if mount -o loop,noatime /storage/sdcard0/debian.img /data/local/debian
      then
        export PATH=/usr/bin:/usr/sbin:/bin:$PATH
        export TERM=linux
        export HOME=/root
        mount -t devpts devpts /data/local/debian/dev/pts
        mount -t proc proc /data/local/debian/proc
        mount -t sysfs sysfs /data/local/debian/sys
        mount -o bind /data /data/local/debian/data
        mount -o bind /factory /data/local/debian/factory
        mount -o bind /system /data/local/debian/system
        echo -e "\033[32m > DEBIAN NOW MOUNTED"
        debmenu=1
      else
        echo - "\033[31m > DEBIAN CHROOT MOUNT ERROR"
        debmenu=0
      fi
    else
      echo -e "\033[31m DEBIAN UNMOUNTED"
      debmenu=0
    fi
  fi

  if ps ax | grep -v grep | grep sshd > /dev/null
  then
    if [ X"$c" = "Xk" ]
    then
      chroot /data/local/debian /etc/init.d/ssh stop
      if ps ax | grep -v grep | grep sshd > /dev/null
      then
        echo -e "\033[32m > SSHD NOT STOPPED"
        sshrun=1
      else
        echo -e "\033[31m > SSHD STOPPED"
        sshrun=0
      fi
    else
      echo -e "\033[32m SSHD RUNNING"
      sshrun=1
    fi
  else
    if [ X"$c" = "Xs" ]
    then
      if chroot /data/local/debian /etc/init.d/ssh start
      then
        echo -e "\033[32m > SSHD STARTED"
        sshrun=1
      else
        echo -e "\033[31m > SSHD NOT STARTED"
        sshrun=0
      fi
    else
      echo -e "\033[31m SSHD NOT RUNNING"
      sshrun=0
    fi
  fi

  echo -e "\033[0m"
  if [ $debmenu -eq "0" ]
  then
    echo " (m)ount debian"
    echo " (a)ndroid root korn shell"
    echo " (w)rite: set read and write for system-partition"
  else
    echo " (u)nmount debian"
    echo " (a)ndroid root korn shell"
    echo " (d)ebian root bash"
    echo " (w)rite: set read and write for system-partition"
    echo " (c)ompress debian-logs - logrotate"
    echo ""
    if [ $sshrun -eq "0" ]
    then
      echo " (s)tart openssh-server"
    else
      echo " (k)ill openssh-server"
    fi
    echo ""
    echo " (n)map localhost"
    echo " (p)assive ettercap local"
    echo " (e)ttercap man in the middle wlan"
  fi
  echo " (q)uit"
  read -n 1 -s c
done

