about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/networking/openssh/ssh-keysign-8.4.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools/networking/openssh/ssh-keysign-8.4.patch')
-rw-r--r--nixpkgs/pkgs/tools/networking/openssh/ssh-keysign-8.4.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/networking/openssh/ssh-keysign-8.4.patch b/nixpkgs/pkgs/tools/networking/openssh/ssh-keysign-8.4.patch
new file mode 100644
index 000000000000..8ef3ad0126aa
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/openssh/ssh-keysign-8.4.patch
@@ -0,0 +1,28 @@
+diff --git a/pathnames.h b/pathnames.h
+index cb44caa4..81ce3367 100644
+--- a/pathnames.h
++++ b/pathnames.h
+@@ -123,9 +123,7 @@
+ #endif
+ 
+ /* Location of ssh-keysign for hostbased authentication */
+-#ifndef _PATH_SSH_KEY_SIGN
+-#define _PATH_SSH_KEY_SIGN		"/usr/libexec/ssh-keysign"
+-#endif
++#define _PATH_SSH_KEY_SIGN		"ssh-keysign"
+ 
+ /* Location of ssh-pkcs11-helper to support keys in tokens */
+ #ifndef _PATH_SSH_PKCS11_HELPER
+diff --git a/sshconnect2.c b/sshconnect2.c
+index 1675f393..32ed70d1 100644
+--- a/sshconnect2.c
++++ b/sshconnect2.c
+@@ -1854,7 +1854,7 @@ ssh_keysign(struct sshkey *key, u_char **sigp, size_t *lenp,
+ 		closefrom(sock + 1);
+ 		debug3("%s: [child] pid=%ld, exec %s",
+ 		    __func__, (long)getpid(), _PATH_SSH_KEY_SIGN);
+-		execl(_PATH_SSH_KEY_SIGN, _PATH_SSH_KEY_SIGN, (char *)NULL);
++		execlp(_PATH_SSH_KEY_SIGN, _PATH_SSH_KEY_SIGN, (char *)NULL);
+ 		fatal("%s: exec(%s): %s", __func__, _PATH_SSH_KEY_SIGN,
+ 		    strerror(errno));
+ 	}