<<< Date Index >>>     <<< Thread Index >>>

Re: [Mutt] #2901: wrong parameter micalg with mutt 1.5.15 and gpgme



#2901: wrong parameter micalg with mutt 1.5.15 and gpgme

Comment (by lespocky):

 I looked around a bit to find hints to solve this problem. First is
 RFC3156 saying the following:

    The "micalg" parameter for the "application/pgp-signature" protocol
    MUST contain exactly one hash-symbol of the format "pgp-<hash-
    identifier>", where <hash-identifier> identifies the Message
    Integrity Check (MIC) algorithm used to generate the signature.
    Hash-symbols are constructed from the text names registered in RFC2440
 or
    according to the mechanism defined in that document by converting the
    text name to lower case and prefixing it with the four characters
    "pgp-".

    Currently defined values are "pgp-md5", "pgp-sha1", "pgp-ripemd160",
    "pgp-md2", "pgp-tiger192", and "pgp-haval-5-160".

 Second is what GPGME (1.1.4) returns and what is put into micalg by mutt
 (1.5.15) in ''crypt-gpgme.c'' in row 759--780. This is in gpgme.c in rows
 535--582:

 {{{
 const char *
 gpgme_hash_algo_name (gpgme_hash_algo_t algo)
 {
   switch (algo)
     {
     case GPGME_MD_MD5:
       return "MD5";

     case GPGME_MD_SHA1:
       return "SHA1";

     case GPGME_MD_RMD160:
       return "RIPEMD160";

     case GPGME_MD_MD2:
       return "MD2";

     case GPGME_MD_TIGER:
       return "TIGER192";

     case GPGME_MD_HAVAL:
       return "HAVAL";

     case GPGME_MD_SHA256:
       return "SHA256";

     case GPGME_MD_SHA384:
       return "SHA384";

     case GPGME_MD_SHA512:
       return "SHA512";

     case GPGME_MD_MD4:
       return "MD4";

     case GPGME_MD_CRC32:
       return "CRC32";

     case GPGME_MD_CRC32_RFC1510:
       return "CRC32RFC1510";

     case GPGME_MD_CRC24_RFC2440:
       return "CRC24RFC2440";

     default:
       return NULL;
     }
 }
 }}}

 This should be somehow translated.

-- 
Ticket URL: <http://dev.mutt.org/trac/ticket/2901#comment:2>