mirror of
https://github.com/samba-team/samba.git
synced 2025-01-12 09:18:10 +03:00
658d069b16
(This used to be commit 4b9f891319
)
93 lines
2.0 KiB
Plaintext
93 lines
2.0 KiB
Plaintext
#/bin/sh -e
|
|
#
|
|
#
|
|
|
|
# Source debconf library.
|
|
. /usr/share/debconf/confmodule
|
|
|
|
# Function for grabbing a parameter from an smb.conf file
|
|
smbconf_retr() {
|
|
if [ -z "$1" ]; then
|
|
return
|
|
fi
|
|
|
|
if [ -n "$2" ]; then
|
|
local FILE="$2"
|
|
fi
|
|
|
|
if [ -z "$FILE" ]; then
|
|
return
|
|
fi
|
|
|
|
sed -n -e"
|
|
s/^[[:space:]]*\[global\]/\[global\]/i
|
|
/^\[global\]/,/^[[:space:]]*\[/ {
|
|
s/^[[:space:]]*$1[[:space:]]*=[[:space:]]*//pi
|
|
}" $FILE \
|
|
| tail -1
|
|
}
|
|
|
|
FILE=/etc/samba/smb.conf
|
|
|
|
db_title "Samba Server"
|
|
|
|
# Babysit users who don't read README.Debian
|
|
if [ -n "$2" ] && dpkg --compare-versions "$2" lt "2.2"
|
|
then
|
|
db_input medium samba/log_files_moved || true
|
|
db_go
|
|
fi
|
|
|
|
db_input medium samba/run_mode || true
|
|
db_go
|
|
|
|
|
|
# Offer to move the password database for existing users
|
|
if [ "$1" = "configure" -a -n "$2" -a -e /etc/samba/smbpasswd \
|
|
-a ! -e /var/lib/samba/passdb.tdb ] \
|
|
&& dpkg --compare-versions "$2" lt 2.99.cvs.20020713-2
|
|
then
|
|
FILE=/etc/samba/smb.conf
|
|
PASSDB=""
|
|
if [ -f "$FILE" ]; then
|
|
PASSDB=`smbconf_retr "passdb backend"`
|
|
fi
|
|
TDBPRIORITY=medium
|
|
if echo "$PASSDB" | grep -q ldapsam; then
|
|
TDBPRIORITY=low
|
|
fi
|
|
db_get samba-common/do_debconf || true
|
|
if [ "${RET}" = "false" ]; then
|
|
TDBPRIORITY=low
|
|
fi
|
|
|
|
db_input "$TDBPRIORITY" samba/tdbsam || true
|
|
fi
|
|
|
|
# We vary the priority of the next question depending on whether
|
|
# the password database already exists...
|
|
if [ -e /etc/samba/smbpasswd -o -e /var/lib/samba/passdb.tdb ]; then
|
|
PRIORITY="low"
|
|
else
|
|
# If 'encrypt passwords' is true in smb.conf, and smbpasswd
|
|
# does not exist, default to yes here.
|
|
FILE=/etc/samba/smb.conf
|
|
if [ -f "$FILE" ]; then
|
|
ENCRYPT=`smbconf_retr "encrypt passwords"`
|
|
if [ "$ENCRYPT" ]; then
|
|
ENCRYPT=`echo $ENCRYPT | tr '[A-Z]' '[a-z]'`
|
|
if [ "$ENCRYPT" = "yes" ]; then
|
|
ENCRYPT=true
|
|
fi
|
|
if [ "$ENCRYPT" = "no" ]; then
|
|
ENCRYPT=false
|
|
fi
|
|
fi
|
|
db_set samba/generate_smbpasswd "$ENCRYPT"
|
|
fi
|
|
PRIORITY="medium"
|
|
fi
|
|
|
|
db_input $PRIORITY samba/generate_smbpasswd || true
|
|
db_go
|