diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-auth/pam_ssh/files |
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-auth/pam_ssh/files')
-rw-r--r-- | sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch | 11 | ||||
-rw-r--r-- | sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch | 20 | ||||
-rw-r--r-- | sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch | 22 | ||||
-rw-r--r-- | sys-auth/pam_ssh/files/pam_symbols.ver | 4 |
4 files changed, 57 insertions, 0 deletions
diff --git a/sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch b/sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch new file mode 100644 index 000000000000..80214a1df70c --- /dev/null +++ b/sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch @@ -0,0 +1,11 @@ +--- pam_ssh-1.92.orig/pam_get_pass.c 2004-02-19 19:59:05.000000000 +0100 ++++ pam_ssh-1.92/pam_get_pass.c 2009-04-18 13:51:10.000000000 +0200 +@@ -63,6 +63,8 @@ + retval = conv->conv(1, msgs, &resp, conv->appdata_ptr); + if (retval != PAM_SUCCESS) + return retval; ++ if (resp[0].resp == NULL) ++ return PAM_AUTHTOK_RECOVERY_ERR; + retval = pam_set_item(pamh, PAM_AUTHTOK, resp[0].resp); + if (retval != PAM_SUCCESS) + return retval; diff --git a/sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch b/sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch new file mode 100644 index 000000000000..2f63ff8bdcb0 --- /dev/null +++ b/sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch @@ -0,0 +1,20 @@ +--- pam_ssh-1.97/pam_ssh.c.orig 2009-08-01 20:11:00.000000000 +0200 ++++ pam_ssh-1.97/pam_ssh.c 2009-08-01 20:11:16.000000000 +0200 +@@ -627,7 +627,7 @@ + * than the file creation time */ + if (retval = stat(per_agent, &stat_buf)) { + pam_ssh_log(LOG_ERR, "stat() failed on %s", per_agent); +- free(per_agent); ++ pam_set_data(pamh, "ssh_agent_env_agent", NULL, NULL); + fclose(env_read); + return retval; + } +@@ -646,7 +646,7 @@ + if (start_agent) { + if ((env_write = open(per_agent, O_CREAT | O_WRONLY, S_IRUSR | S_IWUSR)) < 0) { + pam_ssh_log(LOG_ERR, "can't write to %s", per_agent); +- free(per_agent); ++ pam_set_data(pamh, "ssh_agent_env_agent", NULL, NULL); + openpam_restore_cred(pamh); + return PAM_SERVICE_ERR; + } diff --git a/sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch b/sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch new file mode 100644 index 000000000000..a0737b377bea --- /dev/null +++ b/sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch @@ -0,0 +1,22 @@ +https://bugs.gentoo.org/503424#c5 +https://sourceforge.net/p/pam-ssh/bugs/16/ + +--- a/pam_ssh.c ++++ b/pam_ssh.c +@@ -867,6 +867,7 @@ + int attempt; /* No. of attempt to contact agent */ + const char *user; /* username */ + struct options options; /* PAM options */ ++ struct stat sb; /* to check for existing .ssh */ + + #if HAVE_PAM_STRUCT_OPTIONS || !HAVE_PAM_STD_OPTION + memset(&options, 0, sizeof options); +@@ -916,7 +917,7 @@ + openpam_restore_cred(pamh); + return PAM_SERVICE_ERR; + } +- if ((access(dotdir,F_OK)) == -1) { ++ if (stat(dotdir, &sb) == -1) { + pam_ssh_log(LOG_DEBUG, "inexistent configuration directory"); + free(dotdir); + openpam_restore_cred(pamh); diff --git a/sys-auth/pam_ssh/files/pam_symbols.ver b/sys-auth/pam_ssh/files/pam_symbols.ver new file mode 100644 index 000000000000..dbc677b77a2d --- /dev/null +++ b/sys-auth/pam_ssh/files/pam_symbols.ver @@ -0,0 +1,4 @@ +{ + global: pam_sm_*; + local: *; +}; |