summaryrefslogtreecommitdiff
path: root/usr/libexec/commission/commission
blob: 52d88ba2c3cc0e49bddc1ecd15d2a5573a523c1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/lighttpd
DAEMONNAME="lighttpd"
NAME=commission
DESC="MT lighttpd Commissioning Server"
OPTS="-f /etc/lighttpd-commission.conf"
PIDFILE=/var/run/lighttpd-commission.pid 
CONF_DIR=/var/config
ENABLED=yes

PASSWORDS=$(passwd -Sa | egrep '^[^[:space:]]+[[:space:]]P[[:space:]]' | wc -l)

if (($PASSWORDS == 0)) ; then
    # No password, so indicate commissioning mode
    # php-fpm-commision will be turned on as well
    rm -f "/run/mt-commission"
    echo 'ENABLED="yes"' >"/run/mt-commission"
else
    ENABLED="no"
    echo 'ENABLED="no"' >"/run/mt-commission"
fi

[ -f "/etc/default/no-${NAME}" ] && . "/etc/default/no-${NAME}"

if [ ! -f $CONF_DIR/server.pem ]; then
  echo "Generating server cert"
  openssl req \
    -x509 -nodes -days 3650 \
    -subj '/C=US/ST=Minnesota/L=Minneapolis/CN=mlinux.example.com' \
    -newkey rsa:2048 -keyout $CONF_DIR/server.pem -out $CONF_DIR/server.pem
fi

if [ "$ENABLED" != "yes" ]; then
          echo "Some user has a password"
  if [ "$VERBOSE" = very ] ; then
            passwd -Sa | egrep '^[^[:space:]]+[[:space:]]P[[:space:]]' | logger -s -p daemon.notice
            echo "user count with passwords: $PASSWORDS"
  fi
	  exit
fi
echo -n "Starting $DESC: "
"$DAEMON" $OPTS
echo "$NAME."