[BACK]Return to ssh-ed25519-sk.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/ssh-ed25519-sk.c between version 1.12 and 1.13

version 1.12, 2022/10/28 00:41:52 version 1.13, 2022/10/28 00:43:08
Line 92 
Line 92 
         return 0;          return 0;
 }  }
   
 int  static int
 ssh_ed25519_sk_verify(const struct sshkey *key,  ssh_ed25519_sk_verify(const struct sshkey *key,
     const u_char *signature, size_t signaturelen,      const u_char *sig, size_t siglen,
     const u_char *data, size_t datalen, u_int compat,      const u_char *data, size_t dlen, const char *alg, u_int compat,
     struct sshkey_sig_details **detailsp)      struct sshkey_sig_details **detailsp)
 {  {
         struct sshbuf *b = NULL;          struct sshbuf *b = NULL;
Line 120 
Line 120 
         if (key == NULL ||          if (key == NULL ||
             sshkey_type_plain(key->type) != KEY_ED25519_SK ||              sshkey_type_plain(key->type) != KEY_ED25519_SK ||
             key->ed25519_pk == NULL ||              key->ed25519_pk == NULL ||
             signature == NULL || signaturelen == 0)              sig == NULL || siglen == 0)
                 return SSH_ERR_INVALID_ARGUMENT;                  return SSH_ERR_INVALID_ARGUMENT;
   
         if ((b = sshbuf_from(signature, signaturelen)) == NULL)          if ((b = sshbuf_from(sig, siglen)) == NULL)
                 return SSH_ERR_ALLOC_FAIL;                  return SSH_ERR_ALLOC_FAIL;
         if (sshbuf_get_cstring(b, &ktype, NULL) != 0 ||          if (sshbuf_get_cstring(b, &ktype, NULL) != 0 ||
             sshbuf_get_string_direct(b, &sigblob, &len) != 0 ||              sshbuf_get_string_direct(b, &sigblob, &len) != 0 ||
Line 154 
Line 154 
         }          }
         if (ssh_digest_memory(SSH_DIGEST_SHA256, key->sk_application,          if (ssh_digest_memory(SSH_DIGEST_SHA256, key->sk_application,
             strlen(key->sk_application), apphash, sizeof(apphash)) != 0 ||              strlen(key->sk_application), apphash, sizeof(apphash)) != 0 ||
             ssh_digest_memory(SSH_DIGEST_SHA256, data, datalen,              ssh_digest_memory(SSH_DIGEST_SHA256, data, dlen,
             msghash, sizeof(msghash)) != 0) {              msghash, sizeof(msghash)) != 0) {
                 r = SSH_ERR_INVALID_ARGUMENT;                  r = SSH_ERR_INVALID_ARGUMENT;
                 goto out;                  goto out;
Line 228 
Line 228 
         /* .ssh_deserialize_public = */ ssh_ed25519_sk_deserialize_public,          /* .ssh_deserialize_public = */ ssh_ed25519_sk_deserialize_public,
         /* .generate = */       NULL,          /* .generate = */       NULL,
         /* .copy_public = */    ssh_ed25519_sk_copy_public,          /* .copy_public = */    ssh_ed25519_sk_copy_public,
           /* .sign = */           NULL,
           /* .verify = */         ssh_ed25519_sk_verify,
 };  };
   
 const struct sshkey_impl sshkey_ed25519_sk_impl = {  const struct sshkey_impl sshkey_ed25519_sk_impl = {

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13