summaryrefslogtreecommitdiff
path: root/backport-pam_ssh_agent_auth-0.10.2-dereference.patch
diff options
context:
space:
mode:
Diffstat (limited to 'backport-pam_ssh_agent_auth-0.10.2-dereference.patch')
-rw-r--r--backport-pam_ssh_agent_auth-0.10.2-dereference.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/backport-pam_ssh_agent_auth-0.10.2-dereference.patch b/backport-pam_ssh_agent_auth-0.10.2-dereference.patch
new file mode 100644
index 0000000..d5a9793
--- /dev/null
+++ b/backport-pam_ssh_agent_auth-0.10.2-dereference.patch
@@ -0,0 +1,21 @@
+diff --git a/pam_ssh_agent_auth-0.10.2/pam_user_authorized_keys.c b/pam_ssh_agent_auth-0.10.2/pam_user_authorized_keys.c
+--- a/pam_ssh_agent_auth-0.10.2/pam_user_authorized_keys.c
++++ b/pam_ssh_agent_auth-0.10.2/pam_user_authorized_keys.c
+Reference:https://src.fedoraproject.org/rpms/openssh/blob/rawhide/f/backport-pam_ssh_agent_auth-0.10.2-dereference.patch
+@@ -158,11 +158,12 @@ parse_authorized_key_file(const char *user,
+ int
+ pam_user_key_allowed(const char *ruser, struct sshkey * key)
+ {
++ struct passwd *pw;
+ return
+- pamsshagentauth_user_key_allowed2(getpwuid(authorized_keys_file_allowed_owner_uid),
+- key, authorized_keys_file)
+- || pamsshagentauth_user_key_allowed2(getpwuid(0), key,
+- authorized_keys_file)
++ ( (pw = getpwuid(authorized_keys_file_allowed_owner_uid)) &&
++ pamsshagentauth_user_key_allowed2(pw, key, authorized_keys_file))
++ || ((pw = getpwuid(0)) &&
++ pamsshagentauth_user_key_allowed2(pw, key, authorized_keys_file))
+ || pamsshagentauth_user_key_command_allowed2(authorized_keys_command,
+ authorized_keys_command_user,
+ getpwnam(ruser), key);