Regression: fix pw usermod -w xxx

Reported by:	gjb
This commit is contained in:
Baptiste Daroussin 2015-08-14 13:39:55 +00:00
parent 6cb8dbf791
commit 5770ce6f1d
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=286775
2 changed files with 16 additions and 0 deletions

View File

@ -1645,6 +1645,8 @@ pw_user_mod(int argc, char **argv, char *arg1)
if (lc == NULL || login_setcryptfmt(lc, "sha512", NULL) == NULL)
warn("setting crypt(3) format");
login_close(lc);
cnf->default_password = boolean_val(passwd,
cnf->default_password);
pwd->pw_passwd = pw_password(cnf, pwd->pw_name, dryrun);
edited = true;
}

View File

@ -314,6 +314,19 @@ user_add_already_exists_body() {
${PW} useradd foo
}
atf_test_case user_add_w_yes
user_add_w_yes_body() {
populate_etc_skel
atf_check -s exit:0 ${PW} useradd foo -w yes
atf_check -s exit:0 \
-o match:'^foo:\$.*' \
grep "^foo" ${HOME}/master.passwd
atf_check -s exit:0 ${PW} usermod foo -w yes
atf_check -s exit:0 \
-o match:'^foo:\$.*' \
grep "^foo" ${HOME}/master.passwd
}
atf_init_test_cases() {
atf_add_test_case user_add
atf_add_test_case user_add_noupdate
@ -341,4 +354,5 @@ atf_init_test_cases() {
atf_add_test_case user_add_uid_too_large
atf_add_test_case user_add_bad_shell
atf_add_test_case user_add_already_exists
atf_add_test_case user_add_w_yes
}