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