summaryrefslogtreecommitdiff
path: root/mail/mutt-devel/files
diff options
context:
space:
mode:
Diffstat (limited to 'mail/mutt-devel/files')
-rw-r--r--mail/mutt-devel/files/extra-maildir-patch-Makefile.am10
-rw-r--r--mail/mutt-devel/files/extra-maildir-patch-globals.h10
-rw-r--r--mail/mutt-devel/files/extra-maildir-patch-init.h18
-rw-r--r--mail/mutt-devel/files/extra-maildir-patch-mh.c111
-rw-r--r--mail/mutt-devel/files/extra-maildir-patch-mutt.h44
-rw-r--r--mail/mutt-devel/files/extra-patch-pgp-outlook67
-rw-r--r--mail/mutt-devel/files/maildir_clean_dir.c120
-rw-r--r--mail/mutt-devel/files/maildir_clean_dir.h42
-rw-r--r--mail/mutt-devel/files/patch-0528
-rw-r--r--mail/mutt-devel/files/patch-Makefile.am24
-rw-r--r--mail/mutt-devel/files/patch-smime-sender67
-rw-r--r--mail/mutt-devel/files/smime.h184
12 files changed, 332 insertions, 393 deletions
diff --git a/mail/mutt-devel/files/extra-maildir-patch-Makefile.am b/mail/mutt-devel/files/extra-maildir-patch-Makefile.am
deleted file mode 100644
index 0ec79260aa52..000000000000
--- a/mail/mutt-devel/files/extra-maildir-patch-Makefile.am
+++ /dev/null
@@ -1,10 +0,0 @@
---- Makefile.am.orig Wed Feb 21 02:42:38 2001
-+++ Makefile.am Wed Feb 21 02:42:20 2001
-@@ -29,6 +29,7 @@
- commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
- edit.c enter.c flags.c init.c filter.c from.c getdomain.c \
- handler.c hash.c hdrline.c headers.c help.c hook.c keymap.c \
-+ maildir_clean_dir.c \
- main.c mbox.c menu.c mh.c mx.c pager.c parse.c pattern.c \
- postpone.c query.c recvattach.c recvcmd.c \
- rfc822.c rfc1524.c rfc2047.c rfc2231.c \
diff --git a/mail/mutt-devel/files/extra-maildir-patch-globals.h b/mail/mutt-devel/files/extra-maildir-patch-globals.h
deleted file mode 100644
index f934a27b9235..000000000000
--- a/mail/mutt-devel/files/extra-maildir-patch-globals.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- globals.h.orig Wed Feb 21 01:20:19 2001
-+++ globals.h Wed Feb 21 01:23:54 2001
-@@ -123,6 +123,7 @@
- WHERE unsigned short Counter INITVAL (0);
-
- WHERE short HistSize;
-+WHERE short MaildirTmpClnInterval;
- WHERE short PagerContext;
- WHERE short PagerIndexLines;
- WHERE short PopPort;
diff --git a/mail/mutt-devel/files/extra-maildir-patch-init.h b/mail/mutt-devel/files/extra-maildir-patch-init.h
deleted file mode 100644
index 8a549c58bb0f..000000000000
--- a/mail/mutt-devel/files/extra-maildir-patch-init.h
+++ /dev/null
@@ -1,18 +0,0 @@
---- init.h.orig Tue Jul 18 04:46:46 2000
-+++ init.h Tue Feb 20 20:46:56 2001
-@@ -860,6 +860,15 @@
- { "mailcap_sanitize", DT_BOOL, R_NONE, OPTMAILCAPSANITIZE, 1 },
- /*
- ** .pp
-+ ** This variable specifies that maildir tmp directories
-+ ** should have 36 hours non-accessed files deleted
-+ ** This is measured in minutes, hence 36*60 minutes (36 hours)
-+ ** (default: off)
-+ */
-+ { "maildir_tmp_clean", DT_BOOL, R_NONE, OPTCLEANMTMP, 0 },
-+ { "maildir_tmp_clean_interval", DT_NUM, R_NONE, UL &MaildirTmpClnInterval, 36*60 },
-+ /*
-+ ** .pp
- ** If set, mutt will restrict possible characters in mailcap % expandos
- ** to a well-defined set of safe characters. This is the safe setting,
- ** but we are not sure it doesn't break some more advanced MIME stuff.
diff --git a/mail/mutt-devel/files/extra-maildir-patch-mh.c b/mail/mutt-devel/files/extra-maildir-patch-mh.c
deleted file mode 100644
index 7c8febeccc21..000000000000
--- a/mail/mutt-devel/files/extra-maildir-patch-mh.c
+++ /dev/null
@@ -1,111 +0,0 @@
---- mh.c.orig Fri Nov 9 10:28:55 2001
-+++ mh.c Tue Dec 4 16:06:14 2001
-@@ -29,6 +29,12 @@
- #include "buffy.h"
- #include "sort.h"
-
-+/*
-+ * Additional maildir handling routines so that mutt abides
-+ * by the maildir specification
-+ */
-+#include "maildir_clean_dir.h"
-+
- #include <sys/stat.h>
- #include <dirent.h>
- #include <limits.h>
-@@ -41,6 +47,8 @@
- #include <errno.h>
- #include <string.h>
-
-+#define MACRO_MAILDIR_TMP_CLN_INTERVAL ((MaildirTmpClnInterval>0) ? (MaildirTmpClnInterval*60) : (MAILDIR_TMP_TIME_LIMIT))
-+
- struct maildir
- {
- HEADER *h;
-@@ -520,6 +528,11 @@
-
- if(ctx->magic == M_MAILDIR)
- {
-+ if(option (OPTCLEANMTMP)) {
-+ snprintf(buf, sizeof(buf), "%s/%s", ctx->path, "tmp");
-+ if(stat (buf, &st) == 0)
-+ ctx->mtime_tmp = st.st_mtime;
-+ }
- snprintf(buf, sizeof(buf), "%s/%s", ctx->path, "cur");
- if(stat (buf, &st) == 0)
- ctx->mtime_cur = st.st_mtime;
-@@ -750,8 +763,10 @@
- {
- /* maildir looks sort of like MH, except that there are two subdirectories
- * of the main folder path from which to read messages
-+ * and one to clean up
- */
-- if (mh_read_dir (ctx, "new") == -1 || mh_read_dir (ctx, "cur") == -1)
-+ if (mh_read_dir (ctx, "new") == -1 || mh_read_dir (ctx, "cur") == -1 ||
-+ maildir_clean_dir (ctx, "tmp", (MACRO_MAILDIR_TMP_CLN_INTERVAL)) == -1)
- return (-1);
-
- return 0;
-@@ -850,8 +865,6 @@
- return 0;
- }
-
--
--
- /*
- * Commit a message to a maildir folder.
- *
-@@ -1246,6 +1259,9 @@
- struct maildir **last;
- HASH *fnames;
- int i, j;
-+ struct stat st_tmp;
-+ short aged_tmp = 0;
-+ time_t rightnow = 0;
-
- if(!option (OPTCHECKNEW))
- return 0;
-@@ -1290,6 +1306,15 @@
- if(stat(buf, &st_cur) == -1) /* XXX - name is bad. */
- modified = 1;
-
-+ if (option (OPTCLEANMTMP)) {
-+ snprintf(buf, sizeof(buf), "%s/tmp", ctx->path);
-+ if (stat(buf, &st_tmp) == -1)
-+ aged_tmp = 1;
-+ if ((rightnow = time(NULL)) == ((time_t) -1))
-+ return -1; /* can't get time ? */
-+ } else {
-+ aged_tmp = 1;
-+ }
- }
-
- if(!modified && ctx->magic == M_MAILDIR && st_cur.st_mtime > ctx->mtime_cur)
-@@ -1301,12 +1326,18 @@
- if(modified || (ctx->magic == M_MAILDIR && st.st_mtime > ctx->mtime))
- have_new = 1;
-
-+ aged_tmp = (!aged_tmp && ctx->magic == M_MAILDIR &&
-+ ((st_tmp.st_mtime > ctx->mtime_tmp) || (ctx->atime_tmp &&
-+ (difftime (rightnow,ctx->atime_tmp) > (MACRO_MAILDIR_TMP_CLN_INTERVAL) )))) ? 1 : 0;
-+
- if(!modified && !have_new)
- return 0;
-
- ctx->mtime_cur = st_cur.st_mtime;
- ctx->mtime = st.st_mtime;
-
-+ if(aged_tmp)
-+ ctx->mtime_tmp = st_tmp.st_mtime;
- #if 0
- if(Sort != SORT_ORDER)
- {
-@@ -1328,6 +1359,8 @@
- maildir_parse_dir(ctx, &last, "new", NULL);
- if(modified)
- maildir_parse_dir(ctx, &last, "cur", NULL);
-+ if(aged_tmp)
-+ maildir_clean_dir(ctx, "tmp", (MACRO_MAILDIR_TMP_CLN_INTERVAL));
- }
- else if(ctx->magic == M_MH)
- {
diff --git a/mail/mutt-devel/files/extra-maildir-patch-mutt.h b/mail/mutt-devel/files/extra-maildir-patch-mutt.h
deleted file mode 100644
index 33d631e710a7..000000000000
--- a/mail/mutt-devel/files/extra-maildir-patch-mutt.h
+++ /dev/null
@@ -1,44 +0,0 @@
---- mutt.h.orig Wed Feb 21 02:33:48 2001
-+++ mutt.h Wed Feb 21 02:34:30 2001
-@@ -16,6 +16,9 @@
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
- */
-
-+#ifndef _MUTT_H
-+# define _MUTT_H
-+
- #include "config.h"
-
- #include <stdio.h>
-@@ -42,6 +45,8 @@
- # define MUTT_VERSION (VERSION)
- #endif
-
-+#define MAILDIR_TMP_TIME_LIMIT (36*60*60) /* seconds */
-+
- /* nifty trick I stole from ELM 2.5alpha. */
- #ifdef MAIN_C
- #define WHERE
-@@ -278,6 +283,7 @@
- OPTBEEPNEW,
- OPTBOUNCEDELIVERED,
- OPTCHECKNEW,
-+ OPTCLEANMTMP,
- OPTCOLLAPSEUNREAD,
- OPTCONFIRMAPPEND,
- OPTCONFIRMCREATE,
-@@ -639,6 +645,8 @@
- FILE *fp;
- time_t mtime;
- time_t mtime_cur; /* used with maildir folders */
-+ time_t mtime_tmp; /* these 2 used with maildir folders */
-+ time_t atime_tmp;
- off_t size;
- off_t vsize;
- char *pattern; /* limit pattern string */
-@@ -716,3 +724,5 @@
- #include "protos.h"
- #include "lib.h"
- #include "globals.h"
-+
-+#endif /* _MUTT_H */
diff --git a/mail/mutt-devel/files/extra-patch-pgp-outlook b/mail/mutt-devel/files/extra-patch-pgp-outlook
index f18d58aab7d6..a6f589ddb59d 100644
--- a/mail/mutt-devel/files/extra-patch-pgp-outlook
+++ b/mail/mutt-devel/files/extra-patch-pgp-outlook
@@ -20,17 +20,16 @@
OPT_PGPTRADITIONAL, /* create old-style PGP messages */
+ OPT_PGPOUTLOOK, /* Create even older broken outlook compatible messages */
#endif
---- pgp.c.orig Mon Feb 12 08:55:21 2001
-+++ pgp.c Sat Feb 24 18:11:40 2001
-@@ -1501,12 +1501,20 @@
+--- pgp.c.orig Thu Apr 4 08:49:50 2002
++++ pgp.c Sun May 5 13:57:57 2002
+@@ -1399,11 +1399,20 @@
b->encoding = ENC7BIT;
-- b->type = TYPEAPPLICATION;
-- b->subtype = safe_strdup ("pgp");
--
-- mutt_set_parameter ("format", "text", &b->parameter);
-- mutt_set_parameter ("x-action", flags & PGPENCRYPT ? "encrypt" : "sign",
+- b->type = TYPETEXT;
+- b->subtype = safe_strdup ("plain");
+-
+- mutt_set_parameter ("x-action", flags & ENCRYPT ? "pgp-encrypted" : "pgp-signed",
- &b->parameter);
+ /* Outlook seems to work by scanning the message itself for PGP information, */
+ /* not the headers. If the headers are anything but text/plain, it will */
@@ -43,34 +42,36 @@
+ b->subtype = safe_strdup ("pgp");
+
+ mutt_set_parameter ("format", "text", &b->parameter);
-+ mutt_set_parameter ("x-action", flags & PGPENCRYPT ? "encrypt" : "sign",
++ mutt_set_parameter ("x-action", flags & ENCRYPT ? "pgp-encrypted" : "pgp-signed",
+ &b->parameter);
+ }
-
- b->filename = safe_strdup (pgpoutfile);
+ mutt_set_parameter ("charset", send_charset, &b->parameter);
-@@ -1559,8 +1567,13 @@
- {
- if ((i = query_quadoption (OPT_PGPTRADITIONAL, _("Create an application/pgp message?"))) == -1)
- return -1;
-- else if (i == M_YES)
-+ else if (i == M_YES) {
- traditional = 1;
-+ if ((i = query_quadoption (OPT_PGPOUTLOOK, _("Create an Outlook compatible message?"))) == -1)
-+ return -1;
-+ else if (i == M_YES)
-+ flags |= PGPOUTLOOK;
-+ }
- }
-
- mutt_message _("Invoking PGP...");
---- pgplib.h.orig Mon Feb 12 08:56:00 2001
-+++ pgplib.h Sat Feb 24 18:12:25 2001
-@@ -23,6 +23,7 @@
- #define PGPSIGN (1 << 1)
- #define PGPKEY (1 << 2)
- #define PGPGOODSIGN (1 << 3)
-+#define PGPOUTLOOK (1 << 4)
+ b->filename = safe_strdup (pgpoutfile);
+--- pgplib.h.orig Sun Feb 3 10:34:23 2002
++++ pgplib.h Sun May 5 14:01:30 2002
+@@ -25,6 +25,7 @@
+ #define PGPSIGN (APPLICATION_PGP | SIGN)
+ #define PGPGOODSIGN (APPLICATION_PGP | GOODSIGN)
+ #define PGPKEY (APPLICATION_PGP | (1 << 3))
++#define PGPOUTLOOK (APPLICATION_PGP | (1 << 4))
#define KEYFLAG_CANSIGN (1 << 0)
#define KEYFLAG_CANENCRYPT (1 << 1)
+--- crypt.c.orig Tue Mar 26 23:23:11 2002
++++ crypt.c Sun May 5 13:53:52 2002
+@@ -184,8 +184,13 @@
+ {
+ if ((i = query_quadoption (OPT_PGPTRADITIONAL, _("Create an inline PGP message?"))) == -1)
+ return -1;
+- else if (i == M_YES)
++ else if (i == M_YES) {
+ traditional = 1;
++ if ((i = query_quadoption (OPT_PGPOUTLOOK, _("Create an Outlook compatible message?"))) == -1)
++ return -1;
++ else if (i == M_YES)
++ flags |= PGPOUTLOOK;
++ }
+ }
+ if (traditional)
+ {
diff --git a/mail/mutt-devel/files/maildir_clean_dir.c b/mail/mutt-devel/files/maildir_clean_dir.c
deleted file mode 100644
index 09047f40b75e..000000000000
--- a/mail/mutt-devel/files/maildir_clean_dir.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Copyright (c) 2000, 2001 Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Author nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $Header: /home/ncvs/work/ports/mutt-devel/files/Attic/maildir_clean_dir.c,v 1.1.4.1 2002/05/16 11:44:06 ust Exp $
- */
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <dirent.h>
-#include <limits.h>
-#include <stdio.h>
-#include <time.h>
-
-#include "config.h"
-#include "mutt.h"
-#include "mx.h"
-/*
-#include "init,h"
-*/
-#include "lib.h"
-
-# ifndef HAVE_SNPRINTF
-extern int snprintf (char *, size_t, const char *, ...);
-# endif
-
-time_t maildir_atime_entry(CONTEXT *ctx, const char *subdir, const char *fname, time_t *last_access)
-{
- char buf[_POSIX_PATH_MAX];
- struct stat st;
-
- if(subdir)
- snprintf(buf, sizeof(buf), "%s/%s/%s", ctx->path, subdir, fname);
- else
- snprintf(buf, sizeof(buf), "%s/%s", ctx->path, fname);
-
- if (stat(buf, &st) == 0) {
- (*last_access) = st.st_atime;
- return 0;
- } else
- return -1;
-}
-
-int maildir_clean_dir(CONTEXT *ctx, const char *subdir, unsigned long time_limit)
-{
- DIR *dirp;
- struct dirent *de;
- char buf[_POSIX_PATH_MAX];
- time_t rightnow, last_access, llast_access;
-
- if(!option (OPTCLEANMTMP))
- return 0;
-
- if(subdir)
- snprintf(buf, sizeof(buf), "%s/%s", ctx->path, subdir);
- else
- strfcpy(buf, ctx->path, sizeof(buf));
-
- if ((dirp = opendir(buf)) == NULL)
- return -1; /* is not there a dir ? */
-
- if ((rightnow = time(NULL)) == ((time_t) -1))
- return -1; /* can't get time ? */
-
- llast_access = rightnow;
-
- while ((de = readdir (dirp)) != NULL) {
- /* I am not dealing with validity of messages, I'll remove any given visible messages */
-/*
- * This is a concern to both new and cur, not tmp
- if (ctx->magic == M_MAILDIR && *de->d_name == '.')
- continue;
-*/
-
- dprint(2, (debugfile, "%s:%d: stating %s\n", __FILE__, __LINE__, de->d_name));
- if (!maildir_atime_entry(ctx, subdir, de->d_name, &last_access)) {
- if (difftime(last_access,rightnow) > 0)
- continue; /* I neither know how to handle this right now nor care for the time being */
-
- if (difftime(rightnow,last_access) > time_limit) {
- if(subdir)
- snprintf(buf, sizeof(buf), "%s/%s/%s", ctx->path, subdir, de->d_name);
- else
- snprintf(buf, sizeof(buf), "%s/%s", ctx->path, de->d_name);
-
- mutt_unlink (buf);
- } else
- (llast_access = (llast_access > last_access) ? last_access : llast_access);
- }
- }
-
- ctx->atime_tmp = (llast_access == rightnow) ? 0 : llast_access;
-
- closedir(dirp);
- return 0;
-}
diff --git a/mail/mutt-devel/files/maildir_clean_dir.h b/mail/mutt-devel/files/maildir_clean_dir.h
deleted file mode 100644
index 353bc09c51f4..000000000000
--- a/mail/mutt-devel/files/maildir_clean_dir.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2000, 2001 Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Author nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $Header: /home/ncvs/work/ports/mutt-devel/files/Attic/maildir_clean_dir.h,v 1.1.4.1 2002/05/16 11:44:06 ust Exp $
- */
-
-#ifndef _MAILDIR_CLEAN_DIR_H
-# define _MAILDIR_CLEAN_DIR_H
-
-#include <time.h>
-
-#include "mutt.h"
-
-extern time_t maildir_atime_entry(CONTEXT *, const char *, const char *, time_t *);
-extern int maildir_clean_dir(CONTEXT *, const char *, unsigned long);
-
-#endif /* _MAILDIR_CLEAN_DIR_H */
diff --git a/mail/mutt-devel/files/patch-05 b/mail/mutt-devel/files/patch-05
index 13a52d9daa40..ded7b305c35a 100644
--- a/mail/mutt-devel/files/patch-05
+++ b/mail/mutt-devel/files/patch-05
@@ -63,17 +63,35 @@
{
case -1: /* abort - don't resort */
return -1;
---- compose.c.orig Mon Feb 12 18:02:38 2001
-+++ compose.c Fri Mar 30 17:04:09 2001
-@@ -130,7 +130,7 @@
+--- compose.c.orig Tue Mar 26 23:03:26 2002
++++ compose.c Thu May 2 09:21:11 2002
+@@ -173,7 +173,7 @@
char input_signas[SHORT_STRING];
- switch (mutt_multi_choice (_("(e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "),
+ switch (mutt_multi_choice (_("PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (f)orget it? "),
- _("esabf")))
+ N_("esabf")))
{
case 1: /* (e)ncrypt */
- bits |= PGPENCRYPT;
+ msg->security |= PGPENCRYPT;
+@@ -229,7 +229,7 @@
+ char *p;
+
+ switch (mutt_multi_choice (_("S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (f)orget it? "),
+- _("ewsabf")))
++ N_("ewsabf")))
+ {
+ case 1: /* (e)ncrypt */
+ msg->security |= SMIMEENCRYPT;
+@@ -239,7 +239,7 @@
+ msg->security |= SMIMEENCRYPT;
+ switch (mutt_multi_choice (_("1: DES, 2: Tripple-DES, 3: RC2-40,"
+ " 4: RC2-64, 5: RC2-128, or (f)orget it? "),
+- _("12345f"))) {
++ N_("12345f"))) {
+ case 1:
+ mutt_str_replace (&SmimeCryptAlg, "des");
+ break;
--- muttlib.c.orig Sun Apr 9 14:39:02 2000
+++ muttlib.c Fri May 12 11:26:58 2000
@@ -671,7 +671,7 @@
diff --git a/mail/mutt-devel/files/patch-Makefile.am b/mail/mutt-devel/files/patch-Makefile.am
new file mode 100644
index 000000000000..17576eefbe38
--- /dev/null
+++ b/mail/mutt-devel/files/patch-Makefile.am
@@ -0,0 +1,24 @@
+--- Makefile.am.orig Thu Feb 7 10:14:11 2002
++++ Makefile.am Sun May 5 11:34:05 2002
+@@ -3,6 +3,7 @@
+
+ AUTOMAKE_OPTIONS = foreign
+ EXTRA_PROGRAMS = mutt_dotlock pgpring makedoc
++EXTRA_SCRIPTS =
+
+ if BUILD_IMAP
+ IMAP_SUBDIR = imap
+@@ -11,11 +12,11 @@
+
+ SUBDIRS = m4 po intl doc contrib $(IMAP_SUBDIR)
+
+-bin_SCRIPTS = muttbug flea
++bin_SCRIPTS = muttbug flea @SMIMEAUX_TARGET@
+
+ BUILT_SOURCES = keymap_defs.h patchlist.c
+
+-bin_PROGRAMS = mutt @DOTLOCK_TARGET@ @PGPAUX_TARGET@ @SMIMEAUX_TARGET@
++bin_PROGRAMS = mutt @DOTLOCK_TARGET@ @PGPAUX_TARGET@
+ mutt_SOURCES = $(BUILT_SOURCES) \
+ addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \
+ commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
diff --git a/mail/mutt-devel/files/patch-smime-sender b/mail/mutt-devel/files/patch-smime-sender
new file mode 100644
index 000000000000..13ccf385f042
--- /dev/null
+++ b/mail/mutt-devel/files/patch-smime-sender
@@ -0,0 +1,67 @@
+--- commands.c.orig2 Fri May 31 10:14:06 2002
++++ commands.c Fri May 31 10:32:00 2002
+@@ -197,7 +197,7 @@
+ {
+ if (cur->security & GOODSIGN)
+ {
+- if (!smime_verify_sender(cur))
++ if (option(OPTSMIMENOSENDER) || !smime_verify_sender(cur))
+ mutt_message ( _("S/MIME signature successfully verified."));
+ else
+ mutt_error ( _("S/MIME certificate owner does not match sender."));
+--- init.h.orig2 Fri May 31 10:14:05 2002
++++ init.h Fri May 31 10:54:55 2002
+@@ -1435,6 +1435,15 @@
+ ** This flag controls wether you want to be asked to enter a label for a certificate
+ ** about to be added to the database or not. It is set by default.
+ */
++ { "smime_dont_check_sender", DT_BOOL, R_NONE, OPTSMIMENOSENDER, 0 },
++ /*
++ ** .pp
++ ** This flag controls wether you want the skip the check for the sender's
++ ** email address against the email address stored in the certificate.
++ ** This can be useful if most of your email senders use SMIMEv3 which no
++ ** longer needs email-addresses as part of the certificates.
++ ** It is not set by default.
++ */
+ { "smime_decrypt_use_default_key", DT_BOOL, R_NONE, OPTSDEFAULTDECRYPTKEY, 1 },
+ /*
+ ** .pp
+--- mutt.h.orig2 Fri May 31 10:14:06 2002
++++ mutt.h Fri May 31 10:24:03 2002
+@@ -453,6 +453,7 @@
+ #ifdef HAVE_SMIME
+ OPTSMIMEISDEFAULT,
+ OPTASKCERTLABEL,
++ OPTSMIMENOSENDER,
+ OPTSDEFAULTDECRYPTKEY,
+ #endif
+ #ifdef HAVE_PGP
+--- contrib/smime.rc.orig Sat Mar 2 12:59:50 2002
++++ contrib/smime.rc Fri May 31 17:09:04 2002
+@@ -6,9 +6,12 @@
+ # will be the default method unless the following option is set
+ set smime_is_default
+
+-# Uncoment this if you don't want to set labels for certificates you add.
++# Uncomment this if you don't want to set labels for certificates you add.
+ # unset smime_ask_cert_label
+
++# Uncomment this if you don't want to check for sender's email address
++# set smime_dont_check_sender = yes
++
+ # Passphrase expiration
+ set smime_timeout=300
+
+@@ -23,9 +26,9 @@
+
+ # The (default) keyfile for signing/decrypting. Uncomment the following
+ # line and replace the keyid with your own.
+-set smime_default_key="12345678.0"
++# set smime_default_key="12345678.0"
+
+-# Uncommen to make mutt ask what key to use when trying to decrypt a message.
++# Uncomment to make mutt ask what key to use when trying to decrypt a message.
+ # It will use the default key above (if that was set) else.
+ # unset smime_decrypt_use_default_key
+
diff --git a/mail/mutt-devel/files/smime.h b/mail/mutt-devel/files/smime.h
new file mode 100644
index 000000000000..f7a0714e9fd8
--- /dev/null
+++ b/mail/mutt-devel/files/smime.h
@@ -0,0 +1,184 @@
+/*
+ * Copyright (C) 2001,2002 Oliver Ehli <elmy@acm.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
+ */
+
+
+#ifdef HAVE_SMIME
+
+#include "crypt.h"
+
+WHERE char *SmimeDefaultKey;
+WHERE char *SmimeCryptAlg;
+WHERE short SmimeTimeout;
+WHERE char *SmimeCertificates;
+WHERE char *SmimeKeys;
+WHERE char *SmimeCryptAlg;
+WHERE char *SmimeCALocation;
+
+/* The command formats */
+
+WHERE char *SmimeVerifyCommand;
+WHERE char *SmimeVerifyOpaqueCommand;
+WHERE char *SmimeDecryptCommand;
+
+WHERE char *SmimeSignCommand;
+WHERE char *SmimeSignOpaqueCommand;
+WHERE char *SmimeEncryptCommand;
+
+WHERE char *SmimeGetSignerCertCommand;
+WHERE char *SmimePk7outCommand;
+WHERE char *SmimeGetCertCommand;
+WHERE char *SmimeImportCertCommand;
+WHERE char *SmimeGetCertEmailCommand;
+
+
+#define APPLICATION_SMIME (1 << 6)
+
+#define SIGNOPAQUE (1 << 4)
+
+#define SMIMEENCRYPT (APPLICATION_SMIME | ENCRYPT)
+#define SMIMESIGN (APPLICATION_SMIME | SIGN)
+#define SMIMEGOODSIGN (APPLICATION_SMIME | GOODSIGN)
+#define SMIMEBADSIGN (APPLICATION_SMIME | BADSIGN)
+#define SMIMEOPAQUE (APPLICATION_SMIME | SIGNOPAQUE)
+
+
+
+#define smime_valid_passphrase() crypt_valid_passphrase(APPLICATION_SMIME)
+
+void smime_void_passphrase (void);
+
+int mutt_is_application_smime (BODY *);
+
+
+int smime_decrypt_mime (FILE *, FILE **, BODY *, BODY **);
+
+void smime_application_smime_handler (BODY *, STATE *);
+
+
+BODY* smime_sign_message (BODY *);
+
+BODY* smime_build_smime_entity (BODY *, char *);
+
+int smime_verify_one(BODY *, STATE *, const char *);
+
+
+int smime_verify_sender(HEADER *);
+
+
+char* smime_get_field_from_db (char *, char *, short, short);
+
+void smime_getkeys (ENVELOPE *);
+
+char* smime_ask_for_key (char *, char *, short);
+
+
+void smime_invoke_import (char *, char *);
+
+#endif
+/*
+ * Copyright (C) 2001,2002 Oliver Ehli <elmy@acm.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
+ */
+
+
+#ifdef HAVE_SMIME
+
+#include "crypt.h"
+
+WHERE char *SmimeDefaultKey;
+WHERE char *SmimeCryptAlg;
+WHERE short SmimeTimeout;
+WHERE char *SmimeCertificates;
+WHERE char *SmimeKeys;
+WHERE char *SmimeCryptAlg;
+WHERE char *SmimeCALocation;
+
+/* The command formats */
+
+WHERE char *SmimeVerifyCommand;
+WHERE char *SmimeVerifyOpaqueCommand;
+WHERE char *SmimeDecryptCommand;
+
+WHERE char *SmimeSignCommand;
+WHERE char *SmimeSignOpaqueCommand;
+WHERE char *SmimeEncryptCommand;
+
+WHERE char *SmimeGetSignerCertCommand;
+WHERE char *SmimePk7outCommand;
+WHERE char *SmimeGetCertCommand;
+WHERE char *SmimeImportCertCommand;
+WHERE char *SmimeGetCertEmailCommand;
+
+
+#define APPLICATION_SMIME (1 << 6)
+
+#define SIGNOPAQUE (1 << 4)
+
+#define SMIMEENCRYPT (APPLICATION_SMIME | ENCRYPT)
+#define SMIMESIGN (APPLICATION_SMIME | SIGN)
+#define SMIMEGOODSIGN (APPLICATION_SMIME | GOODSIGN)
+#define SMIMEBADSIGN (APPLICATION_SMIME | BADSIGN)
+#define SMIMEOPAQUE (APPLICATION_SMIME | SIGNOPAQUE)
+
+
+
+#define smime_valid_passphrase() crypt_valid_passphrase(APPLICATION_SMIME)
+
+void smime_void_passphrase (void);
+
+int mutt_is_application_smime (BODY *);
+
+
+int smime_decrypt_mime (FILE *, FILE **, BODY *, BODY **);
+
+void smime_application_smime_handler (BODY *, STATE *);
+
+
+BODY* smime_sign_message (BODY *);
+
+BODY* smime_build_smime_entity (BODY *, char *);
+
+int smime_verify_one(BODY *, STATE *, const char *);
+
+
+int smime_verify_sender(HEADER *);
+
+
+char* smime_get_field_from_db (char *, char *, short, short);
+
+void smime_getkeys (ENVELOPE *);
+
+char* smime_ask_for_key (char *, char *, short);
+
+
+void smime_invoke_import (char *, char *);
+
+#endif