diff options
Diffstat (limited to 'auth.c')
-rw-r--r-- | auth.c | 3 |
1 files changed, 1 insertions, 2 deletions
@@ -473,8 +473,7 @@ check_key_in_hostfiles(struct passwd *pw, struct sshkey *key, const char *host, | |||
473 | user_hostfile = tilde_expand_filename(userfile, pw->pw_uid); | 473 | user_hostfile = tilde_expand_filename(userfile, pw->pw_uid); |
474 | if (options.strict_modes && | 474 | if (options.strict_modes && |
475 | (stat(user_hostfile, &st) == 0) && | 475 | (stat(user_hostfile, &st) == 0) && |
476 | ((st.st_uid != 0 && st.st_uid != pw->pw_uid) || | 476 | !secure_permissions(&st, pw->pw_uid)) { |
477 | (st.st_mode & 022) != 0)) { | ||
478 | logit("Authentication refused for %.100s: " | 477 | logit("Authentication refused for %.100s: " |
479 | "bad owner or modes for %.200s", | 478 | "bad owner or modes for %.200s", |
480 | pw->pw_name, user_hostfile); | 479 | pw->pw_name, user_hostfile); |