- Add the contents of contrib/smime.rc to your .muttrc. Don't worry about
changing the smime_sign_as line at this point -- you'll change it later.
+- Run 'smime_keys init'.
+
- Download and install OpenSSL.
- Get yourself a certificate. (You can get one for free from www.thawte.com,
- You probably want to import the trusted roots in
contrib/ca-bundle.crt. This makes you trust anything that was ultimately
- signed by one of them. You can use "smime_keys.pl add_root" to do so, or
+ signed by one of them. You can use "smime_keys add_root" to do so, or
just copy ca-bundle.crt into the place you point mutt's smime_ca_location
variable to.
if (m->type & TYPEAPPLICATION && m->subtype)
{
- if (!mutt_strcasecmp (m->subtype, "x-pkcs7-mime"))
+ /* S/MIME MIME types don't need x- anymore, see RFC2311 */
+ if (!mutt_strcasecmp (m->subtype, "x-pkcs7-mime") ||
+ !mutt_strcasecmp (m->subtype, "pkcs7-mime"))
{
if ((t = mutt_get_parameter ("smime-type", m->parameter)))
{
return (SMIMESIGN|SMIMEOPAQUE);
else return 0;
}
+ /* Netscape 4.7 uses
+ * Content-Description: S/MIME Encrypted Message
+ * instead of Content-Type parameter
+ */
+ if (!mutt_strcasecmp (m->description, "S/MIME Encrypted Message"))
+ return SMIMEENCRYPT;
complain = 1;
}
else if (mutt_strcasecmp (m->subtype, "octet-stream"))
truststate = N_("Unknown ");
}
if (this.public)
- snprintf(s, l, " 0x%.8X%i %s %-35.35s %s", this.hash, this.suffix, truststate, this.email, this.nick);
+ snprintf(s, l, " 0x%.8X.%i %s %-35.35s %s", this.hash, this.suffix, truststate, this.email, this.nick);
else
- snprintf(s, l, " 0x%.8X%i %-35.35s %s", this.hash, this.suffix, this.email, this.nick);
+ snprintf(s, l, " 0x%.8X.%i %-35.35s %s", this.hash, this.suffix, this.email, this.nick);
}