<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/7cd4dcbcab9f2b7a4afc65d37048e0319373dea7">https://github.com/macports/macports-ports/commit/7cd4dcbcab9f2b7a4afc65d37048e0319373dea7</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 7cd4dcbcab9 libssh: update to 0.9.5
</span>7cd4dcbcab9 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 7cd4dcbcab9f2b7a4afc65d37048e0319373dea7
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Thu Apr 15 16:36:01 2021 +0100

<span style='display:block; white-space:pre;color:#404040;'>    libssh: update to 0.9.5
</span>---
 devel/libssh/Portfile                            |  10 +-
 devel/libssh/files/support-older-ssh-agent.patch | 216 -----------------------
 2 files changed, 4 insertions(+), 222 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libssh/Portfile b/devel/libssh/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 6b1991f70e5..c43879b8681 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libssh/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libssh/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,15 +5,15 @@ PortGroup           cmake 1.1
</span> 
 name                libssh
 epoch               1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             0.8.9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             0.9.5
</span> revision            0
 set major           [join [lrange [split ${version} .] 0 1] .]
 master_sites        https://www.libssh.org/files/${major}
 use_xz              yes
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  a9192aef56b6b4113bdcc1ec657f9cce83f96e38 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  8559e19da0c40b6f93482b6160219ad77a4d9f1dc190bf174757455c6ae26825 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    432084
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  2ebc61443caa488bacdffe363775129e88c83f8a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  acffef2da98e761fc1fd9c4fddde0f3af60ab44c4f5af05cd1b2d60a3fa08718 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    502876
</span> 
 categories          devel security net
 platforms           darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,8 +35,6 @@ depends_build-append \
