#!/bin/sh

path=`which $0`
config_dir=/etc/opt/bukmmadm/
if [ ! $1 ]; then
  echo "Ошибка: Для запуска выполните команду \"add_mmuser <имя пользователя>\"";
  echo ""
  exit 1;
fi

id | grep "uid=0(" >/dev/null
if [ $? != "0" ]; then
  uname -a | grep -i CYGWIN >/dev/null
  if [ $? != "0" ]; then
    echo "Ошибка: Скрипт может выполня только пользователь root";
    echo ""
    exit 1;
  fi
fi

login=$1

echo "$login" | grep : >/dev/null
if [ "$?" = "0" ]; then
  echo "Ошибка: имя_пользователя содержит символ \":\"";
  echo ""
  exit 14
fi

echo $login | grep " " >/dev/null
if [ "$?" = "0" ]; then
  echo "Ошибка: имя_пользователя содержит пробел";
  echo ""
  exit 14
fi

ufile=$config_dir/mmadm.users
if [ `grep "$login:" "$ufile"| wc -l 2> /dev/null` -ne 0 ]; then
  echo "Ошибка: пользователь уже существует";
  echo "";
  exit 15
fi

printf "Введите пароль пользователя: "
if [ "$password" = "" -a "$crypt" = "" ]; then
    stty -echo
    read password
    stty echo
    printf "\n"
    printf "Введите пароль еще раз: ";
    stty -echo
    read password2
    stty echo
    printf "\n"
    if [ "$password" != "$password2" ]; then
      echo "Ошибка: пароль не совпадает";
      echo "";
      exit 14
    fi
    echo $password | grep : >/dev/null
    if [ "$?" = "0" ]; then
      echo "Ошибка: пароль содержит символ \":\"";
      echo "";
      exit 14
    fi
fi

printf "Введите адрес автоматического входа: ";
read mask
echo "$mask" | grep : >/dev/null
if [ "$?" = "0" ]; then
  echo "Ошибка: адрес содержит символ \":\"";
  echo ""
  exit 14
fi

if [ "$crypt" != "" ]; then
  echo "$login:$crypt:1:$mask" >> $ufile
else
  /usr/bin/perl -e 'print "$ARGV[0]:",crypt($ARGV[1], "XX"),":1:$ARGV[2]\n"' "$login" "$password" "$mask" >> $ufile
fi

chmod 644 $ufile
echo "Пользователь успешно создан";
echo "";
exit 0;
