g10: Simplify get_seckey_byname: it was never called with NAME not NULL.
[gnupg.git] / g10 / seskey.c
index e7f4997..e79faf8 100644 (file)
@@ -26,7 +26,6 @@
 
 #include "gpg.h"
 #include "util.h"
-#include "cipher.h"
 #include "options.h"
 #include "main.h"
 #include "i18n.h"
@@ -83,7 +82,7 @@ encode_session_key (int openpgp_pk_algo, DEK *dek, unsigned int nbits)
   u16 csum;
   gcry_mpi_t a;
 
-  if (DBG_CIPHER)
+  if (DBG_CRYPTO)
     log_debug ("encode_session_key: encoding %d byte DEK", dek->keylen);
 
   csum = 0;
@@ -117,7 +116,7 @@ encode_session_key (int openpgp_pk_algo, DEK *dek, unsigned int nbits)
       memset (frame+n, i, i); /* Use it as the value of each padded byte.  */
       assert (n+i == nframe);
 
-      if (DBG_CIPHER)
+      if (DBG_CRYPTO)
         log_debug ("encode_session_key: "
                    "[%d] %02x  %02x %02x ...  %02x %02x %02x\n",
                    (int) nframe, frame[0], frame[1], frame[2],
@@ -256,20 +255,20 @@ gcry_mpi_t
 encode_md_value (PKT_public_key *pk, gcry_md_hd_t md, int hash_algo)
 {
   gcry_mpi_t frame;
-  int pkalgo;
   size_t mdlen;
 
   assert (hash_algo);
   assert (pk);
 
-  pkalgo = map_pk_openpgp_to_gcry (pk->pubkey_algo);
-
-  if (pkalgo == GCRY_PK_ECDSA && openpgp_oid_is_ed25519 (pk->pkey[0]))
+  if (pk->pubkey_algo == PUBKEY_ALGO_EDDSA)
     {
+      /* EdDSA signs data of arbitrary length.  Thus no special
+         treatment is required.  */
       frame = gcry_mpi_set_opaque_copy (NULL, gcry_md_read (md, hash_algo),
                                         8*gcry_md_get_algo_dlen (hash_algo));
     }
-  else if (pkalgo == GCRY_PK_DSA || pkalgo == GCRY_PK_ECDSA)
+  else if (pk->pubkey_algo == PUBKEY_ALGO_DSA
+           || pk->pubkey_algo == PUBKEY_ALGO_ECDSA)
     {
       /* It's a DSA signature, so find out the size of q.  */
 
@@ -277,11 +276,10 @@ encode_md_value (PKT_public_key *pk, gcry_md_hd_t md, int hash_algo)
 
       /* pkey[1] is Q for ECDSA, which is an uncompressed point,
          i.e.  04 <x> <y>  */
-      if (pkalgo == GCRY_PK_ECDSA)
+      if (pk->pubkey_algo == PUBKEY_ALGO_ECDSA)
         qbits = ecdsa_qbits_from_Q (qbits);
 
       /* Make sure it is a multiple of 8 bits. */
-
       if ((qbits%8))
        {
          log_error(_("DSA requires the hash length to be a"
@@ -298,7 +296,8 @@ encode_md_value (PKT_public_key *pk, gcry_md_hd_t md, int hash_algo)
       if (qbits < 160)
        {
          log_error (_("%s key %s uses an unsafe (%zu bit) hash\n"),
-                     gcry_pk_algo_name (pkalgo), keystr_from_pk (pk), qbits);
+                     openpgp_pk_algo_name (pk->pubkey_algo),
+                     keystr_from_pk (pk), qbits);
          return NULL;
        }
 
@@ -306,7 +305,7 @@ encode_md_value (PKT_public_key *pk, gcry_md_hd_t md, int hash_algo)
       /* ECDSA 521 is special has it is larger than the largest hash
          we have (SHA-512).  Thus we chnage the size for further
          processing to 512.  */
-      if (pkalgo == GCRY_PK_ECDSA && qbits > 512)
+      if (pk->pubkey_algo == PUBKEY_ALGO_ECDSA && qbits > 512)
         qbits = 512;
 
       /* Check if we're too short.  Too long is safe as we'll
@@ -316,8 +315,8 @@ encode_md_value (PKT_public_key *pk, gcry_md_hd_t md, int hash_algo)
        {
          log_error (_("%s key %s requires a %zu bit or larger hash "
                        "(hash is %s)\n"),
-                     gcry_pk_algo_name (pkalgo),
-                     keystr_from_pk(pk), qbits,
+                     openpgp_pk_algo_name (pk->pubkey_algo),
+                     keystr_from_pk (pk), qbits,
                      gcry_md_algo_name (hash_algo));
          return NULL;
        }