]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: when AddKeysToAgent=yes is set and the key contains no
authordjm@openbsd.org <djm@openbsd.org>
Sat, 25 Jan 2020 07:17:18 +0000 (07:17 +0000)
committerDamien Miller <djm@mindrot.org>
Sat, 25 Jan 2020 07:20:01 +0000 (18:20 +1100)
comment, add the key to the agent with the key's path as the comment. bz2564

OpenBSD-Commit-ID: 8dd8ca9340d7017631a27f4ed5358a4cfddec16f

sshconnect.c
sshconnect.h

index 690240716cf952cce29cddc35e0558bccdebf3ed..4711af782c83ff4dcd2b9618fcb44e655a0400c0 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshconnect.c,v 1.327 2020/01/23 07:10:22 dtucker Exp $ */
+/* $OpenBSD: sshconnect.c,v 1.328 2020/01/25 07:17:18 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1406,8 +1406,8 @@ ssh_local_cmd(const char *args)
 }
 
 void
-maybe_add_key_to_agent(char *authfile, struct sshkey *private,
-    char *comment, char *passphrase)
+maybe_add_key_to_agent(const char *authfile, struct sshkey *private,
+    const char *comment, const char *passphrase)
 {
        int auth_sock = -1, r;
        const char *skprovider = NULL;
@@ -1428,7 +1428,8 @@ maybe_add_key_to_agent(char *authfile, struct sshkey *private,
        }
        if (sshkey_is_sk(private))
                skprovider = options.sk_provider;
-       if ((r = ssh_add_identity_constrained(auth_sock, private, comment, 0,
+       if ((r = ssh_add_identity_constrained(auth_sock, private,
+           comment == NULL ? authfile : comment, 0,
            (options.add_keys_to_agent == 3), 0, skprovider)) == 0)
                debug("identity added to agent: %s", authfile);
        else
index 2e84b8bc523c4d9270943d9b5e2d762ccc325917..7c091e2b1bf845da6258cfd4e9a16caadd1600b4 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshconnect.h,v 1.39 2019/09/13 04:27:35 djm Exp $ */
+/* $OpenBSD: sshconnect.h,v 1.40 2020/01/25 07:17:18 djm Exp $ */
 
 /*
  * Copyright (c) 2000 Markus Friedl.  All rights reserved.
@@ -53,4 +53,5 @@ void   ssh_userauth2(struct ssh *ssh, const char *, const char *,
 
 int     ssh_local_cmd(const char *);
 
-void    maybe_add_key_to_agent(char *, struct sshkey *, char *, char *);
+void    maybe_add_key_to_agent(const char *, struct sshkey *,
+    const char *, const char *);