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

Diff for /src/usr.bin/ssh/ssh-ecdsa.c between version 1.17 and 1.18

version 1.17, 2022/10/28 00:35:40 version 1.18, 2022/10/28 00:36:31
Line 61 
Line 61 
         k->ecdsa = NULL;          k->ecdsa = NULL;
 }  }
   
   static int
   ssh_ecdsa_equal(const struct sshkey *a, const struct sshkey *b)
   {
           const EC_GROUP *grp_a, *grp_b;
           const EC_POINT *pub_a, *pub_b;
   
           if (a->ecdsa == NULL || b->ecdsa == NULL)
                   return 0;
           if ((grp_a = EC_KEY_get0_group(a->ecdsa)) == NULL ||
               (grp_b = EC_KEY_get0_group(b->ecdsa)) == NULL)
                   return 0;
           if ((pub_a = EC_KEY_get0_public_key(a->ecdsa)) == NULL ||
               (pub_b = EC_KEY_get0_public_key(b->ecdsa)) == NULL)
                   return 0;
           if (EC_GROUP_cmp(grp_a, grp_b, NULL) != 0)
                   return 0;
           if (EC_POINT_cmp(grp_a, pub_a, pub_b, NULL) != 0)
                   return 0;
           return 1;
   }
   
 /* ARGSUSED */  /* ARGSUSED */
 int  int
 ssh_ecdsa_sign(const struct sshkey *key, u_char **sigp, size_t *lenp,  ssh_ecdsa_sign(const struct sshkey *key, u_char **sigp, size_t *lenp,
Line 213 
Line 234 
         return ret;          return ret;
 }  }
   
 static const struct sshkey_impl_funcs sshkey_ecdsa_funcs = {  /* NB. not static; used by ECDSA-SK */
   const struct sshkey_impl_funcs sshkey_ecdsa_funcs = {
         /* .size = */           ssh_ecdsa_size,          /* .size = */           ssh_ecdsa_size,
         /* .alloc = */          NULL,          /* .alloc = */          NULL,
         /* .cleanup = */        ssh_ecdsa_cleanup,          /* .cleanup = */        ssh_ecdsa_cleanup,
           /* .equal = */          ssh_ecdsa_equal,
 };  };
   
 const struct sshkey_impl sshkey_ecdsa_nistp256_impl = {  const struct sshkey_impl sshkey_ecdsa_nistp256_impl = {

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.18