Displaying 3 results from an estimated 3 matches for "sshbuf_get_string_direct".
2017 Nov 14
2
OpenSSH 7.6p1 ssh-agent exiting if passed an invalid key blob
...f ((r = sshkey_from_blob(blob, blen, &key)) != 0) {
error("%s: cannot parse key blob: %s", __func__, ssh_err(r));
goto send;
}
However, in 7.6p1, this changed to:
if ((r = sshkey_froms(e->request, &key)) != 0 ||
(r = sshbuf_get_string_direct(e->request, &data, &dlen)) != 0 ||
(r = sshbuf_get_u32(e->request, &flags)) != 0)
fatal("%s: buffer error: %s", __func__, ssh_err(r));
if (flags & SSH_AGENT_OLD_SIGNATURE)
compat = SSH_BUG_SIGBLOB;
Note that the fi...
2017 Nov 15
2
OpenSSH 7.6p1 ssh-agent exiting if passed an invalid key blob
...nt.c b/ssh-agent.c
> index 9693722..0c88ab1 100644
> --- a/ssh-agent.c
> +++ b/ssh-agent.c
> @@ -272,8 +272,11 @@ process_sign_request2(SocketEntry *e)
> fatal("%s: sshbuf_new failed", __func__);
> if ((r = sshkey_froms(e->request, &key)) != 0 ||
> (r = sshbuf_get_string_direct(e->request, &data, &dlen)) != 0 ||
> - (r = sshbuf_get_u32(e->request, &flags)) != 0)
> - fatal("%s: buffer error: %s", __func__, ssh_err(r));
> + (r = sshbuf_get_u32(e->request, &flags)) != 0) {
> + error("%s: couldn't parse request...
2018 Dec 10
2
[PATCH] cleanup of global variables server/client_version_string in sshconnect.c
In sshconnect.c there are two global variables for server_version_string
client_version_string.
These are used just in a few functions and can easily be passed as
parameters.
Also, there is a strange construct, where their memory is allocated to
the global pointers, then copies of these pointers are assigned to the
kex structure. The kex_free finally frees them via cleanup of the kex