[Pkg-shadow-devel] Bug#325910: passwd: loops if passwords don't match on initial installation

Tollef Fog Heen tfheen at err.no
Wed Aug 31 18:14:21 UTC 2005


Package: passwd
Severity: grave
Justification: breaks installation

(As per discussion on #debian-women)

From:

http://svn.debian.org/wsvn/pkg-shadow/trunk/debian/passwd.config?op=file&rev=0&sc=0:

        8)

[...]

                        # Compare the two passwords, loop with message if not
                        # identical, or if empty.
                        db_get passwd/user-password
                        USER_PW="$RET"
                        db_get passwd/user-password-again
                        if [ "$COMPARE_PW" ] && [ "$USER_PW" != "$RET" ]; then
                                db_set passwd/user-password ""
                                db_set passwd/user-password-again ""
                                db_fset passwd/password-mismatch seen false
                                db_input critical passwd/password-mismatch
                                db_fset passwd/user-password seen false
                                db_fset passwd/user-password-again seen false
                                STATE=8
                                continue
                        fi
                        if [ -z "$USER_PW" ]; then
                                db_set passwd/user-password ""
                                db_set passwd/user-password-again ""
                                db_fset passwd/password-empty seen false
                                db_input critical passwd/password-empty
                                db_fset passwd/user-password seen false
                                db_fset passwd/user-password-again seen false
                                STATE=8
                                continue
                        fi

Apart from the db_input about mismatched passwords (or empty
passwords), this will cause a loop as the user is never allowed to
correct his mistake.

It's a trivial fix, just change STATE=8 to STATE=7 (or earlier) and it
goes on it's merry way and the user is prompted again.

-- 
Tollef Fog Heen                                                        ,''`.
UNIX is user friendly, it's just picky about who its friends are      : :' :
                                                                      `. `' 
                                                                        `-  




More information about the Pkg-shadow-devel mailing list