diff --git a/config/functions b/config/functions index c7bb854ba8..dad3e96545 100644 --- a/config/functions +++ b/config/functions @@ -92,7 +92,16 @@ add_user() { mkdir -p ${INSTALL}/etc touch ${INSTALL}/etc/passwd if [ -z "`grep "$1:" ${INSTALL}/etc/passwd`" ]; then - echo "$1:$2:$3:$4:$5:$6:$7" >> ${INSTALL}/etc/passwd + echo "$1:x:$3:$4:$5:$6:$7" >> ${INSTALL}/etc/passwd + fi + + touch ${INSTALL}/etc/shadow + PASSWORD="$2" + if [ "$PASSWORD" = "x" ]; then + PASSWORD="*" + fi + if [ -z "`grep "$1:" ${INSTALL}/etc/shadow`" ]; then + echo "$1:$PASSWORD:::::::" >> ${INSTALL}/etc/shadow fi } diff --git a/packages/sysutils/busybox/config/busybox.conf b/packages/sysutils/busybox/config/busybox.conf index 7bbe59f996..278abe0024 100644 --- a/packages/sysutils/busybox/config/busybox.conf +++ b/packages/sysutils/busybox/config/busybox.conf @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Busybox version: 1.18.5 -# Sat Aug 6 19:21:09 2011 +# Sun Aug 7 23:33:27 2011 # CONFIG_HAVE_DOT_CONFIG=y @@ -432,9 +432,9 @@ CONFIG_INIT_TERMINAL_TYPE="" # # CONFIG_ADD_SHELL is not set # CONFIG_REMOVE_SHELL is not set -# CONFIG_FEATURE_SHADOWPASSWDS is not set +CONFIG_FEATURE_SHADOWPASSWDS=y CONFIG_USE_BB_PWD_GRP=y -# CONFIG_USE_BB_SHADOW is not set +CONFIG_USE_BB_SHADOW=y CONFIG_USE_BB_CRYPT=y CONFIG_USE_BB_CRYPT_SHA=y # CONFIG_ADDUSER is not set diff --git a/packages/sysutils/busybox/install b/packages/sysutils/busybox/install index 495e6ff12a..8cd9fde3a5 100755 --- a/packages/sysutils/busybox/install +++ b/packages/sysutils/busybox/install @@ -45,6 +45,7 @@ USER_PWD="`$ROOT/$TOOLCHAIN/bin/cryptpw -m sha512 $USER_PASSWORD`" mkdir -p $INSTALL/etc cp $PKG_DIR/config/profile $INSTALL/etc cp $PKG_DIR/config/httpd.conf $INSTALL/etc + echo "chmod 000 $INSTALL/etc/shadow" >> $FAKEROOT_SCRIPT # /etc/fstab is needed by... touch $INSTALL/etc/fstab