</span> depends_lib         path:lib/libssl.dylib:openssl \
                     port:zlib
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append   support-older-ssh-agent.patch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> default_variants    +kerberos5
 
 post-extract {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libssh/files/support-older-ssh-agent.patch b/devel/libssh/files/support-older-ssh-agent.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 6c27afb8122..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libssh/files/support-older-ssh-agent.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,216 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-commit 88e4a81c5f6fa930f7c343ee8db27ad880e61821
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Author: Mihai Moldovan <ionic@ionic.de>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date:   Sat Mar 30 13:33:29 2019 +0100
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    agent: fall back to SHA1-based RSA signatures.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    We automatically request a SHA2-based signature if the server supports
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    it. Older versions of ssh-agent do not honor such flags and also don't
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    fail, but instead return a legacy (SHA1-based) signature.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Check the type of signature that was returned (first nested SSH String
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    in the response), fail if it didn't match what was expected and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    re-execute ssh_userauth_agent_publickey() in fallback mode on signing
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    errors with RSA-based keys, disabling usage of the SHA2 extensions.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    We will also always re-enable SHA2-based signatures (both in success and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    error cases), since the agent is only queried once for initial
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    authentication. After that, we'll be able to use the stronger SHA2-based
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    variants as usual.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Signed-off-by: Mihai Moldovan <ionic@ionic.de>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/agent.c b/src/agent.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 7704e8f1..bb65c5c5 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/agent.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/agent.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -492,10 +492,13 @@ ssh_string ssh_agent_sign_data(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_buffer reply;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_string key_blob;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_string sig_blob;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    ssh_string sig_type;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     unsigned int type = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     unsigned int flags = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     uint32_t dlen;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     int rc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    int memcmp_result = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    const char *expected = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     request = ssh_buffer_new();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (request == NULL) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -600,6 +603,35 @@ ssh_string ssh_agent_sign_data(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     sig_blob = ssh_buffer_get_ssh_string(reply);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_buffer_free(reply);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    /* Check signature type for RSA keys. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if ((pubkey->type == SSH_KEYTYPE_RSA) && (sig_blob)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        expected = "ssh-rsa";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if (session->extensions & SSH_EXT_SIG_RSA_SHA512) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            expected = "rsa-sha2-512";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        } else if (session->extensions & SSH_EXT_SIG_RSA_SHA256) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            expected = "rsa-sha2-256";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         * Do *not* free sig_type!
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         * It's a reference to the nested ssh_string inside of sig_blob.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        sig_type = ssh_string_data(sig_blob);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if (sig_type == NULL) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          SSH_STRING_FREE(sig_blob);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        memcmp_result = memcmp(expected, ssh_string_data(sig_type), MIN(strlen(expected), ssh_string_len(sig_type)));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if (memcmp_result != 0) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          SSH_LOG(SSH_LOG_DEBUG, "expected signature type '%s', got '%s' from agent", expected, ssh_string_data(sig_type));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          SSH_STRING_FREE(sig_blob);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return sig_blob;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/auth.c b/src/auth.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 993e6dfe..9f7fc5ea 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/auth.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/auth.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -740,12 +740,15 @@ fail:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifndef _WIN32
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static int ssh_userauth_agent_publickey(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                         const char *username,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                        ssh_key pubkey)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                        ssh_key pubkey,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                        int fallback)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_string pubkey_s = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_string sig_blob = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     const char *sig_type_c = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     int rc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    int disabled_flags = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    int rsa_ext_flags = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     switch(session->pending_call_state) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         case SSH_PENDING_CALL_NONE:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -771,6 +774,19 @@ static int ssh_userauth_agent_publickey(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (rc < 0) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         goto fail;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    rsa_ext_flags |= session->extensions & SSH_EXT_SIG_RSA_SHA512;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    rsa_ext_flags |= session->extensions & SSH_EXT_SIG_RSA_SHA256;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (fallback) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+       * Agent only provides SHA1 signatures, so disable the SHA2-based variants.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+       * Keep track of the current/old state and reapply it later if needed, though.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+       *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+       * N.B.: fallback being set implicitly means that the key type must be RSA.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+       */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      disabled_flags = rsa_ext_flags;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      session->extensions &= ~SSH_EXT_SIG_RSA_SHA512;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      session->extensions &= ~SSH_EXT_SIG_RSA_SHA256;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     sig_type_c = ssh_key_get_signature_algorithm(session, pubkey->type);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     /* Check if the given public key algorithm is allowed */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -780,6 +796,7 @@ static int ssh_userauth_agent_publickey(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                       " PUBLICKEY_ACCEPTED_TYPES configuration option",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                       sig_type_c);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         SSH_STRING_FREE(pubkey_s);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        session->extensions |= disabled_flags;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         return SSH_AUTH_DENIED;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -801,7 +818,12 @@ static int ssh_userauth_agent_publickey(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     /* sign the buffer with the private key */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     sig_blob = ssh_pki_do_sign_agent(session, session->out_buffer, pubkey);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (sig_blob == NULL) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        goto fail;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if (!fallback) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          goto retry_if_rsa;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+          goto fail;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     rc = ssh_buffer_add_ssh_string(session->out_buffer, sig_blob);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -815,6 +837,7 @@ static int ssh_userauth_agent_publickey(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     session->pending_call_state = SSH_PENDING_CALL_AUTH_AGENT;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     rc = ssh_packet_send(session);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (rc == SSH_ERROR) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        session->extensions |= disabled_flags;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         return SSH_AUTH_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -824,11 +847,50 @@ pending:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         session->pending_call_state = SSH_PENDING_CALL_NONE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    /* Reactivate SHA2-based signatures if needed.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * We're only ever using the agent once (for each key) while authenticating,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * so don't disable stronger algorithms after the initial auth is done
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * (using a weaker, but at least supported one).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    session->extensions |= disabled_flags;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return rc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+retry_if_rsa:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    ssh_buffer_reinit(session->out_buffer);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * Double-free of pubkey_s in fall-through mode to fail, but this is not
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * a problem, since the second free operation will just be a no-op thanks
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * to SSH_STRING_FREE().
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    SSH_STRING_FREE(pubkey_s);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * We're explicitly checking if rsa_ext_flags is non-zero because
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * retrying doesn't make sense if there are no algos to disable in the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * first place.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * In such a case, the code will use the implicit fall-through to fail.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if ((pubkey->type == SSH_KEYTYPE_RSA) && (rsa_ext_flags)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      if (!fallback) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         * Signature request failed, it might have been due to an unexpected signature.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         * Let's retry with SHA2-based signatures disabled.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        return ssh_userauth_agent_publickey(session, username, pubkey, 1);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    /*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * Note the implicit fall-through to fail for non-RSA key types or
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     * retry-in-fallback-mode situations.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- fail:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_set_error_oom(session);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ssh_buffer_reinit(session->out_buffer);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     SSH_STRING_FREE(pubkey_s);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    session->extensions |= disabled_flags;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return SSH_AUTH_ERROR;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -941,7 +1003,7 @@ int ssh_userauth_agent(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             state->state = SSH_AGENT_STATE_AUTH;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         if (state->state == SSH_AGENT_STATE_AUTH) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            rc = ssh_userauth_agent_publickey(session, username, state->pubkey);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            rc = ssh_userauth_agent_publickey(session, username, state->pubkey, 0);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             if (rc == SSH_AUTH_AGAIN)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 return rc;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             ssh_string_free_char(state->comment);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1313,7 +1375,7 @@ int ssh_userauth_agent_pubkey(ssh_session session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     key->dsa = publickey->dsa_pub;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     key->rsa = publickey->rsa_pub;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    rc = ssh_userauth_agent_publickey(session, username, key);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    rc = ssh_userauth_agent_publickey(session, username, key, 0);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     key->dsa = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     key->rsa = NULL;
</span></pre><pre style='margin:0'>

</pre>