3 RANDOMDEVICE=/dev/urandom
4 allowed=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./
12 if ! read -n 0 < $RANDOMDEVICE ; then
13 echo 1>&2 "Warning, no random device found, password might be insecure"
14 for i in 0 1 2 3 4 5 6 7; do
18 for i in 0 1 2 3 4 5 6 7; do
19 RVAL[i]=$(second $(od -N 1 -t d $RANDOMDEVICE))
24 for i in 0 1 2 3 4 5 6 7; do
25 idx=$((${RVAL[i]} & 0x3F))
26 PW="${PW}${allowed:$idx:1}"
32 # this function comes from wwwconfig-common's apache.func script
36 if grep $1 $2 | grep -v "#" > /dev/null 2>&1 ; then
37 getwwwoption=$(sed -ne "/^[[:space:]]*$1[[:space:]]\+/ s|[[:space:]]*$1[[:space:]]\+\([^[:space:]]\+\)[[:space:]]*$|\1|pg;" < $2)
44 . /usr/share/debconf/confmodule
48 db_input "low" "diogenes/welcome" || true
50 db_input "high" "diogenes/purge_removes_data" || true
53 ### Required options no matter what ###
54 db_input "high" "diogenes/webservers" || true
56 db_get "diogenes/webservers"
59 # if a single webserver is selected,
60 # try to get the user and group the webserver runs as
62 for i in $webservers ; do nbsrv=`expr $nbsrv + 1`; done
64 if [ $nbsrv == 1 ]; then
65 server=$(echo $webservers | sed 's/,$//')
66 if [ -f /etc/$server/httpd.conf ]; then
67 getwwwoption User /etc/$server/httpd.conf
68 webuser=$(echo "$getwwwoption" | sed -e "q")
69 getwwwoption Group /etc/$server/httpd.conf
70 webgroup=$(echo "$getwwwoption" | sed -e "q")
74 if [ -z "$webuser" ]; then
75 db_input "high" "diogenes/webuser" || true
78 db_set "diogenes/webuser" "$webuser"
80 if [ -z "$webgroup" ]; then
81 db_input "high" "diogenes/webgroup" || true
84 db_set "diogenes/webgroup" "$webgroup"
87 db_input "high" "diogenes/databasemgr_type" || true
89 db_get "diogenes/databasemgr_type"
92 if [ "$dbtype" = "Automatic" ] ; then
93 db_input "high" "diogenes/databasemgr_server" || true
95 db_input "high" "diogenes/dbmyadmin" || true
97 db_input "critical" "diogenes/dbadmpass" || true
99 db_input "medium" "diogenes/database_name" || true
101 db_input "medium" "diogenes/database_user" || true
103 db_input "medium" "diogenes/database_pass" || true
105 db_get "diogenes/database_pass"
107 if [ "$dbpass" = "auto" ]; then
108 dbpass=$(create-random-pw)
109 elif [ "$dbpass" = "none" ]; then
112 db_set "diogenes/database_pass" "$dbpass"