|
Lines 99-104
userauth_pubkey(struct ssh *ssh)
Link Here
|
| 99 |
(r = sshpkt_get_cstring(ssh, &pkalg, NULL)) != 0 || |
99 |
(r = sshpkt_get_cstring(ssh, &pkalg, NULL)) != 0 || |
| 100 |
(r = sshpkt_get_string(ssh, &pkblob, &blen)) != 0) |
100 |
(r = sshpkt_get_string(ssh, &pkblob, &blen)) != 0) |
| 101 |
fatal("%s: parse request failed: %s", __func__, ssh_err(r)); |
101 |
fatal("%s: parse request failed: %s", __func__, ssh_err(r)); |
|
|
102 |
|
| 103 |
if (log_level_get() >= SYSLOG_LEVEL_DEBUG2) { |
| 104 |
char *keystring; |
| 105 |
struct sshbuf *pkbuf; |
| 106 |
|
| 107 |
if ((pkbuf = sshbuf_from(pkblob, blen)) == NULL) |
| 108 |
fatal("%s: sshbuf_from failed", __func__); |
| 109 |
if ((keystring = sshbuf_dtob64(pkbuf)) == NULL) |
| 110 |
fatal("%s: sshbuf_dtob64 failed", __func__); |
| 111 |
debug2("%s: %s user %s %s public key %s %s", __func__, |
| 112 |
authctxt->valid ? "valid" : "invalid", authctxt->user, |
| 113 |
have_sig ? "attempting" : "querying", pkalg, keystring); |
| 114 |
sshbuf_free(pkbuf); |
| 115 |
free(keystring); |
| 116 |
} |
| 117 |
|
| 102 |
pktype = sshkey_type_from_name(pkalg); |
118 |
pktype = sshkey_type_from_name(pkalg); |
| 103 |
if (pktype == KEY_UNSPEC) { |
119 |
if (pktype == KEY_UNSPEC) { |
| 104 |
/* this is perfectly legal */ |
120 |
/* this is perfectly legal */ |