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