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>