indicate missing keys and expired sigs/keys in mime view column
[claws.git] / src / rfc2015.c
index 7074a5e43bc6f64cf3570cd6323c6ef834a4c0b6..4c2cc42a18d0cdb1cfb22ecd594919aada5fbcce 100644 (file)
@@ -36,7 +36,7 @@
 #include "intl.h"
 #include "procmime.h"
 #include "procheader.h"
-#include "common/base64.h"
+#include "base64.h"
 #include "uuencode.h"
 #include "unmime.h"
 #include "codeconv.h"
@@ -223,7 +223,6 @@ sig_status_for_key(GString *str, GpgmeCtx ctx, GpgmeSigStat status,
 {
        gint idx = 0;
        const char *uid;
-       unsigned long exp_time;
 
        uid = gpgme_key_get_string_attr (key, GPGME_ATTR_USERID, NULL, idx);
        if (uid == NULL) {
@@ -412,6 +411,10 @@ leave:
 
     g_free (partinfo->sigstatus);
     partinfo->sigstatus = g_strdup (result);
+    partinfo->sig_ok = (status == GPGME_SIG_STAT_GOOD);
+    partinfo->sig_unknown = (status == GPGME_SIG_STAT_NOKEY);
+    partinfo->sig_expired = (status == GPGME_SIG_STAT_GOOD_EXP);
+    partinfo->key_expired = (status == GPGME_SIG_STAT_GOOD_EXPKEY);
 
     gpgme_data_release (sig);
     gpgme_data_release (text);
@@ -563,7 +566,7 @@ void rfc2015_check_signature (MimeInfo *mimeinfo, FILE *fp)
 
 int rfc2015_is_encrypted (MimeInfo *mimeinfo)
 {
-    if (!mimeinfo)
+    if (!mimeinfo || mimeinfo->mime_type != MIME_MULTIPART)
         return 0;
     if (g_strcasecmp (mimeinfo->content_type, "multipart/encrypted"))
         return 0;