From 68eeb8559b87ef7d8c68bb3b42439a874f64f62a Mon Sep 17 00:00:00 2001 From: radek Date: Mon, 26 Mar 2007 13:11:15 +0000 Subject: [PATCH] - merged 1.5.14 from DEVEL Changed files: mutt-bj.status-time.patch -> 1.2 mutt-cd.signatures_menu.patch -> 1.2 mutt-cd.trash_folder.patch -> 1.2 mutt-esmtp.patch -> 1.3 mutt-folder_columns.patch -> 1.4 mutt-home_etc.patch -> 1.4 mutt-manual.patch -> 1.5 mutt-po.patch -> 1.2 mutt-rr.compressed.patch -> 1.7 mutt-xface.patch -> 1.2 mutt.spec -> 1.194 --- mutt-bj.status-time.patch | 74 +-- mutt-cd.signatures_menu.patch | 10 +- mutt-cd.trash_folder.patch | 127 +++-- mutt-esmtp.patch | 279 +++++----- mutt-folder_columns.patch | 124 +++-- mutt-home_etc.patch | 186 ++++--- mutt-manual.patch | 32 +- mutt-po.patch | 20 +- mutt-rr.compressed.patch | 942 ++++++++++++++-------------------- mutt-xface.patch | 133 ++--- mutt.spec | 157 +++--- 11 files changed, 991 insertions(+), 1093 deletions(-) diff --git a/mutt-bj.status-time.patch b/mutt-bj.status-time.patch index 8556b19..6f3f6e3 100644 --- a/mutt-bj.status-time.patch +++ b/mutt-bj.status-time.patch @@ -1,7 +1,7 @@ -diff -Nur mutt-1.3.25-2/curs_main.c mutt-1.3.25/curs_main.c ---- mutt-1.3.25-2/curs_main.c Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/curs_main.c Tue Jan 22 00:07:02 2002 -@@ -546,7 +546,7 @@ +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/curs_main.c mutt-1.5.10/curs_main.c +--- mutt-1.5.10.orig/curs_main.c 2005-10-07 09:28:10.000000000 +0200 ++++ mutt-1.5.10/curs_main.c 2005-10-07 09:28:24.000000000 +0200 +@@ -559,7 +559,7 @@ menu_redraw_current (menu); } @@ -10,10 +10,19 @@ diff -Nur mutt-1.3.25-2/curs_main.c mutt-1.3.25/curs_main.c { menu_status_line (buf, sizeof (buf), menu, NONULL (Status)); CLEARLINE (option (OPTSTATUSONTOP) ? 0 : LINES-2); -diff -Nur mutt-1.3.25-2/globals.h mutt-1.3.25/globals.h ---- mutt-1.3.25-2/globals.h Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/globals.h Tue Jan 22 00:07:02 2002 -@@ -145,6 +145,7 @@ +Only in mutt-1.5.10/doc: manual-1.html +Only in mutt-1.5.10/doc: manual-2.html +Only in mutt-1.5.10/doc: manual-3.html +Only in mutt-1.5.10/doc: manual-4.html +Only in mutt-1.5.10/doc: manual-5.html +Only in mutt-1.5.10/doc: manual-6.html +Only in mutt-1.5.10/doc: manual-7.html +Only in mutt-1.5.10/doc: manual.html +Only in mutt-1.5.10/doc: manual.txt +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/globals.h mutt-1.5.10/globals.h +--- mutt-1.5.10.orig/globals.h 2005-08-03 11:17:46.000000000 +0200 ++++ mutt-1.5.10/globals.h 2005-10-07 09:28:24.000000000 +0200 +@@ -174,6 +174,7 @@ WHERE short ReadInc; WHERE short SendmailWait; WHERE short SleepTime INITVAL (1); @@ -21,10 +30,10 @@ diff -Nur mutt-1.3.25-2/globals.h mutt-1.3.25/globals.h WHERE short Timeout; WHERE short WrapMargin; WHERE short WriteInc; -diff -Nur mutt-1.3.25-2/init.h mutt-1.3.25/init.h ---- mutt-1.3.25-2/init.h Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/init.h Tue Jan 22 00:09:07 2002 -@@ -2119,6 +2119,9 @@ +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/init.h mutt-1.5.10/init.h +--- mutt-1.5.10.orig/init.h 2005-10-07 09:28:10.000000000 +0200 ++++ mutt-1.5.10/init.h 2005-10-07 09:28:24.000000000 +0200 +@@ -2626,6 +2626,9 @@ ** .dt %u .dd number of unread messages * ** .dt %v .dd Mutt version string ** .dt %V .dd currently active limit pattern, if any * @@ -34,7 +43,7 @@ diff -Nur mutt-1.3.25-2/init.h mutt-1.3.25/init.h ** .dt %>X .dd right justify the rest of the string and pad with "X" ** .dt %|X .dd pad to the end of the line with "X" ** .de -@@ -2160,6 +2163,16 @@ +@@ -2671,6 +2674,16 @@ ** Setting this variable causes the ``status bar'' to be displayed on ** the first line of the screen rather than near the bottom. */ @@ -51,10 +60,10 @@ diff -Nur mutt-1.3.25-2/init.h mutt-1.3.25/init.h { "strict_threads", DT_BOOL, R_RESORT|R_RESORT_INIT|R_INDEX, OPTSTRICTTHREADS, 0 }, /* ** .pp -diff -Nur mutt-1.3.25-2/menu.c mutt-1.3.25/menu.c ---- mutt-1.3.25-2/menu.c Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/menu.c Tue Jan 22 00:07:02 2002 -@@ -1045,3 +1045,23 @@ +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/menu.c mutt-1.5.10/menu.c +--- mutt-1.5.10.orig/menu.c 2005-06-12 20:32:46.000000000 +0200 ++++ mutt-1.5.10/menu.c 2005-10-07 09:28:24.000000000 +0200 +@@ -1087,3 +1087,23 @@ } /* not reached */ } @@ -78,19 +87,19 @@ diff -Nur mutt-1.3.25-2/menu.c mutt-1.3.25/menu.c + else + return 0; +} -diff -Nur mutt-1.3.25-2/mutt_menu.h mutt-1.3.25/mutt_menu.h ---- mutt-1.3.25-2/mutt_menu.h Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/mutt_menu.h Tue Jan 22 00:07:02 2002 -@@ -107,3 +107,5 @@ - /* used in both the index and pager index to make an entry. */ +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/mutt_menu.h mutt-1.5.10/mutt_menu.h +--- mutt-1.5.10.orig/mutt_menu.h 2005-08-11 21:37:02.000000000 +0200 ++++ mutt-1.5.10/mutt_menu.h 2005-10-07 09:28:59.000000000 +0200 +@@ -112,4 +112,5 @@ void index_make_entry (char *, size_t, struct menu_t *, int); int index_color (int); -+ + +int update_status_time (void); -diff -Nur mutt-1.3.25-2/pager.c mutt-1.3.25/pager.c ---- mutt-1.3.25-2/pager.c Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/pager.c Tue Jan 22 00:07:02 2002 -@@ -1712,7 +1712,7 @@ + #endif /* _MUTT_MENU_H_ */ +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/pager.c mutt-1.5.10/pager.c +--- mutt-1.5.10.orig/pager.c 2005-08-11 21:37:02.000000000 +0200 ++++ mutt-1.5.10/pager.c 2005-10-07 09:28:24.000000000 +0200 +@@ -1763,7 +1763,7 @@ SETCOLOR (MT_COLOR_NORMAL); } @@ -99,10 +108,10 @@ diff -Nur mutt-1.3.25-2/pager.c mutt-1.3.25/pager.c { /* redraw the pager_index indicator, because the * flags for this message might have changed. */ -diff -Nur mutt-1.3.25-2/status.c mutt-1.3.25/status.c ---- mutt-1.3.25-2/status.c Tue Jan 22 00:06:44 2002 -+++ mutt-1.3.25/status.c Tue Jan 22 00:07:02 2002 -@@ -26,6 +26,7 @@ +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/status.c mutt-1.5.10/status.c +--- mutt-1.5.10.orig/status.c 2005-10-07 09:28:10.000000000 +0200 ++++ mutt-1.5.10/status.c 2005-10-07 09:28:24.000000000 +0200 +@@ -30,6 +30,7 @@ #include #include #include @@ -110,7 +119,7 @@ diff -Nur mutt-1.3.25-2/status.c mutt-1.3.25/status.c static char *get_sort_str (char *buf, size_t buflen, int method) { -@@ -284,6 +285,61 @@ +@@ -288,6 +289,61 @@ *buf = 0; return (src); @@ -172,4 +181,3 @@ diff -Nur mutt-1.3.25-2/status.c mutt-1.3.25/status.c default: snprintf (buf, buflen, "%%%s%c", prefix, op); break; - diff --git a/mutt-cd.signatures_menu.patch b/mutt-cd.signatures_menu.patch index 404cb22..9f9418b 100644 --- a/mutt-cd.signatures_menu.patch +++ b/mutt-cd.signatures_menu.patch @@ -56,8 +56,8 @@ diff -pruN2 mutt-1.3.27.orig/compose.c mutt-1.3.27/compose.c case OP_PIPE: case OP_FILTER: diff -pruN2 mutt-1.3.27.orig/doc/manual.sgml.head mutt-1.3.27/doc/manual.sgml.head ---- mutt-1.3.27.orig/doc/manual.sgml.head Sat Jan 12 12:35:43 2002 -+++ mutt-1.3.27/doc/manual.sgml.head Wed Jan 23 22:35:32 2002 +--- mutt-1.3.27.orig/doc/manual.xml.head Sat Jan 12 12:35:43 2002 ++++ mutt-1.3.27/doc/manual.xml.head Wed Jan 23 22:35:32 2002 @@ -526,4 +526,5 @@ c edit-cc edit the b edit-bcc edit the Bcc field y send-message send the message @@ -179,7 +179,7 @@ diff -pruN2 mutt-1.3.27.orig/protos.h mutt-1.3.27/protos.h diff -pruN2 mutt-1.3.27.orig/signature.c mutt-1.3.27/signature.c --- mutt-1.3.27.orig/signature.c Thu Jan 1 01:00:00 1970 +++ mutt-1.3.27/signature.c Wed Jan 23 22:35:32 2002 -@@ -0,0 +1,495 @@ +@@ -0,0 +1,499 @@ +/* + * Copyright (C) 2001 Cedric Duval + * @@ -198,6 +198,10 @@ diff -pruN2 mutt-1.3.27.orig/signature.c mutt-1.3.27/signature.c + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + */ + ++#if HAVE_CONFIG_H ++# include "config.h" ++#endif ++ +#include "mutt.h" +#include "mutt_menu.h" +#include "mapping.h" diff --git a/mutt-cd.trash_folder.patch b/mutt-cd.trash_folder.patch index 4c1861a..3da6eed 100644 --- a/mutt-cd.trash_folder.patch +++ b/mutt-cd.trash_folder.patch @@ -1,28 +1,35 @@ -diff -pruN2 mutt-1.3.27.orig/commands.c mutt-1.3.27/commands.c ---- mutt-1.3.27.orig/commands.c Mon Dec 3 11:17:57 2001 -+++ mutt-1.3.27/commands.c Wed Jan 23 22:33:11 2002 -@@ -616,9 +616,13 @@ void _mutt_save_message (HEADER *h, CONT - mutt_parse_mime_message (Context, h); - -- if (mutt_append_message (ctx, Context, h, cmflags, chflags) == 0 && delete) -+ if (mutt_append_message (ctx, Context, h, cmflags, chflags) == 0) - { -- mutt_set_flag (Context, h, M_DELETE, 1); -- if (option (OPTDELETEUNTAG)) -- mutt_set_flag (Context, h, M_TAG, 0); -+ if (delete) -+ { -+ mutt_set_flag (Context, h, M_DELETE, 1); -+ if (option (OPTDELETEUNTAG)) -+ mutt_set_flag (Context, h, M_TAG, 0); -+ } -+ mutt_set_flag (Context, h, M_APPENDED, 1); +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/PATCHES mutt-1.5.10/PATCHES +--- mutt-1.5.10.orig/PATCHES 2005-10-07 09:29:54.000000000 +0200 ++++ mutt-1.5.10/PATCHES 2005-10-07 09:30:06.000000000 +0200 +@@ -1,2 +1,3 @@ + vvv.quote ++patch-1.3.27.cd.trash_folder.1 + rr.compressed +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/commands.c mutt-1.5.10/commands.c +--- mutt-1.5.10.orig/commands.c 2005-08-02 09:08:00.000000000 +0200 ++++ mutt-1.5.10/commands.c 2005-10-07 09:32:06.000000000 +0200 +@@ -690,6 +690,7 @@ + if (option (OPTDELETEUNTAG)) + mutt_set_flag (Context, h, M_TAG, 0); } ++ mutt_set_flag (Context, h, M_APPENDED, 1); + + return 0; } -diff -pruN2 mutt-1.3.27.orig/flags.c mutt-1.3.27/flags.c ---- mutt-1.3.27.orig/flags.c Tue Jan 15 22:12:59 2002 -+++ mutt-1.3.27/flags.c Wed Jan 23 22:33:11 2002 -@@ -76,4 +76,15 @@ void _mutt_set_flag (CONTEXT *ctx, HEADE +Only in mutt-1.5.10/doc: manual-1.html +Only in mutt-1.5.10/doc: manual-2.html +Only in mutt-1.5.10/doc: manual-3.html +Only in mutt-1.5.10/doc: manual-4.html +Only in mutt-1.5.10/doc: manual-5.html +Only in mutt-1.5.10/doc: manual-6.html +Only in mutt-1.5.10/doc: manual-7.html +Only in mutt-1.5.10/doc: manual.html +Only in mutt-1.5.10/doc: manual.txt +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/flags.c mutt-1.5.10/flags.c +--- mutt-1.5.10.orig/flags.c 2005-02-03 19:47:52.000000000 +0100 ++++ mutt-1.5.10/flags.c 2005-10-07 09:30:06.000000000 +0200 +@@ -91,6 +91,17 @@ + } break; + case M_APPENDED: @@ -37,20 +44,24 @@ diff -pruN2 mutt-1.3.27.orig/flags.c mutt-1.3.27/flags.c + break; + case M_NEW: - if (bf) -diff -pruN2 mutt-1.3.27.orig/globals.h mutt-1.3.27/globals.h ---- mutt-1.3.27.orig/globals.h Thu Jan 3 21:56:46 2002 -+++ mutt-1.3.27/globals.h Wed Jan 23 22:33:11 2002 -@@ -110,4 +110,5 @@ WHERE char *Status; + + #ifdef USE_IMAP +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/globals.h mutt-1.5.10/globals.h +--- mutt-1.5.10.orig/globals.h 2005-10-07 09:29:54.000000000 +0200 ++++ mutt-1.5.10/globals.h 2005-10-07 09:30:06.000000000 +0200 +@@ -130,6 +130,7 @@ + WHERE char *Status; WHERE char *Tempdir; WHERE char *Tochars; +WHERE char *TrashPath; WHERE char *Username; WHERE char *Visual; -diff -pruN2 mutt-1.3.27.orig/init.h mutt-1.3.27/init.h ---- mutt-1.3.27.orig/init.h Mon Dec 10 11:09:03 2001 -+++ mutt-1.3.27/init.h Wed Jan 23 22:33:11 2002 -@@ -2236,4 +2236,11 @@ struct option_t MuttVars[] = { + +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/init.h mutt-1.5.10/init.h +--- mutt-1.5.10.orig/init.h 2005-10-07 09:29:54.000000000 +0200 ++++ mutt-1.5.10/init.h 2005-10-07 09:30:06.000000000 +0200 +@@ -2774,6 +2774,13 @@ + ** by \fIyou\fP. The sixth character is used to indicate when a mail ** was sent to a mailing-list you subscribe to (default: L). */ + { "trash", DT_PATH, R_NONE, UL &TrashPath, 0 }, @@ -62,31 +73,39 @@ diff -pruN2 mutt-1.3.27.orig/init.h mutt-1.3.27/init.h + */ #ifdef USE_SOCKET { "tunnel", DT_STR, R_NONE, UL &Tunnel, UL 0 }, -diff -pruN2 mutt-1.3.27.orig/mutt.h mutt-1.3.27/mutt.h ---- mutt-1.3.27.orig/mutt.h Tue Jan 15 22:00:32 2002 -+++ mutt-1.3.27/mutt.h Wed Jan 23 22:33:11 2002 -@@ -185,4 +185,5 @@ enum + /* +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/mutt.h mutt-1.5.10/mutt.h +--- mutt-1.5.10.orig/mutt.h 2005-10-07 09:29:54.000000000 +0200 ++++ mutt-1.5.10/mutt.h 2005-10-07 09:30:06.000000000 +0200 +@@ -207,6 +207,7 @@ + M_DELETE, M_UNDELETE, M_DELETED, + M_APPENDED, M_FLAG, M_TAG, -@@ -618,4 +619,5 @@ typedef struct header + M_UNTAG, +@@ -702,6 +703,7 @@ + unsigned int mime : 1; /* has a Mime-Version header? */ unsigned int flagged : 1; /* marked important? */ unsigned int tagged : 1; + unsigned int appended : 1; /* has been saved */ unsigned int deleted : 1; unsigned int changed : 1; -@@ -740,4 +742,5 @@ typedef struct + unsigned int attach_del : 1; /* has an attachment marked for deletion */ +@@ -830,6 +832,7 @@ + int new; /* how many new messages? */ int unread; /* how many unread messages? */ int deleted; /* how many deleted messages */ + int appended; /* how many saved messages? */ int flagged; /* how many flagged messages */ int msgnotreadyet; /* which msg "new" in pager, -1 if none */ -diff -pruN2 mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c ---- mutt-1.3.27.orig/mx.c Tue Jan 15 22:09:53 2002 -+++ mutt-1.3.27/mx.c Wed Jan 23 22:33:11 2002 -@@ -816,4 +816,45 @@ static int sync_mailbox (CONTEXT *ctx, i + #if defined USE_POP || defined USE_IMAP +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/mx.c mutt-1.5.10/mx.c +--- mutt-1.5.10.orig/mx.c 2005-10-07 09:29:54.000000000 +0200 ++++ mutt-1.5.10/mx.c 2005-10-07 09:30:06.000000000 +0200 +@@ -850,6 +850,47 @@ + return rc; } +/* move deleted mails to the trash folder */ @@ -132,7 +151,9 @@ diff -pruN2 mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c + /* save changes and close mailbox */ int mx_close_mailbox (CONTEXT *ctx, int *index_hint) -@@ -999,9 +1040,17 @@ int mx_close_mailbox (CONTEXT *ctx, int + { +@@ -1032,11 +1073,19 @@ + if (ctx->changed || ctx->deleted) { - if ((check = sync_mailbox (ctx, index_hint)) != 0) @@ -151,7 +172,9 @@ diff -pruN2 mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c + } } } -@@ -1174,6 +1223,10 @@ int mx_sync_mailbox (CONTEXT *ctx, int * + +@@ -1214,8 +1263,12 @@ + if (ctx->magic == M_IMAP) rc = imap_sync_mailbox (ctx, purge, index_hint); else -#endif @@ -163,10 +186,12 @@ diff -pruN2 mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c + } if (rc == 0) { -diff -pruN2 mutt-1.3.27.orig/postpone.c mutt-1.3.27/postpone.c ---- mutt-1.3.27.orig/postpone.c Mon Dec 3 11:17:57 2001 -+++ mutt-1.3.27/postpone.c Wed Jan 23 22:33:11 2002 -@@ -271,4 +271,7 @@ int mutt_get_postponed (CONTEXT *ctx, HE + #ifdef USE_IMAP +diff -dur -x '*~' -x '*.orig' mutt-1.5.10.orig/postpone.c mutt-1.5.10/postpone.c +--- mutt-1.5.10.orig/postpone.c 2005-02-03 19:47:53.000000000 +0100 ++++ mutt-1.5.10/postpone.c 2005-10-07 09:30:06.000000000 +0200 +@@ -279,6 +279,9 @@ + /* finished with this message, so delete it. */ mutt_set_flag (PostContext, h, M_DELETE, 1); + /* and consider it saved, so that it won't be moved to the trash folder */ @@ -174,8 +199,4 @@ diff -pruN2 mutt-1.3.27.orig/postpone.c mutt-1.3.27/postpone.c + /* update the count for the status display */ PostCount = PostContext->msgcount - PostContext->deleted; -diff -pruN mutt-1.3.27.orig/PATCHES mutt-1.3.27/PATCHES ---- mutt-1.3.27.orig/PATCHES Mon Nov 26 20:16:52 2001 -+++ mutt-1.3.27/PATCHES Thu Dec 6 16:27:55 2001 -@@ -1,0 +1 @@ -+patch-1.3.27.cd.trash_folder.1 + diff --git a/mutt-esmtp.patch b/mutt-esmtp.patch index 387dab9..59b0315 100644 --- a/mutt-esmtp.patch +++ b/mutt-esmtp.patch @@ -1,7 +1,25 @@ -diff -urN mutt-1.4.1.org/configure.in mutt-1.4.1/configure.in ---- mutt-1.4.1.org/configure.in 2003-08-21 15:30:19.000000000 +0200 -+++ mutt-1.4.1/configure.in 2003-08-21 15:31:08.962016232 +0200 -@@ -869,6 +869,19 @@ +--- mutt-1.5.9/Makefile.am.orig 2005-03-31 20:44:06.543128320 +0200 ++++ mutt-1.5.9/Makefile.am 2005-03-31 20:48:44.552864416 +0200 +@@ -62,6 +62,7 @@ + mutt_tunnel.c pop.c pop_auth.c pop_lib.c smime.c pgp.c pgpinvoke.c pgpkey.c \ + pgplib.c sha1.c pgpmicalg.c gnupgparse.c resize.c dotlock.c remailer.c \ + browser.h mbyte.h remailer.h url.h mutt_ssl_nss.c \ ++ mutt_libesmtp.c \ + crypt-mod-pgp-classic.c crypt-mod-smime-classic.c \ + pgppacket.c mutt_idna.h hcache.c mutt_ssl_gnutls.c \ + nntp.c newsrc.c \ +@@ -82,6 +83,7 @@ + makedoc.c stamp-doc-rc README.SSL smime.h\ + muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \ + ChangeLog.old mkchangelog.sh cvslog2changelog.pl mutt_idna.h \ ++ mutt_libesmtp.h \ + snprintf.c regex.c crypt-gpgme.h + + EXTRA_SCRIPTS = smime_keys +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/configure.in mutt-1.5.3/configure.in +--- mutt-1.5.3/configure.in Tue Dec 17 04:35:21 2002 ++++ mutt-1.5.3/configure.in Wed Mar 5 11:50:47 2003 +@@ -916,6 +916,19 @@ AC_DEFINE(HAVE_LANGINFO_YESEXPR,1,[ Define if you have and nl_langinfo(YESEXPR). ]) fi @@ -10,23 +28,23 @@ diff -urN mutt-1.4.1.org/configure.in mutt-1.4.1/configure.in +if test x$use_libesmtp = xyes; then + CFLAGS="$CFLAGS $mutt_libesmtp_cflags" + MUTTLIBS="$MUTTLIBS $mutt_libesmtp_libs" -+ MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS mutt_libesmtp.o -lpthread" ++ MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS mutt_libesmtp.o" + + AC_DEFINE(USE_LIBESMTP, + 1, -+ [Define to enable the use of libesmtp]) ++ [Define to enable the use of libesmtp]) +fi +dnl -- end libesmtp -- + AC_OUTPUT(Makefile intl/Makefile m4/Makefile po/Makefile.in doc/Makefile contrib/Makefile muttbug.sh -diff -urN mutt-1.4.1.org/globals.h mutt-1.4.1/globals.h ---- mutt-1.4.1.org/globals.h 2003-08-21 15:30:19.000000000 +0200 -+++ mutt-1.4.1/globals.h 2003-08-21 15:31:08.964015928 +0200 -@@ -103,6 +103,12 @@ +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/globals.h mutt-1.5.3/globals.h +--- mutt-1.5.3/globals.h Mon Sep 9 15:05:44 2002 ++++ mutt-1.5.3/globals.h Wed Mar 5 11:50:48 2003 +@@ -101,6 +101,12 @@ + WHERE char *Shell; WHERE char *Signature; - WHERE char *SigDirectory; WHERE char *SimpleSearch; +#if defined(USE_LIBESMTP) +WHERE char *SmtpAuthUser; @@ -37,10 +55,9 @@ diff -urN mutt-1.4.1.org/globals.h mutt-1.4.1/globals.h WHERE char *Spoolfile; #if defined(USE_SSL) || defined(USE_NSS) WHERE char *SslCertFile INITVAL (NULL); -diff -urN mutt-1.4.1.org/init.h mutt-1.4.1/init.h ---- mutt-1.4.1.org/init.h 2003-08-21 15:30:19.000000000 +0200 -+++ mutt-1.4.1/init.h 2003-08-21 15:31:08.976014104 +0200 -@@ -99,6 +99,9 @@ +--- mutt-1.5.9/init.h.orig 2005-03-31 20:44:06.454141848 +0200 ++++ mutt-1.5.9/init.h 2005-03-31 20:49:49.479993992 +0200 +@@ -98,6 +98,9 @@ # ifndef USE_SOCKET # define USE_SOCKET # endif @@ -50,49 +67,50 @@ diff -urN mutt-1.4.1.org/init.h mutt-1.4.1/init.h #endif struct option_t MuttVars[] = { -@@ -1468,6 +1471,38 @@ - /* +@@ -1987,6 +1990,39 @@ + ** (S/MIME only) */ - #endif /* HAVE_PGP */ -+ + ++ +#if defined(USE_LIBESMTP) + { "smtp_auth_username", DT_STR, R_NONE, UL &SmtpAuthUser, 0 }, + /* -+ ** .pp -+ ** Defines the username to use with SMTP AUTH. Setting this variable will -+ ** cause mutt to attempt to use SMTP AUTH when sending. -+ */ -+ { "smtp_auth_password", DT_STR, R_NONE, UL &SmtpAuthPass, 0 }, -+ /* -+ ** .pp -+ ** Defines the password to use with SMTP AUTH. If ``$$smtp_auth_username'' -+ ** is set, but this variable is not, you will be prompted for a password -+ ** when sending. -+ */ -+ { "smtp_host", DT_STR, R_NONE, UL &SmtpHost, 0 }, -+ /* -+ ** .pp -+ ** Defines the SMTP host which will be used to deliver mail, as opposed -+ ** to invoking the sendmail binary. Setting this variable overrides the -+ ** value of ``$$sendmail'', and any associated variables. -+ */ -+ { "smtp_port", DT_NUM, R_NONE, UL &SmtpPort, 25 }, -+ /* -+ ** .pp -+ ** Defines the port that the SMTP host is listening on for mail delivery. -+ ** Must be specified as a number. -+ ** .pp -+ ** Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP -+ ** servers will probably desire 587, the mail submission port. -+ */ ++ ** .pp ++ ** Defines the username to use with SMTP AUTH. Setting this variable will ++ ** cause mutt to attempt to use SMTP AUTH when sending. ++ */ ++ { "smtp_auth_password", DT_STR, R_NONE, UL &SmtpAuthPass, 0 }, ++ /* ++ ** .pp ++ ** Defines the password to use with SMTP AUTH. If ``$$smtp_auth_username'' ++ ** is set, but this variable is not, you will be prompted for a password ++ ** when sending. ++ */ ++ { "smtp_host", DT_STR, R_NONE, UL &SmtpHost, 0 }, ++ /* ++ ** .pp ++ ** Defines the SMTP host which will be used to deliver mail, as opposed ++ ** to invoking the sendmail binary. Setting this variable overrides the ++ ** value of ``$$sendmail'', and any associated variables. ++ */ ++ { "smtp_port", DT_NUM, R_NONE, UL &SmtpPort, 25 }, ++ /* ++ ** .pp ++ ** Defines the port that the SMTP host is listening on for mail delivery. ++ ** Must be specified as a number. ++ ** .pp ++ ** Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP ++ ** servers will probably desire 587, the mail submission port. ++ */ +#endif - - #if defined(USE_SSL)||defined(USE_NSS) - # ifndef USE_NSS -diff -urN mutt-1.4.1.org/m4/libesmtp.m4 mutt-1.4.1/m4/libesmtp.m4 ---- mutt-1.4.1.org/m4/libesmtp.m4 1970-01-01 01:00:00.000000000 +0100 -+++ mutt-1.4.1/m4/libesmtp.m4 2003-08-21 15:31:08.978013800 +0200 -@@ -0,0 +1,60 @@ ++ + #if defined(USE_SSL)||defined(USE_NSS)||defined(USE_GNUTLS) + #ifdef USE_SSL + { "ssl_client_cert", DT_PATH, R_NONE, UL &SslClientCert, 0 }, +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/m4/libesmtp.m4 mutt-1.5.3/m4/libesmtp.m4 +--- mutt-1.5.3/m4/libesmtp.m4 Wed Dec 31 18:00:00 1969 ++++ mutt-1.5.3/m4/libesmtp.m4 Wed Mar 5 11:52:36 2003 +@@ -0,0 +1,63 @@ +dnl vim:ft=config: + +dnl Search for libesmtp, by Steven Engelhardt @@ -115,7 +133,10 @@ diff -urN mutt-1.4.1.org/m4/libesmtp.m4 mutt-1.4.1/m4/libesmtp.m4 + fi + + dnl 1. Find libesmtp-config -+ mutt_libesmtp_config_path=`which libesmtp-config || echo no` ++ AC_PATH_PROG([mutt_libesmtp_config_path], ++ [libesmtp-config], ++ [no], ++ [$mutt_libesmtp_check_path]) + + if test "$mutt_libesmtp_config_path" = "no" + then @@ -153,12 +174,12 @@ diff -urN mutt-1.4.1.org/m4/libesmtp.m4 mutt-1.4.1/m4/libesmtp.m4 + ] + ) +]) -diff -urN mutt-1.4.1.org/main.c mutt-1.4.1/main.c ---- mutt-1.4.1.org/main.c 2003-08-21 15:30:19.000000000 +0200 -+++ mutt-1.4.1/main.c 2003-08-21 15:31:08.982013192 +0200 -@@ -226,6 +226,12 @@ +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/main.c mutt-1.5.3/main.c +--- mutt-1.5.3/main.c Wed Dec 11 05:20:05 2002 ++++ mutt-1.5.3/main.c Wed Mar 5 11:50:48 2003 +@@ -240,6 +240,12 @@ #else - "-USE_SASL " + "-USE_SASL2 " #endif + +#ifdef USE_LIBESMTP @@ -169,36 +190,17 @@ diff -urN mutt-1.4.1.org/main.c mutt-1.4.1/main.c "\n" #ifdef HAVE_REGCOMP -diff -urN mutt-1.4.1.org/Makefile.am mutt-1.4.1/Makefile.am ---- mutt-1.4.1.org/Makefile.am 2003-08-21 15:30:18.000000000 +0200 -+++ mutt-1.4.1/Makefile.am 2003-08-21 15:31:08.984012888 +0200 -@@ -68,7 +68,8 @@ - EXTRA_mutt_SOURCES = account.c md5c.c mutt_sasl.c mutt_socket.c mutt_ssl.c \ - mutt_tunnel.c pop.c pop_auth.c pop_lib.c pgp.c pgpinvoke.c pgpkey.c \ - pgplib.c sha1.c pgpmicalg.c gnupgparse.c resize.c dotlock.c remailer.c \ -- browser.h mbyte.h remailer.h url.h mutt_ssl_nss.c pgppacket.c -+ browser.h mbyte.h remailer.h url.h mutt_ssl_nss.c pgppacket.c \ -+ mutt_libesmtp.c - - EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP TODO configure acconfig.h account.h \ - attach.h buffy.h charset.h compress.h copy.h dotlock.h functions.h \ -@@ -80,7 +81,7 @@ - mbyte.h lib.h extlib.c pgpewrap.c pgplib.h Muttrc.head Muttrc \ - makedoc.c stamp-doc-rc README.SSL \ - muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \ -- snprintf.c regex.c -+ snprintf.c regex.c mutt_libesmtp.h - - mutt_dotlock_SOURCES = mutt_dotlock.c - mutt_dotlock_LDADD = @LIBOBJS@ -diff -urN mutt-1.4.1.org/mutt_libesmtp.c mutt-1.4.1/mutt_libesmtp.c ---- mutt-1.4.1.org/mutt_libesmtp.c 1970-01-01 01:00:00.000000000 +0100 -+++ mutt-1.4.1/mutt_libesmtp.c 2003-08-21 15:31:08.987012432 +0200 -@@ -0,0 +1,224 @@ +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/mutt_libesmtp.c mutt-1.5.3/mutt_libesmtp.c +--- mutt-1.5.3/mutt_libesmtp.c Wed Dec 31 18:00:00 1969 ++++ mutt-1.5.3/mutt_libesmtp.c Wed Mar 5 11:53:42 2003 +@@ -0,0 +1,231 @@ ++#if HAVE_CONFIG_H ++# include "config.h" ++#endif +#include "mutt.h" ++#include +#include +#include -+#include + +static char authpass[STRING] = ""; + @@ -362,8 +364,6 @@ diff -urN mutt-1.4.1.org/mutt_libesmtp.c mutt-1.4.1/mutt_libesmtp.c + + if ((session = smtp_create_session()) == NULL) + SMTPFAIL("smtp_create_session"); -+ if ((message = smtp_add_message(session)) == NULL) -+ SMTPFAIL("smtp_add_message"); + + /* Create hostname:port string and tell libesmtp */ + /* len = SmtpHost len + colon + max port (65536 => 5 chars) + terminator */ @@ -383,6 +383,12 @@ diff -urN mutt-1.4.1.org/mutt_libesmtp.c mutt-1.4.1/mutt_libesmtp.c + SMTPFAIL("smtp_auth_set_context"); + } + ++ if ((message = smtp_add_message(session)) == NULL) ++ SMTPFAIL("smtp_add_message"); ++ /* Initialize envelope sender */ ++ if (!smtp_set_reverse_path(message, from->mailbox)) ++ SMTPFAIL("smtp_set_reverse_path"); ++ + if ((fp = fopen(msg, "r")) == NULL) + LIBCFAIL("fopen"); + if (!smtp_set_messagecb(message, _mutt_libesmtp_messagefp_cb, fp)) @@ -419,9 +425,9 @@ diff -urN mutt-1.4.1.org/mutt_libesmtp.c mutt-1.4.1/mutt_libesmtp.c + + return ret; +} -diff -urN mutt-1.4.1.org/mutt_libesmtp.h mutt-1.4.1/mutt_libesmtp.h ---- mutt-1.4.1.org/mutt_libesmtp.h 1970-01-01 01:00:00.000000000 +0100 -+++ mutt-1.4.1/mutt_libesmtp.h 2003-08-21 15:31:08.988012280 +0200 +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/mutt_libesmtp.h mutt-1.5.3/mutt_libesmtp.h +--- mutt-1.5.3/mutt_libesmtp.h Wed Dec 31 18:00:00 1969 ++++ mutt-1.5.3/mutt_libesmtp.h Wed Mar 5 11:50:48 2003 @@ -0,0 +1,10 @@ +#if !defined(LIBESMTP_H) +#define LIBESMTP_H @@ -433,34 +439,10 @@ diff -urN mutt-1.4.1.org/mutt_libesmtp.h mutt-1.4.1/mutt_libesmtp.h + int eightbit); /* message contains 8bit chars */ + +#endif /* !defined(LIBESMTP_H) */ -diff -urN mutt-1.4.1.org/Muttrc.esmtp mutt-1.4.1/Muttrc.esmtp ---- mutt-1.4.1.org/Muttrc.esmtp 1970-01-01 01:00:00.000000000 +0100 -+++ mutt-1.4.1/Muttrc.esmtp 2003-08-21 14:57:35.000000000 +0200 -@@ -0,0 +1,20 @@ -+# enable minimalistic smtp support builtin to Mutt -+set sendmail = "builtin" -+ -+# The name or address of your SMTP server. -+set smtp_serv = "fastmail.fm" -+ -+# Your login name on the SMTP server. Mutt presents you -+# as ``smtp_user''@``smtp_host'', unless ``envelope_from'' -+# is set, this will then be the message's envelope sender. -+# Defaults to your login name on the local system. -+set smtp_user = "ulferikson" -+ -+# If set, Mutt will try to use ESMPT and ``AUTH LOGIN'' to -+# authenticate your user. -+set smtp_pass = "" -+ -+# This variable specifies which port your SMTP server is -+# listening on. -+set smtp_port = 25 -+ -diff -urN mutt-1.4.1.org/protos.h mutt-1.4.1/protos.h ---- mutt-1.4.1.org/protos.h 2003-08-21 15:30:19.000000000 +0200 -+++ mutt-1.4.1/protos.h 2003-08-21 15:31:08.991011824 +0200 -@@ -276,7 +276,7 @@ +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/protos.h mutt-1.5.3/protos.h +--- mutt-1.5.3/protos.h Wed Dec 11 16:31:25 2002 ++++ mutt-1.5.3/protos.h Wed Mar 5 11:50:48 2003 +@@ -279,7 +279,7 @@ int mutt_get_postponed (CONTEXT *, HEADER *, HEADER **, char *, size_t); int mutt_get_tmp_attachment (BODY *); int mutt_index_menu (void); @@ -469,10 +451,10 @@ diff -urN mutt-1.4.1.org/protos.h mutt-1.4.1/protos.h int mutt_is_autoview (BODY *, const char *); int mutt_is_mail_list (ADDRESS *); int mutt_is_message_type(int, const char *); -diff -urN mutt-1.4.1.org/send.c mutt-1.4.1/send.c ---- mutt-1.4.1.org/send.c 2002-01-30 23:50:59.000000000 +0100 -+++ mutt-1.4.1/send.c 2003-08-21 15:31:08.996011064 +0200 -@@ -974,7 +974,7 @@ +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/send.c mutt-1.5.3/send.c +--- mutt-1.5.3/send.c Wed Dec 11 16:45:38 2002 ++++ mutt-1.5.3/send.c Wed Mar 5 11:50:48 2003 +@@ -979,7 +979,7 @@ return mix_send_message (msg->chain, tempfile); #endif @@ -481,20 +463,20 @@ diff -urN mutt-1.4.1.org/send.c mutt-1.4.1/send.c msg->env->bcc, tempfile, (msg->content->encoding == ENC8BIT)); return (i); } -diff -urN mutt-1.4.1.org/sendlib.c mutt-1.4.1/sendlib.c ---- mutt-1.4.1.org/sendlib.c 2003-08-21 15:30:19.000000000 +0200 -+++ mutt-1.4.1/sendlib.c 2003-08-21 15:31:09.003010000 +0200 -@@ -119,6 +119,9 @@ - #endif /* HAVE_PGP */ - +diff -urN --exclude-from=bin/diff.excludes mutt-1.5.3/sendlib.c mutt-1.5.3/sendlib.c +--- mutt-1.5.3/sendlib.c Tue Dec 10 14:57:11 2002 ++++ mutt-1.5.3/sendlib.c Wed Mar 5 11:50:48 2003 +@@ -123,6 +123,9 @@ + #include "smime.h" + #endif /* HAVE_SMIME */ +#ifdef USE_LIBESMTP +# include "mutt_libesmtp.h" +#endif /* USE_LIBESMTP */ - #define DISPOSITION(X) X==DISPATTACH?"attachment":"inline" -@@ -1970,7 +1973,7 @@ + #define DISPOSITION(X) X==DISPATTACH?"attachment":"inline" +@@ -2009,7 +2012,7 @@ } @@ -503,7 +485,7 @@ diff -urN mutt-1.4.1.org/sendlib.c mutt-1.4.1/sendlib.c mutt_invoke_sendmail (ADDRESS *from, /* the sender */ ADDRESS *to, ADDRESS *cc, ADDRESS *bcc, /* recips */ const char *msg, /* file containing message */ -@@ -2066,6 +2069,20 @@ +@@ -2105,6 +2108,20 @@ return (i); } @@ -524,14 +506,35 @@ diff -urN mutt-1.4.1.org/sendlib.c mutt-1.4.1/sendlib.c /* appends string 'b' to string 'a', and returns the pointer to the new string. */ char *mutt_append_string (char *a, const char *b) -@@ -2219,8 +2236,8 @@ +@@ -2261,7 +2278,7 @@ mutt_copy_bytes (fp, f, h->content->length); fclose (f); -- mutt_invoke_sendmail (env_from, to, NULL, NULL, tempfile, -- h->content->encoding == ENC8BIT); -+ mutt_invoke_mta (env_from, to, NULL, NULL, tempfile, -+ h->content->encoding == ENC8BIT); +- ret = mutt_invoke_sendmail (env_from, to, NULL, NULL, tempfile, ++ ret = mutt_invoke_mta (env_from, to, NULL, NULL, tempfile, + h->content->encoding == ENC8BIT); } - if (msg) +--- mutt-1.4.1.org/Muttrc.esmtp 1970-01-01 01:00:00.000000000 +0100 ++++ mutt-1.4.1/Muttrc.esmtp 2003-08-21 14:57:35.000000000 +0200 +@@ -0,0 +1,20 @@ ++# enable minimalistic smtp support builtin to Mutt ++set sendmail = "builtin" ++ ++# The name or address of your SMTP server. ++set smtp_serv = "fastmail.fm" ++ ++# Your login name on the SMTP server. Mutt presents you ++# as ``smtp_user''@``smtp_host'', unless ``envelope_from'' ++# is set, this will then be the message's envelope sender. ++# Defaults to your login name on the local system. ++set smtp_user = "ulferikson" ++ ++# If set, Mutt will try to use ESMPT and ``AUTH LOGIN'' to ++# authenticate your user. ++set smtp_pass = "" ++ ++# This variable specifies which port your SMTP server is ++# listening on. ++set smtp_port = 25 ++ diff --git a/mutt-folder_columns.patch b/mutt-folder_columns.patch index c464824..59ffc40 100644 --- a/mutt-folder_columns.patch +++ b/mutt-folder_columns.patch @@ -1,6 +1,16 @@ ---- mutt-1.4-orig/init.h 2002-04-25 15:26:37.000000000 +0200 -+++ mutt-1.4/init.h 2003-01-26 19:33:40.000000000 +0100 -@@ -519,6 +519,12 @@ +--- mutt-1.3.23-orig/mutt_menu.h Sun Oct 28 19:35:26 2001 ++++ mutt-1.3.23/mutt_menu.h Tue Oct 30 16:45:06 2001 +@@ -45,6 +45,7 @@ + int menu; /* menu definition for keymap entries. */ + int offset; /* which screen row to start the index */ + int pagelen; /* number of entries per screen */ ++ int columns; /* number of columns in menu */ + int tagprefix; + + /* Setting dialog != NULL overrides normal menu behaviour. +--- mutt-1.3.23-orig/init.h Sun Oct 28 19:35:26 2001 ++++ mutt-1.3.23/init.h Tue Oct 30 22:49:46 2001 +@@ -499,6 +499,12 @@ ** you use `+' or `=' for any other variables since expansion takes place ** during the `set' command. */ @@ -13,9 +23,9 @@ { "folder_format", DT_STR, R_INDEX, UL &FolderFormat, UL "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f" }, /* ** .pp ---- mutt-1.4-orig/globals.h 2002-01-03 21:57:19.000000000 +0100 -+++ mutt-1.4/globals.h 2003-01-26 19:34:05.000000000 +0100 -@@ -143,6 +143,7 @@ +--- mutt-1.3.23-orig/globals.h Sun Oct 28 19:35:26 2001 ++++ mutt-1.3.23/globals.h Tue Oct 30 22:44:42 2001 +@@ -138,6 +138,7 @@ WHERE unsigned short Counter INITVAL (0); WHERE short ConnectTimeout; @@ -23,19 +33,9 @@ WHERE short HistSize; WHERE short PagerContext; WHERE short PagerIndexLines; ---- mutt-1.4-orig/mutt_menu.h 2001-09-11 13:20:34.000000000 +0200 -+++ mutt-1.4/mutt_menu.h 2003-01-26 19:33:01.000000000 +0100 -@@ -45,6 +45,7 @@ - int menu; /* menu definition for keymap entries. */ - int offset; /* which screen row to start the index */ - int pagelen; /* number of entries per screen */ -+ int columns; /* number of columns in menu */ - int tagprefix; - - /* Setting dialog != NULL overrides normal menu behaviour. ---- mutt-1.4-orig/browser.c 2002-03-19 10:54:00.000000000 +0100 -+++ mutt-1.4/browser.c 2003-01-26 19:35:34.000000000 +0100 -@@ -476,12 +476,14 @@ +--- mutt-1.3.23-orig/browser.c Sun Oct 28 19:35:26 2001 ++++ mutt-1.3.23/browser.c Tue Oct 30 22:44:18 2001 +@@ -476,12 +476,13 @@ } static void init_menu (struct browser_state *state, MUTTMENU *menu, char *title, @@ -45,13 +45,13 @@ char path[_POSIX_PATH_MAX]; menu->max = state->entrylen; - -+ menu->columns = columns; -+ +- ++ menu->columns = columns; ++ if(menu->current >= menu->max) menu->current = menu->max - 1; if (menu->current < 0) -@@ -636,7 +638,7 @@ +@@ -634,7 +635,7 @@ menu->help = mutt_compile_help (helpstr, sizeof (helpstr), MENU_FOLDER, FolderHelp); @@ -60,7 +60,7 @@ FOREVER { -@@ -767,7 +769,7 @@ +@@ -765,7 +766,7 @@ } menu->current = 0; menu->top = 0; @@ -69,7 +69,7 @@ break; } } -@@ -865,7 +867,7 @@ +@@ -863,7 +864,7 @@ menu->data = state.entry; menu->current = 0; menu->top = 0; @@ -78,7 +78,7 @@ MAYBE_REDRAW (menu->redraw); } break; -@@ -895,7 +897,7 @@ +@@ -893,7 +894,7 @@ sizeof (struct folder_file) * (state.entrylen - (nentry+1))); state.entrylen--; mutt_message _("Mailbox deleted."); @@ -87,7 +87,7 @@ MAYBE_REDRAW (menu->redraw); } } -@@ -935,7 +937,7 @@ +@@ -933,7 +934,7 @@ menu->data = state.entry; menu->current = 0; menu->top = 0; @@ -96,7 +96,7 @@ } else #endif -@@ -949,7 +951,7 @@ +@@ -947,7 +948,7 @@ { menu->current = 0; menu->top = 0; @@ -105,7 +105,7 @@ } else { -@@ -1012,12 +1014,12 @@ +@@ -1010,12 +1011,12 @@ state.imap_browse = 1; imap_browse (LastDir, &state); menu->data = state.entry; @@ -120,7 +120,7 @@ else { mutt_error _("Error scanning directory."); -@@ -1101,7 +1103,7 @@ +@@ -1099,7 +1100,7 @@ #endif else if (examine_directory (menu, &state, LastDir, prefix) == -1) goto bail; @@ -129,18 +129,27 @@ break; case OP_BROWSER_NEW_FILE: ---- mutt-1.4.2.1/menu.c.orig 2004-02-14 17:54:37.148495120 +0100 -+++ mutt-1.4.2.1/menu.c 2004-02-14 17:55:46.357973680 +0100 -@@ -148,7 +148,7 @@ +--- mutt-1.3.23-orig/menu.c Sun Oct 28 19:35:26 2001 ++++ mutt-1.3.23/menu.c Wed Oct 31 09:30:28 2001 +@@ -126,14 +126,14 @@ menu->make_entry (s, l, menu, i); } --void menu_pad_string (char *s, size_t n) -+void menu_pad_string (MUTTMENU *menu, char *s, size_t n) +-void menu_pad_string (char *s, size_t l) ++void menu_pad_string (MUTTMENU *menu, char *s, size_t l) { + size_t n = mutt_strlen (s); int shift = option (OPTARROWCURSOR) ? 3 : 0; - int cols = COLS - shift; -@@ -196,69 +196,89 @@ + + l--; /* save room for the terminal \0 */ +- if (l > COLS - shift) +- l = COLS - shift; ++ if (l > (COLS / menu->columns) - shift) ++ l = (COLS / menu->columns) - shift; + + /* Let's just pad the string anyway ... */ + mutt_format_string (s, INT_MAX, l, l, 0, ' ', s, n, 1); +@@ -191,69 +191,89 @@ menu->redraw &= ~REDRAW_STATUS; } @@ -177,24 +186,12 @@ - addstr ("->"); - attrset (menu->color (i)); - addch (' '); -- } -- else -- move (i - menu->top + menu->offset, 3); + menu_item_pos(menu, i, &row, &col); + if (i < menu->max) + { + menu_make_entry (buf, sizeof (buf), menu, i); + menu_pad_string (menu, buf, sizeof (buf)); - -- print_enriched_string (menu->color(i), (unsigned char *) buf, 1); -- SETCOLOR (MT_COLOR_NORMAL); -- } -- else -- { -- if (i == menu->current) -- { -- SETCOLOR (MT_COLOR_INDICATOR); -- BKGDSET (MT_COLOR_INDICATOR); ++ + if (option (OPTARROWCURSOR)) + { + attrset (menu->color (i)); @@ -242,6 +239,19 @@ + } + } } +- else +- move (i - menu->top + menu->offset, 3); +- +- print_enriched_string (menu->color(i), (unsigned char *) buf, 1); +- SETCOLOR (MT_COLOR_NORMAL); +- } +- else +- { +- if (i == menu->current) +- { +- SETCOLOR (MT_COLOR_INDICATOR); +- BKGDSET (MT_COLOR_INDICATOR); +- } - else - attrset (menu->color (i)); - @@ -278,7 +288,7 @@ SETCOLOR (MT_COLOR_NORMAL); BKGDSET (MT_COLOR_NORMAL); -@@ -270,16 +290,18 @@ +@@ -265,16 +285,18 @@ if (menu->redraw & REDRAW_MOTION_RESYNCH) { @@ -301,7 +311,7 @@ SETCOLOR (MT_COLOR_INDICATOR); addstr ("->"); SETCOLOR (MT_COLOR_NORMAL); -@@ -288,17 +310,19 @@ +@@ -283,17 +305,19 @@ { /* erase the current indicator */ attrset (menu->color (menu->oldcurrent)); @@ -325,7 +335,7 @@ print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0); SETCOLOR (MT_COLOR_NORMAL); BKGDSET (MT_COLOR_NORMAL); -@@ -309,21 +333,22 @@ +@@ -304,21 +328,22 @@ void menu_redraw_current (MUTTMENU *menu) { char buf[STRING]; @@ -352,7 +362,7 @@ print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 1); SETCOLOR (MT_COLOR_NORMAL); } -@@ -331,7 +356,7 @@ +@@ -326,7 +351,7 @@ { SETCOLOR (MT_COLOR_INDICATOR); BKGDSET (MT_COLOR_INDICATOR); @@ -361,7 +371,7 @@ print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0); SETCOLOR (MT_COLOR_NORMAL); BKGDSET (MT_COLOR_NORMAL); -@@ -360,18 +385,18 @@ +@@ -355,18 +380,18 @@ void menu_check_recenter (MUTTMENU *menu) { @@ -384,7 +394,7 @@ menu->redraw |= REDRAW_INDEX; } else if (menu->current < menu->top) -@@ -380,7 +405,7 @@ +@@ -375,7 +400,7 @@ menu->top = menu->current; else { @@ -393,7 +403,7 @@ if (menu->top < 0) menu->top = 0; } -@@ -671,6 +696,7 @@ +@@ -666,6 +691,7 @@ p->pagelen = PAGELEN; p->color = default_color; p->search = menu_search_generic; diff --git a/mutt-home_etc.patch b/mutt-home_etc.patch index b9df344..885e1b1 100644 --- a/mutt-home_etc.patch +++ b/mutt-home_etc.patch @@ -1,10 +1,11 @@ -diff -Nur mutt-1.4.1.orig/configure.in mutt-1.4.1/configure.in ---- mutt-1.4.1.orig/configure.in Mon Dec 8 13:51:51 2003 -+++ mutt-1.4.1/configure.in Mon Dec 8 14:01:22 2003 -@@ -592,6 +592,31 @@ - ]) - AM_CONDITIONAL(USE_SASL, test x$need_sasl = xyes) +diff -Nur mutt-1.5.11.orig/configure.in mutt-1.5.11/configure.in +--- mutt-1.5.11.orig/configure.in 2006-05-11 23:23:13.000000000 +0200 ++++ mutt-1.5.11/configure.in 2006-05-12 00:58:13.000000000 +0200 +@@ -816,6 +816,32 @@ + fi]) + dnl -- end cache -- ++dnl -- home-etc -- +AC_ARG_WITH(home-etc, [ --with-home-etc[=PFX] Use HOME-ETC library to allow user keeping it's configuration files in a non-standard place ], + [ + if test "$with_home_etc" != "no" @@ -33,32 +34,47 @@ diff -Nur mutt-1.4.1.orig/configure.in mutt-1.4.1/configure.in if test "$need_md5" = "yes" then MUTT_LIB_OBJECTS="$MUTT_LIB_OBJECTS md5c.o" -diff -Nur mutt-1.4.1.orig/doc/mutt.man mutt-1.4.1/doc/mutt.man ---- mutt-1.4.1.orig/doc/mutt.man Wed Jul 24 10:41:31 2002 -+++ mutt-1.4.1/doc/mutt.man Mon Dec 8 13:53:17 2003 -@@ -122,13 +122,13 @@ +diff -Nur mutt-1.5.11.orig/doc/mutt.man mutt-1.5.11/doc/mutt.man +--- mutt-1.5.11.orig/doc/mutt.man 2005-08-18 21:38:54.000000000 +0200 ++++ mutt-1.5.11/doc/mutt.man 2006-05-12 00:58:13.000000000 +0200 +@@ -122,6 +122,8 @@ + .IP "MAILDIR" + Full path of the user's spool mailbox. Commonly used when the spool + mailbox is a ++.IP "HOME_ETC" ++Path to alternative configuration directory. + .B maildir (5) + folder. + .IP "MAILCAPS" +@@ -138,17 +140,17 @@ Specifies the editor to use when composing messages. .SH FILES .PP -.IP "~/.muttrc or ~/.mutt/muttrc" +.IP "$HOME_ETC/.muttrc" or "$HOME_ETC/.mutt/muttrc" or "~/.muttrc" or "~/.mutt/muttrc" User configuration file. - .IP "/etc/Muttrc" + .IP "@sysconfdir@/Muttrc" System-wide configuration file. .IP "/tmp/muttXXXXXX" Temporary files created by Mutt. -.IP "~/.mailcap" -+.IP "$HOME_ETC/.mailcap" or "~/.mailcap" ++.IP "~/.mailcap or $HOME_ETC/.mailcap" User definition for handling non-text MIME types. - .IP "/etc/mailcap" + .IP "@sysconfdir@/mailcap" System definition for handling non-text MIME types. -diff -Nur mutt-1.4.1.orig/init.c mutt-1.4.1/init.c ---- mutt-1.4.1.orig/init.c Mon Dec 8 13:51:51 2003 -+++ mutt-1.4.1/init.c Mon Dec 8 14:02:19 2003 -@@ -25,6 +25,12 @@ - #include "mbyte.h" - #include "charset.h" +-.IP "~/.mime.types" ++.IP "~/.mime.types or $HOME_ETC/.mime.types" + User's personal mapping between MIME types and file extensions. + .IP "@sysconfdir@/mime.types" + System mapping between MIME types and file extensions. +diff -Nur mutt-1.5.11.orig/init.c mutt-1.5.11/init.c +--- mutt-1.5.11.orig/init.c 2006-05-11 23:23:13.000000000 +0200 ++++ mutt-1.5.11/init.c 2006-05-12 00:58:40.000000000 +0200 +@@ -35,7 +35,12 @@ + #include "mutt_ssl.h" + #endif +- +#ifdef HAVE_HOME_ETC_H +# include +# define H_CFDIR _HEdir @@ -66,9 +82,32 @@ diff -Nur mutt-1.4.1.orig/init.c mutt-1.4.1/init.c +# define H_CFDIR Homedir +#endif - #ifdef HAVE_PGP - #include "pgp.h" -@@ -1892,13 +1898,13 @@ + #include "mx.h" + #include "init.h" +@@ -2334,7 +2339,21 @@ + else + { + /* Default search path from RFC1524 */ +- MailcapPath = safe_strdup ("~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap"); ++ ++#define MAILCAPPATHS "~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap" ++#ifdef HAVE_HOME_ETC_H ++ ++ MailcapPath = safe_malloc (mutt_strlen (MAILCAPPATHS) + mutt_strlen (_HEdir) + 2); ++ if (_HEdir != NULL && (mutt_strlen (_HEdir)) > 0) ++ sprintf (MailcapPath, "%s:%s", _HEdir, MAILCAPPATHS); /* __SPRINTF_CHECKED__ */ ++ else ++ strcpy (MailcapPath, MAILCAPPATHS); /* __SPRCPY_CHECKED__ */ ++ ++#else ++ ++ MailcapPath = safe_strdup (MAILCAPPATHS); ++ ++#endif + } + + Tempdir = safe_strdup ((p = getenv ("TMPDIR")) ? p : "/tmp"); +@@ -2415,13 +2434,13 @@ if (!Muttrc) { @@ -86,44 +125,67 @@ diff -Nur mutt-1.4.1.orig/init.c mutt-1.4.1/init.c default_rc = 1; Muttrc = safe_strdup (buffer); -diff -Nur mutt-1.4.1.orig/muttbug.sh.in mutt-1.4.1/muttbug.sh.in ---- mutt-1.4.1.orig/muttbug.sh.in Mon Dec 8 13:51:50 2003 -+++ mutt-1.4.1/muttbug.sh.in Mon Dec 8 13:53:17 2003 -@@ -244,13 +244,21 @@ - if test "$personal" = "yes" ; then - CANDIDATES=".muttrc-${MUTTVERSION} .muttrc .mutt/muttrc-${MUTTVERSION} .mutt/muttrc" - MATCHED="none" -+ if test -n "$HOME_ETC" ; then -+ for f in $CANDIDATES; do -+ if test -f "${HOME_ETC}/$f" ; then -+ MATCHED="${HOME_ETC}/$f" -+ break -+ fi -+ done -+ else - for f in $CANDIDATES; do - if test -f "${HOME}/$f" ; then - MATCHED="${HOME}/$f" - break - fi - done -- -+ fi - if test "$MATCHED" = "none" ; then - echo "Warning: Can't find your personal .muttrc." >&2 - else -diff -Nur mutt-1.4.1.orig/sendlib.c mutt-1.4.1/sendlib.c ---- mutt-1.4.1.orig/sendlib.c Mon Dec 8 13:51:51 2003 -+++ mutt-1.4.1/sendlib.c Mon Dec 8 14:02:54 2003 -@@ -29,7 +29,6 @@ - #include "pager.h" - #include "charset.h" +@@ -2526,10 +2545,10 @@ + } -- - #include - #include - #include -@@ -40,6 +39,13 @@ + uname (&u); +- pathlen = strlen (Homedir) + sizeof("/.slrnfaces/") ++ pathlen = strlen (H_CFDIR) + sizeof("/.slrnfaces/") + + strlen (u.nodename) + 30; + fifo = safe_malloc (pathlen); +- sprintf (fifo, "%s/.slrnfaces", Homedir); ++ sprintf (fifo, "%s/.slrnfaces", H_CFDIR); + if (mkdir (fifo, 0700)) + { + if (errno != EEXIST) +@@ -2544,7 +2563,7 @@ + FILE *fp; + + /* We'll abuse fifo filename memory here. It's long enough. */ +- sprintf (fifo, "%s/.slrnfaces/README", Homedir); ++ sprintf (fifo, "%s/.slrnfaces/README", H_CFDIR); + if ((fp = fopen (fifo, "w")) != NULL) + { + fputs (_( +@@ -2560,7 +2579,7 @@ + } + } + +- status = snprintf (fifo, pathlen, "%s/.slrnfaces/%s.%ld", Homedir, ++ status = snprintf (fifo, pathlen, "%s/.slrnfaces/%s.%ld", H_CFDIR, + u.nodename, (long)getpid()); + if (status < 0) + goto clean_face; +diff -Nur mutt-1.5.11.orig/mutt_ssl.c mutt-1.5.11/mutt_ssl.c +--- mutt-1.5.11.orig/mutt_ssl.c 2005-08-03 11:17:46.000000000 +0200 ++++ mutt-1.5.11/mutt_ssl.c 2006-05-12 00:58:13.000000000 +0200 +@@ -58,6 +58,13 @@ + #define HAVE_ENTROPY() (!access(DEVRANDOM, R_OK) || entropy_byte_count >= 16) + #endif + ++#ifdef HAVE_HOME_ETC_H ++# include ++# define H_CFDIR _HEdir ++#else ++# define H_CFDIR Homedir ++#endif ++ + typedef struct _sslsockdata + { + SSL_CTX *ctx; +@@ -162,7 +169,7 @@ + /* load entropy from egd sockets */ + #ifdef HAVE_RAND_EGD + add_entropy (getenv ("EGDSOCKET")); +- snprintf (path, sizeof(path), "%s/.entropy", NONULL(Homedir)); ++ snprintf (path, sizeof(path), "%s/.entropy", NONULL(H_CFDIR)); + add_entropy (path); + add_entropy ("/tmp/entropy"); + #endif +diff -Nur mutt-1.5.11.orig/sendlib.c mutt-1.5.11/sendlib.c +--- mutt-1.5.11.orig/sendlib.c 2006-05-11 23:23:13.000000000 +0200 ++++ mutt-1.5.11/sendlib.c 2006-05-12 00:58:13.000000000 +0200 +@@ -45,6 +45,13 @@ #include #include @@ -137,7 +199,7 @@ diff -Nur mutt-1.4.1.orig/sendlib.c mutt-1.4.1/sendlib.c #ifdef HAVE_SYSEXITS_H #include #else /* Make sure EX_OK is defined */ -@@ -958,9 +964,9 @@ +@@ -908,9 +915,9 @@ /* Given a file with path ``s'', see if there is a registered MIME type. * returns the major MIME type, and copies the subtype to ``d''. First look @@ -149,8 +211,8 @@ diff -Nur mutt-1.4.1.orig/sendlib.c mutt-1.4.1/sendlib.c + * match `ps.gz' when `gz' also exists. */ - static int lookup_mime_type (BODY *att, const char *path) -@@ -989,7 +995,7 @@ + int mutt_lookup_mime_type (BODY *att, const char *path) +@@ -939,7 +946,7 @@ switch (count) { case 0: diff --git a/mutt-manual.patch b/mutt-manual.patch index c51314d..1472476 100644 --- a/mutt-manual.patch +++ b/mutt-manual.patch @@ -1,27 +1,11 @@ -diff -urN mutt-1.4.orig/Muttrc.head.in mutt-1.4/Muttrc.head.in ---- mutt-1.4.orig/Muttrc.head.in Mon Mar 20 11:25:49 2000 -+++ mutt-1.4/Muttrc.head.in Thu Aug 1 21:48:21 2002 -@@ -15,9 +15,9 @@ - macro pager \cb |urlview\n 'call urlview to extract URLs out of a message' +--- mutt-1.5.13/Muttrc.head.in.orig 2006-08-23 22:29:05.494260250 +0200 ++++ mutt-1.5.13/Muttrc.head.in 2006-08-23 22:29:30.383815750 +0200 +@@ -15,7 +15,7 @@ + macro attach,compose \cb " urlview" "call urlview to extract URLs out of a message" # Show documentation when pressing F1 --macro generic "!less @docdir@/manual.txt\n" "Show Mutt documentation" --macro index "!less @docdir@/manual.txt\n" "Show Mutt documentation" --macro pager "!less @docdir@/manual.txt\n" "Show Mutt documentation" -+macro generic "!less @docdir@/manual.txt.gz\n" "Show Mutt documentation" -+macro index "!less @docdir@/manual.txt.gz\n" "Show Mutt documentation" -+macro pager "!less @docdir@/manual.txt.gz\n" "Show Mutt documentation" +-macro generic,pager " less @docdir@/manual.txt" "show Mutt documentation" ++macro generic,pager " less @docdir@/manual.txt.gz" "show Mutt documentation" - # If Mutt is unable to determine your site's domain name correctly, you can - # set the default here. ---- mutt-1.4.2.1/doc/mutt.man.orig Mon Feb 16 14:46:34 2004 -+++ mutt-1.4.2.1/doc/mutt.man Mon Feb 16 14:58:25 2004 -@@ -138,7 +138,7 @@ - System mapping between MIME types and file extensions. - .IP "/usr/local/bin/mutt_dotlock" - The privileged dotlocking program. --.IP "/usr/local/doc/mutt/manual.txt" -+.IP "/usr/local/doc/mutt/manual.txt.gz" - The Mutt manual. - .SH BUGS - .PP + # show the incoming mailboxes list (just like "mutt -y") and back when pressing "y" + macro index,pager y "?" "show incoming mailboxes list" diff --git a/mutt-po.patch b/mutt-po.patch index 1c2fe96..adbd2c6 100644 --- a/mutt-po.patch +++ b/mutt-po.patch @@ -1,23 +1,11 @@ -diff -u mutt-1.4.2.1/po.orig/bg.po mutt-1.4.2.1/po/bg.po ---- mutt-1.4.2.1/po.orig/bg.po Thu Feb 12 09:52:41 2004 -+++ mutt-1.4.2.1/po/bg.po Tue Aug 3 20:24:45 2004 -@@ -4,7 +4,6 @@ - # - # todo: decide how to translate: mailing list - # --#, fuzzy - msgid "" - msgstr "" - "Project-Id-Version: Mutt 1.4\n" -diff -u mutt-1.4.2.1/po.orig/pt_BR.po mutt-1.4.2.1/po/pt_BR.po ---- mutt-1.4.2.1/po.orig/pt_BR.po Thu Feb 12 09:52:35 2004 -+++ mutt-1.4.2.1/po/pt_BR.po Tue Aug 3 20:09:23 2004 -@@ -8,7 +8,7 @@ +--- mutt-1.5.9/po/pt_BR.po.orig 2005-03-13 17:38:40.000000000 +0100 ++++ mutt-1.5.9/po/pt_BR.po 2005-03-31 16:54:59.167047152 +0200 +@@ -9,7 +9,7 @@ "Language-Team: LIE-BR (http://lie-br.conectiva.com.br)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" -"Content-Transfer-Encoding:\n" +"Content-Transfer-Encoding: 8bit\n" - #: account.c:144 + #: account.c:148 #, fuzzy, c-format diff --git a/mutt-rr.compressed.patch b/mutt-rr.compressed.patch index e5988bb..bd4ace6 100644 --- a/mutt-rr.compressed.patch +++ b/mutt-rr.compressed.patch @@ -1,74 +1,7 @@ -diff -Nur mutt-1.3.27.orig/Makefile.am mutt-1.3.27/Makefile.am ---- mutt-1.3.27.orig/Makefile.am Fri Nov 9 01:18:28 2001 -+++ mutt-1.3.27/Makefile.am Fri Feb 1 22:51:32 2002 -@@ -18,7 +18,8 @@ - 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 \ -+ commands.c complete.c compose.c compress.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 \ - main.c mbox.c menu.c mh.c mx.c pager.c parse.c pattern.c \ -@@ -70,8 +71,8 @@ - browser.h mbyte.h remailer.h url.h mutt_ssl_nss.c pgppacket.c - - EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP TODO configure acconfig.h account.h \ -- attach.h buffy.h charset.h copy.h dotlock.h functions.h gen_defs \ -- globals.h hash.h history.h init.h keymap.h \ -+ attach.h buffy.h charset.h compress.h copy.h dotlock.h functions.h \ -+ gen_defs globals.h hash.h history.h init.h keymap.h \ - mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \ - mutt_regex.h mutt_sasl.h mutt_socket.h mutt_ssl.h mutt_tunnel.h \ - mx.h pager.h pgp.h pop.h protos.h reldate.h rfc1524.h rfc2047.h \ -diff -Nur mutt-1.3.27.orig/Muttrc.head mutt-1.3.27/Muttrc.head ---- mutt-1.3.27.orig/Muttrc.head Tue Jan 1 21:18:02 2002 -+++ mutt-1.3.27/Muttrc.head Fri Feb 1 22:51:32 2002 -@@ -19,6 +19,15 @@ - macro index "!less /usr/local/doc/mutt/manual.txt\n" "Show Mutt documentation" - macro pager "!less /usr/local/doc/mutt/manual.txt\n" "Show Mutt documentation" - -+# Use folders which match on \\.gz$ as gzipped folders: -+# open-hook \\.gz$ "gzip -cd %f > %t" -+# close-hook \\.gz$ "gzip -c %t > %f" -+# append-hook \\.gz$ "gzip -c %t >> %f" -+ -+# open-hook \\.bz2$ "bzip2 -cd %f > %t" -+# close-hook \\.bz2$ "bzip2 -c %t > %f" -+# append-hook \\.bz2$ "bzip2 -c %t >> %f" -+ - # If Mutt is unable to determine your site's domain name correctly, you can - # set the default here. - # -diff -Nur mutt-1.3.27.orig/Muttrc.head.in mutt-1.3.27/Muttrc.head.in ---- mutt-1.3.27.orig/Muttrc.head.in Mon Mar 20 11:25:49 2000 -+++ mutt-1.3.27/Muttrc.head.in Fri Feb 1 22:51:32 2002 -@@ -19,6 +19,15 @@ - macro index "!less @docdir@/manual.txt\n" "Show Mutt documentation" - macro pager "!less @docdir@/manual.txt\n" "Show Mutt documentation" - -+# Use folders which match on \\.gz$ as gzipped folders: -+# open-hook \\.gz$ "gzip -cd %f > %t" -+# close-hook \\.gz$ "gzip -c %t > %f" -+# append-hook \\.gz$ "gzip -c %t >> %f" -+ -+# open-hook \\.bz2$ "bzip2 -cd %f > %t" -+# close-hook \\.bz2$ "bzip2 -c %t > %f" -+# append-hook \\.bz2$ "bzip2 -c %t >> %f" -+ - # If Mutt is unable to determine your site's domain name correctly, you can - # set the default here. - # -diff -Nur mutt-1.3.27.orig/PATCHES mutt-1.3.27/PATCHES ---- mutt-1.3.27.orig/PATCHES Mon Nov 26 20:16:22 2001 -+++ mutt-1.3.27/PATCHES Fri Feb 1 22:51:32 2002 -@@ -0,0 +1 @@ -+patch-1.3.27.rr.compressed.1 -diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c ---- mutt-1.3.27.orig/compress.c Thu Jan 1 01:00:00 1970 -+++ mutt-1.3.27/compress.c Fri Feb 1 22:51:32 2002 -@@ -0,0 +1,483 @@ +diff -urN mutt-1.5.12/compress.c mutt-1.5.12-ro/compress.c +--- mutt-1.5.12/compress.c 1970-01-01 01:00:00.000000000 +0100 ++++ mutt-1.5.12-ro/compress.c 2006-07-15 20:13:19.000000000 +0200 +@@ -0,0 +1,487 @@ +/* + * Copyright (C) 1997 Alain Penders + * @@ -87,6 +20,10 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + ++#if HAVE_CONFIG_H ++# include "config.h" ++#endif ++ +#include "mutt.h" + +#ifdef USE_COMPRESSED @@ -269,8 +206,8 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + COMPRESS_INFO *ci = (COMPRESS_INFO *) ctx->compressinfo; + if (ci->size != get_size (ctx->realpath)) + { -+ safe_free ((void**)&ctx->compressinfo); -+ safe_free ((void**)&ctx->realpath); ++ FREE (&ctx->compressinfo); ++ FREE (&ctx->realpath); + mutt_error _("Mailbox was corrupted!"); + return (-1); + } @@ -286,7 +223,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + COMPRESS_INFO *ci = set_compress_info (ctx); + if (!ci->open) { + ctx->magic = 0; -+ safe_free ((void**)ctx->compressinfo); ++ FREE (ctx->compressinfo); + return (-1); + } + if (!ci->close || access (ctx->path, W_OK) != 0) @@ -306,7 +243,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + if ((fp = fopen (ctx->realpath, "r")) == NULL) + { + mutt_perror (ctx->realpath); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + return (-1); + } + mutt_block_signals (); @@ -315,7 +252,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + fclose (fp); + mutt_unblock_signals (); + mutt_error _("Unable to lock mailbox!"); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + return (-1); + } + @@ -331,10 +268,10 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + { + mutt_any_key_to_continue (NULL); + ctx->magic = 0; -+ safe_free ((void**)ctx->compressinfo); ++ FREE (ctx->compressinfo); + mutt_error (_("Error executing: %s : unable to open the mailbox!\n"), cmd); + } -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + if (rc) + return (-1); + @@ -348,7 +285,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + +void restore_path (CONTEXT* ctx) +{ -+ safe_free ((void **)&ctx->path); ++ FREE (&ctx->path); + ctx->path = ctx->realpath; +} + @@ -370,7 +307,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + return (mutt_open_read_compressed (ctx)); + + ctx->magic = 0; -+ safe_free ((void**)&ctx->compressinfo); ++ FREE (&ctx->compressinfo); + return (-1); + } + @@ -407,7 +344,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + remove_file (ctx); + + restore_path (ctx); -+ safe_free ((void**)&ctx->compressinfo); ++ FREE (&ctx->compressinfo); + } +} + @@ -429,7 +366,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + if ((fp = fopen (ctx->realpath, "a")) == NULL) + { + mutt_perror (ctx->realpath); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + return (-1); + } + mutt_block_signals (); @@ -439,7 +376,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + mutt_unblock_signals (); + mutt_error _("Unable to lock mailbox!"); + store_size (ctx); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + return (-1); + } + @@ -459,7 +396,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + mutt_unblock_signals (); + fclose (fp); + -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + + store_size (ctx); + @@ -505,7 +442,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + if ((fp = fopen (ctx->realpath, "a")) == NULL) + { + mutt_perror (ctx->realpath); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + return (-1); + } + mutt_block_signals (); @@ -514,7 +451,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + fclose (fp); + mutt_unblock_signals (); + mutt_error _("Unable to lock mailbox!"); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + return (-1); + } + @@ -533,7 +470,7 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + mutt_any_key_to_continue (NULL); + mutt_error (_(" %s: Error compressing mailbox! Uncompressed one kept!\n"), + ctx->path); -+ safe_free ((void **)&cmd); ++ FREE (&cmd); + mbox_unlock_compressed (ctx, fp); + mutt_unblock_signals (); + fclose (fp); @@ -545,16 +482,16 @@ diff -Nur mutt-1.3.27.orig/compress.c mutt-1.3.27/compress.c + fclose (fp); + remove_file (ctx); + restore_path (ctx); -+ safe_free ((void **)&cmd); -+ safe_free ((void **)&ctx->compressinfo); ++ FREE (&cmd); ++ FREE (&ctx->compressinfo); + + return (0); +} + +#endif /* USE_COMPRESSED */ -diff -Nur mutt-1.3.27.orig/compress.h mutt-1.3.27/compress.h ---- mutt-1.3.27.orig/compress.h Thu Jan 1 01:00:00 1970 -+++ mutt-1.3.27/compress.h Fri Feb 1 22:51:32 2002 +diff -urN mutt-1.5.12/compress.h mutt-1.5.12-ro/compress.h +--- mutt-1.5.12/compress.h 1970-01-01 01:00:00.000000000 +0100 ++++ mutt-1.5.12-ro/compress.h 2006-07-15 20:13:19.000000000 +0200 @@ -0,0 +1,27 @@ +/* + * Copyright (C) 1997 Alain Penders @@ -583,25 +520,67 @@ diff -Nur mutt-1.3.27.orig/compress.h mutt-1.3.27/compress.h +int mutt_test_compress_command (const char *); +int mutt_check_mailbox_compressed (CONTEXT *); +void mutt_fast_close_compressed (CONTEXT *); -diff -Nur mutt-1.3.27.orig/configure.in mutt-1.3.27/configure.in ---- mutt-1.3.27.orig/configure.in Fri Feb 1 22:51:17 2002 -+++ mutt-1.3.27/configure.in Fri Feb 1 22:51:32 2002 -@@ -644,6 +644,11 @@ +diff -urN mutt-1.5.12/config.h.in mutt-1.5.12-ro/config.h.in +--- mutt-1.5.12/config.h.in 2006-07-14 20:15:56.000000000 +0200 ++++ mutt-1.5.12-ro/config.h.in 2006-07-15 20:13:19.000000000 +0200 +@@ -510,6 +510,9 @@ + /* Define to enable Sun mailtool attachments support. */ + #undef SUN_ATTACHMENT + ++/* Define to enable compressed mailboxes support */ ++#undef USE_COMPRESSED ++ + /* Define to use dotlocking for mailboxes. */ + #undef USE_DOTLOCK + +diff -urN mutt-1.5.12/configure mutt-1.5.12-ro/configure +--- mutt-1.5.12/configure 2006-07-14 20:15:42.000000000 +0200 ++++ mutt-1.5.12-ro/configure 2006-07-15 20:13:19.000000000 +0200 +@@ -872,6 +872,7 @@ + --enable-hcache Enable header caching + --disable-iconv Disable iconv support + --disable-nls Do not use Native Language Support ++ --enable-compressed Enable compressed folders support + + Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] +@@ -17290,6 +17291,17 @@ + fi + + ++# Check whether --enable-compressed or --disable-compressed was given. ++if test "${enable_compressed+set}" = set; then ++ enableval="$enable_compressed" ++ if test x$enableval = xyes; then ++ cat >> confdefs.h <<\EOF ++#define USE_COMPRESSED 1 ++EOF ++ ++ fi ++fi ++ + + # Check whether --with-exec-shell was given. + if test "${with_exec_shell+set}" = set; then +diff -urN mutt-1.5.12/configure.in mutt-1.5.12-ro/configure.in +--- mutt-1.5.12/configure.in 2006-07-14 20:15:32.000000000 +0200 ++++ mutt-1.5.12-ro/configure.in 2006-07-15 20:13:19.000000000 +0200 +@@ -745,6 +745,11 @@ AC_DEFINE(LOCALES_HACK,1,[ Define if the result of isprint() is unreliable. ]) fi]) -+AC_ARG_ENABLE(compressed, [ --enable-compressed Enable compressed folders support ], ++AC_ARG_ENABLE(compressed, AC_HELP_STRING([--enable-compressed], [Enable compressed folders support]), + [if test x$enableval = xyes; then + AC_DEFINE(USE_COMPRESSED,1, [ Define to support compressed folders. ]) + fi]) + - AC_ARG_WITH(exec-shell, [ --with-exec-shell=SHELL Specify alternate shell (ONLY if /bin/sh is broken)], + AC_ARG_WITH(exec-shell, AC_HELP_STRING([--with-exec-shell=SHELL], [Specify alternate shell (ONLY if /bin/sh is broken)]), [if test $withval != yes; then - AC_DEFINE_UNQUOTED(EXECSHELL, "$withval") -diff -Nur mutt-1.3.27.orig/curs_main.c mutt-1.3.27/curs_main.c ---- mutt-1.3.27.orig/curs_main.c Wed Jan 23 00:42:01 2002 -+++ mutt-1.3.27/curs_main.c Fri Feb 1 22:51:32 2002 -@@ -1010,6 +1010,11 @@ + AC_DEFINE_UNQUOTED(EXECSHELL, "$withval", +diff -urN mutt-1.5.12/curs_main.c mutt-1.5.12-ro/curs_main.c +--- mutt-1.5.12/curs_main.c 2006-06-08 13:50:29.000000000 +0200 ++++ mutt-1.5.12-ro/curs_main.c 2006-07-15 20:13:19.000000000 +0200 +@@ -1096,6 +1096,11 @@ { int check; @@ -613,20 +592,22 @@ diff -Nur mutt-1.3.27.orig/curs_main.c mutt-1.3.27/curs_main.c mutt_str_replace (&LastFolder, Context->path); oldcount = Context ? Context->msgcount : 0; -diff -Nur mutt-1.3.27.orig/doc/manual.sgml mutt-1.3.27/doc/manual.sgml ---- mutt-1.3.27.orig/doc/manual.sgml Tue Jan 1 21:18:05 2002 -+++ mutt-1.3.27/doc/manual.sgml Fri Feb 1 22:51:32 2002 -@@ -2318,6 +2318,176 @@ - macro pager \cb |urlview\n - +diff -urN mutt-1.5.12/doc/manual.xml.head mutt-1.5.12-ro/doc/manual.xml.head +--- mutt-1.5.12/doc/manual.xml.head 2006-07-14 20:09:13.000000000 +0200 ++++ mutt-1.5.12-ro/doc/manual.xml.head 2006-07-15 20:20:18.000000000 +0200 +@@ -4747,6 +4747,205 @@ -+Compressed folders Support (OPTIONAL) -+

+ + ++ ++Compressed folders Support (OPTIONAL) + ++ +If Mutt was compiled with compressed folders support (by running the -+configure script with the ++--enable-compressed flag), Mutt can open folders ++stored in an arbitrary format, provided that the user has a script to ++convert from/to this format to one of the accepted. + +The most common use is to open compressed archived folders e.g. with +gzip. @@ -637,349 +618,167 @@ diff -Nur mutt-1.3.27.orig/doc/manual.sgml mutt-1.3.27/doc/manual.sgml +folder to the accepted format, appending to it and converting back to +the user-defined format. + -+There are three hooks defined (, -+ and ) which define commands to uncompress and compress -+a folder and to append messages to an existing compressed folder -+respectively. ++There are three hooks defined (open-hook, close-hook and append-hook) which define commands to ++uncompress and compress a folder and to append messages to an existing ++compressed folder respectively. + +For example: + -+ ++ +open-hook \\.gz$ "gzip -cd %f > %t" +close-hook \\.gz$ "gzip -c %t > %f" +append-hook \\.gz$ "gzip -c %t >> %f" -+ ++ + -+You do not have to specify all of the commands. If you omit , the folder will be open and -+closed again each time you will add to it. If you omit (or give empty command) , the -+folder will be open in the mode. If you specify though you'll be able to append -+to the folder. ++You do not have to specify all of the commands. If you omit append-hook, the folder will be open and ++closed again each time you will add to it. If you omit close-hook (or give empty command) , the ++folder will be open in the mode. If you specify append-hook though you'll be able to ++append to the folder. + +Note that Mutt will only try to use hooks if the file is not in one of +the accepted formats. In particular, if the file is empty, mutt +supposes it is not compressed. This is important because it allows the +use of programs that do not have well defined extensions. Just use -+&dquot;.&dquot; as a regexp. But this may be surprising if your -+compressing script produces empty files. In this situation, unset , so that the compressed file -+will be removed if you delete all of the messages. ++"." as a regexp. But this may be surprising if your ++compressing script produces empty files. In this situation, unset ++$save_empty, so that ++the compressed file will be removed if you delete all of the messages. ++ ++ ++ ++Open a compressed mailbox for reading + -+Open a compressed mailbox for reading

-+Usage: ++Usage: open-hook regexp "command" + -+The command is the command that can be used for ++opening the folders whose names match regexp. + -+The command string is the printf-like format ++string, and it should accept two parameters: %f, which is ++replaced with the (compressed) folder name, and %t which is ++replaced with the name of the temporary folder to which to write. + +%f and %t can be repeated any number of times in the +command string, and all of the entries are replaced with the +appropriate folder name. In addition, %% is replaced by +%, as in printf, and any other %anything is left as is. + -+The command should not remove the original compressed file. The ++command should return non-zero exit status if it ++fails, so mutt knows something's wrong. + +Example: + -+ ++ +open-hook \\.gz$ "gzip -cd %f > %t" -+ -+ -+If the + -+Write a compressed mailbox

-+Usage: command is empty, this operation is ++disabled for this file type. ++ ++ + -+This is used to close the folder that was open with the command after some changes were made to it. ++ ++Write a compressed mailbox + -+The command. Temporary folder -+in this case is the folder previously produced by the command. -+ -+The -+close-hook \\.gz$ "gzip -c %t > %f" -+ ++ ++Usage: close-hook regexp "command" + -+If the open-hook command after some changes were ++made to it. + -+ is not called when you exit -+from the folder if the folder was not changed. ++The command string is the command that can be ++used for closing the folders whose names match ++regexp. It has the same format as in the open-hook command. Temporary folder in this ++case is the folder previously produced by the open-hook command. + -+Append a message to a compressed mailbox

-+Usage: command. -+The temporary folder in this case contains the messages that are being -+appended. -+ -+The command should not remove the decompressed file. The ++command should return non-zero exit status if it ++fails, so mutt knows something's wrong. + +Example: + -+ -+append-hook \\.gz$ "gzip -c %t >> %f" -+ -+ -+When is used, the folder is -+not opened, which saves time, but this means that we can not find out -+what the folder type is. Thus the default () type is always supposed (i.e. -+this is the format used for the temporary folder). -+ -+If the file does not exist when you save to it, is called, and not . is only -+for appending to existing folders. -+ -+If the and respectively) each time you will add to it. -+ -+Encrypted folders -+

-+The compressed folders support can also be used to handle encrypted -+folders. If you want to encrypt a folder with PGP, you may want to use -+the following hooks: -+ -+ -+open-hook \\.pgp$ "pgp -f < %f > %t" -+close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f" -+ -+ -+Please note, that PGP does not support appending to an encrypted -+folder, so there is no append-hook defined. -+ -+If you are using GnuPG instead of PGP, you may use the following hooks -+instead: -+ -+ -+open-hook \\.gpg$ "gpg --decrypt < %f > %t" -+close-hook \\.gpg$ "gpg --encrypt --recipient YourGpgUserIdOrKeyId < %t > %f" -+ -+ -+Mutt's MIME Support -

- Quite a bit of effort has been made to make Mutt the premier text-mode -@@ -2868,12 +3038,16 @@ - - -+ - - - -+ - - - -+ - - - -+Compressed folders Support (OPTIONAL) -+

-+ -+If Mutt was compiled with compressed folders support (by running the -+, -+ and ) which define commands to uncompress and compress -+a folder and to append messages to an existing compressed folder -+respectively. -+ -+For example: -+ -+ -+open-hook \\.gz$ "gzip -cd %f > %t" ++ +close-hook \\.gz$ "gzip -c %t > %f" -+append-hook \\.gz$ "gzip -c %t >> %f" -+ -+ -+You do not have to specify all of the commands. If you omit , the folder will be open and -+closed again each time you will add to it. If you omit (or give empty command) , the -+folder will be open in the mode. If you specify though you'll be able to append -+to the folder. -+ -+Note that Mutt will only try to use hooks if the file is not in one of -+the accepted formats. In particular, if the file is empty, mutt -+supposes it is not compressed. This is important because it allows the -+use of programs that do not have well defined extensions. Just use -+&dquot;.&dquot; as a regexp. But this may be surprising if your -+compressing script produces empty files. In this situation, unset , so that the compressed file -+will be removed if you delete all of the messages. -+ -+Open a compressed mailbox for reading

-+Usage: + -+The command is empty, this operation is ++disabled for this file type, and the file can only be open in the ++read-only mode. + -+%f and %t can be repeated any number of times in the -+command string, and all of the entries are replaced with the -+appropriate folder name. In addition, %% is replaced by -+%, as in printf, and any other %anything is left as is. -+ -+The -+open-hook \\.gz$ "gzip -cd %f > %t" -+ ++close-hook is not called when you ++exit from the folder if the folder was not changed. ++ ++ + -+If the ++Append a message to a compressed mailbox + -+Write a compressed mailbox

-+Usage: ++Usage: append-hook regexp "command" + -+This is used to close the folder that was open with the command after some changes were made to it. ++This command is used for saving to an existing compressed folder. The ++command is the command that can be used for ++appending to the folders whose names match ++regexp. It has the same format as in the open-hook command. The temporary folder in ++this case contains the messages that are being appended. + -+The command. Temporary folder -+in this case is the folder previously produced by the command. -+ -+The command should not remove the decompressed file. The ++command should return non-zero exit status if it ++fails, so mutt knows something's wrong. + +Example: + -+ -+close-hook \\.gz$ "gzip -c %t > %f" -+ -+ -+If the is not called when you exit -+from the folder if the folder was not changed. -+ -+Append a message to a compressed mailbox

-+Usage: command. -+The temporary folder in this case contains the messages that are being -+appended. -+ -+The ++ +append-hook \\.gz$ "gzip -c %t >> %f" -+ -+ -+When is used, the folder is -+not opened, which saves time, but this means that we can not find out -+what the folder type is. Thus the default () type is always supposed (i.e. -+this is the format used for the temporary folder). -+ -+If the file does not exist when you save to it, is called, and not . is only -+for appending to existing folders. -+ -+If the and respectively) each time you will add to it. -+ -+Encrypted folders -+

++ ++ ++When append-hook is used, the folder ++is not opened, which saves time, but this means that we can not find ++out what the folder type is. Thus the default ($mbox_type) type is always ++supposed (i.e. this is the format used for the temporary folder). ++ ++If the file does not exist when you save to it, close-hook is called, and not append-hook. append-hook is only for appending to ++existing folders. ++ ++If the command is empty, this operation is ++disabled for this file type. In this case, the folder will be open and ++closed again (using open-hook and ++close-hookrespectively) each time you ++will add to it. ++ ++ ++ ++ ++Encrypted folders ++ ++ +The compressed folders support can also be used to handle encrypted +folders. If you want to encrypt a folder with PGP, you may want to use +the following hooks: + -+ ++ +open-hook \\.pgp$ "pgp -f < %f > %t" +close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f" -+ ++ + +Please note, that PGP does not support appending to an encrypted +folder, so there is no append-hook defined. @@ -987,79 +786,28 @@ diff -Nur mutt-1.3.27.orig/doc/manual.sgml.head mutt-1.3.27/doc/manual.sgml.head +If you are using GnuPG instead of PGP, you may use the following hooks +instead: + -+ ++ +open-hook \\.gpg$ "gpg --decrypt < %f > %t" +close-hook \\.gpg$ "gpg --encrypt --recipient YourGpgUserIdOrKeyId < %t > %f" -+ -+ -+Mutt's MIME Support -

- Quite a bit of effort has been made to make Mutt the premier text-mode -@@ -2869,12 +3039,16 @@ - - -+ - - - -+ - - - -+ - - ++ ++Note: the folder is temporary stored ++decrypted in the /tmp directory, where it can be read by your system ++administrator. So think about the security aspects of this. ++ ++ ++ ++ + + Mutt's MIME Support + +diff -urN mutt-1.5.12/doc/muttrc.man.head mutt-1.5.12-ro/doc/muttrc.man.head +--- mutt-1.5.12/doc/muttrc.man.head 2006-07-11 17:01:04.000000000 +0200 ++++ mutt-1.5.12-ro/doc/muttrc.man.head 2006-07-15 20:13:19.000000000 +0200 +@@ -316,6 +316,24 @@ + to a certain recipient. The meaning of "key ID" is to be taken + broadly: This can be a different e-mail address, a numerical key ID, + or even just an arbitrary search string. +.PP +.nf +\fBopen-hook\fP \fIregexp\fP "\fIcommand\fP" @@ -1081,12 +829,12 @@ diff -Nur mutt-1.3.27.orig/doc/muttrc.man.head mutt-1.3.27/doc/muttrc.man.head .TP \fBpush\fP \fIstring\fP This command adds the named \fIstring\fP to the keyboard buffer. -diff -Nur mutt-1.3.27.orig/hook.c mutt-1.3.27/hook.c ---- mutt-1.3.27.orig/hook.c Fri Jun 29 12:05:50 2001 -+++ mutt-1.3.27/hook.c Fri Feb 1 22:51:32 2002 -@@ -19,6 +19,10 @@ - #include "mutt.h" +diff -urN mutt-1.5.12/hook.c mutt-1.5.12-ro/hook.c +--- mutt-1.5.12/hook.c 2006-03-03 11:11:43.000000000 +0100 ++++ mutt-1.5.12-ro/hook.c 2006-07-15 20:13:19.000000000 +0200 +@@ -24,6 +24,10 @@ #include "mailbox.h" + #include "mutt_crypt.h" +#ifdef USE_COMPRESSED +#include "compress.h" @@ -1095,7 +843,7 @@ diff -Nur mutt-1.3.27.orig/hook.c mutt-1.3.27/hook.c #include #include #include -@@ -87,6 +91,16 @@ +@@ -92,6 +96,16 @@ memset (&pattern, 0, sizeof (pattern)); pattern.data = safe_strdup (path); } @@ -1109,13 +857,13 @@ diff -Nur mutt-1.3.27.orig/hook.c mutt-1.3.27/hook.c + } + } +#endif - else if (DefaultHook && (data & (M_FOLDERHOOK | M_MBOXHOOK | M_SENDHOOK | - M_FCCHOOK | M_SAVEHOOK | M_MESSAGEHOOK))) - { -diff -Nur mutt-1.3.27.orig/init.h mutt-1.3.27/init.h ---- mutt-1.3.27.orig/init.h Mon Dec 10 11:09:03 2001 -+++ mutt-1.3.27/init.h Fri Feb 1 22:51:32 2002 -@@ -2447,6 +2447,11 @@ + else if (DefaultHook && !(data & (M_CHARSETHOOK | M_ACCOUNTHOOK)) + && (!WithCrypto || !(data & M_CRYPTHOOK)) + ) +diff -urN mutt-1.5.12/init.h mutt-1.5.12-ro/init.h +--- mutt-1.5.12/init.h 2006-07-05 10:40:05.000000000 +0200 ++++ mutt-1.5.12-ro/init.h 2006-07-15 20:14:00.000000000 +0200 +@@ -3052,6 +3052,11 @@ { "fcc-hook", mutt_parse_hook, M_FCCHOOK }, { "fcc-save-hook", mutt_parse_hook, M_FCCHOOK | M_SAVEHOOK }, { "folder-hook", mutt_parse_hook, M_FOLDERHOOK }, @@ -1124,13 +872,13 @@ diff -Nur mutt-1.3.27.orig/init.h mutt-1.3.27/init.h + { "close-hook", mutt_parse_hook, M_CLOSEHOOK }, + { "append-hook", mutt_parse_hook, M_APPENDHOOK }, +#endif + { "group", parse_group, 0 }, + { "ungroup", parse_ungroup, 0 }, { "hdr_order", parse_list, UL &HeaderOrderList }, - { "iconv-hook", mutt_parse_hook, M_ICONVHOOK }, - { "ignore", parse_ignore, 0 }, -diff -Nur mutt-1.3.27.orig/main.c mutt-1.3.27/main.c ---- mutt-1.3.27.orig/main.c Wed Nov 7 11:40:26 2001 -+++ mutt-1.3.27/main.c Fri Feb 1 22:51:32 2002 -@@ -328,6 +328,12 @@ +diff -urN mutt-1.5.12/main.c mutt-1.5.12-ro/main.c +--- mutt-1.5.12/main.c 2006-07-12 01:38:47.000000000 +0200 ++++ mutt-1.5.12-ro/main.c 2006-07-15 20:13:19.000000000 +0200 +@@ -398,6 +398,12 @@ #else "-LOCALES_HACK " #endif @@ -1143,9 +891,29 @@ diff -Nur mutt-1.3.27.orig/main.c mutt-1.3.27/main.c #ifdef HAVE_WC_FUNCS "+HAVE_WC_FUNCS " -diff -Nur mutt-1.3.27.orig/mbox.c mutt-1.3.27/mbox.c ---- mutt-1.3.27.orig/mbox.c Wed Oct 31 10:40:05 2001 -+++ mutt-1.3.27/mbox.c Fri Feb 1 22:51:32 2002 +--- mutt-1.5.13/Makefile.am.orig 2006-08-14 15:47:23.000000000 +0200 ++++ mutt-1.5.13/Makefile.am 2006-08-23 22:28:08.238682000 +0200 +@@ -18,7 +18,7 @@ + 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 \ +- crypt.c cryptglue.c \ ++ crypt.c cryptglue.c compress.c \ + 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 group.c \ +@@ -66,7 +66,7 @@ + crypt-gpgme.c crypt-mod-pgp-gpgme.c crypt-mod-smime-gpgme.c + + EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO UPDATING \ +- configure account.h \ ++ configure account.h compress.h \ + attach.h buffy.h charset.h copy.h crypthash.h dotlock.h functions.h gen_defs \ + globals.h hash.h history.h init.h keymap.h mutt_crypt.h \ + mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \ +diff -urN mutt-1.5.12/mbox.c mutt-1.5.12-ro/mbox.c +--- mutt-1.5.12/mbox.c 2005-10-31 11:02:08.000000000 +0100 ++++ mutt-1.5.12-ro/mbox.c 2006-07-15 20:13:19.000000000 +0200 @@ -28,6 +28,10 @@ #include "sort.h" #include "copy.h" @@ -1157,7 +925,7 @@ diff -Nur mutt-1.3.27.orig/mbox.c mutt-1.3.27/mbox.c #include #include #include -@@ -1045,6 +1049,12 @@ +@@ -1014,6 +1018,12 @@ int mbox_close_mailbox (CONTEXT *ctx) { mx_unlock_file (ctx->path, fileno (ctx->fp), 1); @@ -1170,22 +938,22 @@ diff -Nur mutt-1.3.27.orig/mbox.c mutt-1.3.27/mbox.c mutt_unblock_signals (); mx_fastclose_mailbox (ctx); return 0; -diff -Nur mutt-1.3.27.orig/mutt.h mutt-1.3.27/mutt.h ---- mutt-1.3.27.orig/mutt.h Wed Jan 23 00:42:01 2002 -+++ mutt-1.3.27/mutt.h Fri Feb 1 22:51:32 2002 -@@ -143,6 +143,11 @@ - #define M_PGPHOOK (1<<8) - #endif +diff -urN mutt-1.5.12/mutt.h mutt-1.5.12-ro/mutt.h +--- mutt-1.5.12/mutt.h 2006-06-08 13:49:07.000000000 +0200 ++++ mutt-1.5.12-ro/mutt.h 2006-07-15 20:13:19.000000000 +0200 +@@ -157,6 +157,11 @@ #define M_ACCOUNTHOOK (1<<9) + #define M_REPLYHOOK (1<<10) + #define M_SEND2HOOK (1<<11) +#ifdef USE_COMPRESSED -+#define M_OPENHOOK (1<<10) -+#define M_APPENDHOOK (1<<11) -+#define M_CLOSEHOOK (1<<12) ++#define M_OPENHOOK (1<<12) ++#define M_APPENDHOOK (1<<13) ++#define M_CLOSEHOOK (1<<14) +#endif /* tree characters for linearize_tree and print_enriched_string */ #define M_TREE_LLCORNER 1 -@@ -745,6 +750,11 @@ +@@ -860,6 +865,11 @@ void *data; /* driver specific data */ #endif /* USE_IMAP */ @@ -1197,10 +965,55 @@ diff -Nur mutt-1.3.27.orig/mutt.h mutt-1.3.27/mutt.h short magic; /* mailbox type */ unsigned int locked : 1; /* is the mailbox locked? */ -diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c ---- mutt-1.3.27.orig/mx.c Wed Jan 23 00:42:01 2002 -+++ mutt-1.3.27/mx.c Fri Feb 1 22:51:32 2002 -@@ -26,6 +26,10 @@ +diff -urN mutt-1.5.12/Muttrc mutt-1.5.12-ro/Muttrc +--- mutt-1.5.12/Muttrc 2006-07-14 20:15:57.000000000 +0200 ++++ mutt-1.5.12-ro/Muttrc 2006-07-15 20:13:19.000000000 +0200 +@@ -20,6 +20,11 @@ + macro index,pager y "?" "show incoming mailboxes list" + bind browser y exit + ++# Use folders which match on \\.gz$ as gzipped folders: ++# open-hook \\.gz$ "gzip -cd %f > %t" ++# close-hook \\.gz$ "gzip -c %t > %f" ++# append-hook \\.gz$ "gzip -c %t >> %f" ++ + # If Mutt is unable to determine your site's domain name correctly, you can + # set the default here. + # +diff -urN mutt-1.5.12/Muttrc.head mutt-1.5.12-ro/Muttrc.head +--- mutt-1.5.12/Muttrc.head 2006-07-14 20:15:55.000000000 +0200 ++++ mutt-1.5.12-ro/Muttrc.head 2006-07-15 20:13:19.000000000 +0200 +@@ -20,6 +20,11 @@ + macro index,pager y "?" "show incoming mailboxes list" + bind browser y exit + ++# Use folders which match on \\.gz$ as gzipped folders: ++# open-hook \\.gz$ "gzip -cd %f > %t" ++# close-hook \\.gz$ "gzip -c %t > %f" ++# append-hook \\.gz$ "gzip -c %t >> %f" ++ + # If Mutt is unable to determine your site's domain name correctly, you can + # set the default here. + # +diff -urN mutt-1.5.12/Muttrc.head.in mutt-1.5.12-ro/Muttrc.head.in +--- mutt-1.5.12/Muttrc.head.in 2005-10-04 17:05:34.000000000 +0200 ++++ mutt-1.5.12-ro/Muttrc.head.in 2006-07-15 20:13:19.000000000 +0200 +@@ -20,6 +20,11 @@ + macro index,pager y "?" "show incoming mailboxes list" + bind browser y exit + ++# Use folders which match on \\.gz$ as gzipped folders: ++# open-hook \\.gz$ "gzip -cd %f > %t" ++# close-hook \\.gz$ "gzip -c %t > %f" ++# append-hook \\.gz$ "gzip -c %t >> %f" ++ + # If Mutt is unable to determine your site's domain name correctly, you can + # set the default here. + # +diff -urN mutt-1.5.12/mx.c mutt-1.5.12-ro/mx.c +--- mutt-1.5.12/mx.c 2006-05-18 20:44:29.000000000 +0200 ++++ mutt-1.5.12-ro/mx.c 2006-07-15 20:13:19.000000000 +0200 +@@ -30,6 +30,10 @@ #include "keymap.h" #include "url.h" @@ -1208,10 +1021,10 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c +#include "compress.h" +#endif + - #ifdef HAVE_PGP - #include "pgp.h" + #ifdef USE_IMAP + #include "imap.h" #endif -@@ -448,6 +452,10 @@ +@@ -454,6 +458,10 @@ return (-1); } @@ -1222,7 +1035,7 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c return (magic); } -@@ -489,6 +497,13 @@ +@@ -493,6 +501,13 @@ { struct stat sb; @@ -1236,7 +1049,7 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c ctx->append = 1; #ifdef USE_IMAP -@@ -649,7 +664,12 @@ +@@ -653,7 +668,12 @@ } ctx->magic = mx_get_magic (path); @@ -1250,18 +1063,18 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c if(ctx->magic == 0) mutt_error (_("%s is not a mailbox."), path); -@@ -755,6 +775,10 @@ +@@ -759,6 +779,10 @@ mutt_free_header (&ctx->hdrs[i]); - safe_free ((void **) &ctx->hdrs); - safe_free ((void **) &ctx->v2r); + FREE (&ctx->hdrs); + FREE (&ctx->v2r); +#ifdef USE_COMPRESSED + if (ctx->compressinfo) + mutt_fast_close_compressed (ctx); +#endif - safe_free ((void **) &ctx->path); - safe_free ((void **) &ctx->pattern); + FREE (&ctx->path); + FREE (&ctx->pattern); if (ctx->limit_pattern) -@@ -812,6 +836,12 @@ +@@ -816,6 +840,12 @@ if (tmp && tmp->new == 0) mutt_update_mailbox (tmp); #endif @@ -1274,7 +1087,7 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c return rc; } -@@ -1018,6 +1048,11 @@ +@@ -1017,6 +1047,11 @@ !mutt_is_spool(ctx->path) && !option (OPTSAVEEMPTY)) mx_unlink_empty (ctx->path); @@ -1286,7 +1099,7 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c mx_fastclose_mailbox (ctx); return 0; -@@ -1325,6 +1360,11 @@ +@@ -1326,6 +1361,11 @@ { int rc; @@ -1298,10 +1111,10 @@ diff -Nur mutt-1.3.27.orig/mx.c mutt-1.3.27/mx.c if (ctx) { if (ctx->locked) lock = 0; -diff -Nur mutt-1.3.27.orig/mx.h mutt-1.3.27/mx.h ---- mutt-1.3.27.orig/mx.h Wed Oct 31 10:40:05 2001 -+++ mutt-1.3.27/mx.h Fri Feb 1 22:51:32 2002 -@@ -41,6 +41,9 @@ +diff -urN mutt-1.5.12/mx.h mutt-1.5.12-ro/mx.h +--- mutt-1.5.12/mx.h 2005-09-18 10:22:22.000000000 +0200 ++++ mutt-1.5.12-ro/mx.h 2006-07-15 20:13:19.000000000 +0200 +@@ -40,6 +40,9 @@ #ifdef USE_POP , M_POP #endif @@ -1311,23 +1124,17 @@ diff -Nur mutt-1.3.27.orig/mx.h mutt-1.3.27/mx.h }; WHERE short DefaultMagic INITVAL (M_MBOX); -diff -Nur mutt-1.3.27.orig/po/POTFILES.in mutt-1.3.27/po/POTFILES.in ---- mutt-1.3.27.orig/po/POTFILES.in Tue Oct 10 21:18:37 2000 -+++ mutt-1.3.27/po/POTFILES.in Fri Feb 1 22:51:32 2002 -@@ -8,6 +8,7 @@ - color.c - commands.c - compose.c -+compress.c - curs_lib.c - curs_main.c - edit.c -diff -Nur mutt-1.3.27.orig/po/de.po mutt-1.3.27/po/de.po ---- mutt-1.3.27.orig/po/de.po Wed Jan 23 00:43:05 2002 -+++ mutt-1.3.27/po/de.po Fri Feb 1 22:51:32 2002 -@@ -654,6 +654,48 @@ - msgid "Message written." - msgstr "Nachricht geschrieben." +diff -urN mutt-1.5.12/PATCHES mutt-1.5.12-ro/PATCHES +--- mutt-1.5.12/PATCHES 2006-07-14 20:12:47.000000000 +0200 ++++ mutt-1.5.12-ro/PATCHES 2006-07-15 20:21:02.000000000 +0200 +@@ -0,0 +1 @@ ++patch-1.5.12.rr.compressed.1 +diff -urN mutt-1.5.12/po/de.po mutt-1.5.12-ro/po/de.po +--- mutt-1.5.12/po/de.po 2006-07-14 20:16:36.000000000 +0200 ++++ mutt-1.5.12-ro/po/de.po 2006-07-15 20:13:19.000000000 +0200 +@@ -1262,6 +1262,48 @@ + msgid "Failed to figure out sender" + msgstr "Kann Absender nicht ermitteln" +#: compress.c:203 mbox.c:661 +msgid "Mailbox was corrupted!" @@ -1371,10 +1178,10 @@ diff -Nur mutt-1.3.27.orig/po/de.po mutt-1.3.27/po/de.po +msgid " %s: Error compressing mailbox! Uncompressed one kept!\n" +msgstr " %s: Fehler beim packen der Mailbox! Entpackte Mailbox gespeichert!\n" + - #: curs_lib.c:153 - msgid "yes" - msgstr "ja" -@@ -1137,6 +1179,10 @@ + #: crypt.c:69 + #, c-format + msgid " (current time: %c)" +@@ -1910,6 +1952,10 @@ msgid "Help for %s" msgstr "Hilfe für %s" @@ -1382,32 +1189,43 @@ diff -Nur mutt-1.3.27.orig/po/de.po mutt-1.3.27/po/de.po +msgid "bad formatted command string" +msgstr "Hook enthält nicht die Muster %f und %t" + - #: hook.c:240 + #: hook.c:246 + #, c-format msgid "unhook: Can't do unhook * from within a hook." - msgstr "unhook: Innerhalb eines hook kann kein unhook * aufgerufen werden." -@@ -2459,18 +2505,10 @@ +@@ -3424,18 +3470,10 @@ msgid "Mailbox is corrupt!" msgstr "Mailbox fehlerhaft!" --#: mbox.c:665 +-#: mbox.c:670 -msgid "Mailbox was corrupted!" -msgstr "Mailbox wurde zerstört!" - - #: mbox.c:702 mbox.c:978 + #: mbox.c:711 mbox.c:964 msgid "Fatal error! Could not reopen mailbox!" msgstr "Fataler Fehler, konnte Mailbox nicht erneut öffnen!" --#: mbox.c:711 +-#: mbox.c:720 -msgid "Unable to lock mailbox!" -msgstr "Kann Mailbox nicht für exklusiven Zugriff sperren!" - #. this means ctx->changed or ctx->deleted was set, but no #. * messages were found to be changed or deleted. This should #. * never happen, is we presume it is a bug in mutt. -diff -Nur mutt-1.3.27.orig/status.c mutt-1.3.27/status.c ---- mutt-1.3.27.orig/status.c Fri Mar 3 11:10:14 2000 -+++ mutt-1.3.27/status.c Fri Feb 1 22:51:32 2002 -@@ -93,6 +93,14 @@ +diff -urN mutt-1.5.12/po/POTFILES.in mutt-1.5.12-ro/po/POTFILES.in +--- mutt-1.5.12/po/POTFILES.in 2005-08-03 11:17:47.000000000 +0200 ++++ mutt-1.5.12-ro/po/POTFILES.in 2006-07-15 20:13:19.000000000 +0200 +@@ -8,6 +8,7 @@ + color.c + commands.c + compose.c ++compress.c + crypt-gpgme.c + crypt.c + cryptglue.c +diff -urN mutt-1.5.12/status.c mutt-1.5.12-ro/status.c +--- mutt-1.5.12/status.c 2005-09-18 10:22:22.000000000 +0200 ++++ mutt-1.5.12-ro/status.c 2006-07-15 20:13:19.000000000 +0200 +@@ -97,6 +97,14 @@ case 'f': snprintf (fmt, sizeof(fmt), "%%%ss", prefix); diff --git a/mutt-xface.patch b/mutt-xface.patch index e23eb78..99f041a 100644 --- a/mutt-xface.patch +++ b/mutt-xface.patch @@ -1,4 +1,12 @@ -diff -ruN mutt-1.4./README.xface mutt-1.4/README.xface +x-face patch for Mutt 1.5.6 + +Copied from Debian's slrnface package: + + http://dave.willfork.com/slrnface/ + Upstream Author: Drazen Kacar + Copyright: /usr/share/common-licenses/GPL + + --- mutt-1.4./README.xface Thu Jan 1 01:00:00 1970 +++ mutt-1.4/README.xface Sat Aug 24 02:29:23 2002 @@ -0,0 +1,80 @@ @@ -82,22 +90,27 @@ diff -ruN mutt-1.4./README.xface mutt-1.4/README.xface +Home page: http://dave.willfork.com/slrnface/ + +dave@willfork.com -diff -ruN mutt-1.4./globals.h mutt-1.4/globals.h ---- mutt-1.4./globals.h Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/globals.h Mon Jan 20 00:28:31 2003 -@@ -177,6 +177,8 @@ +diff -urp ../MUTT/mutt/PATCHES mutt/PATCHES +--- ../MUTT/mutt/PATCHES 2002-12-09 18:44:54.000000000 +0100 ++++ mutt/PATCHES 2004-07-21 16:02:16.000000000 +0200 +@@ -0,0 +1 @@ ++patch-1.5.6.cb.xface.1 +diff -urp ../MUTT/mutt/globals.h mutt/globals.h +--- ../MUTT/mutt/globals.h.orig 2007-03-26 14:49:03.226880430 +0200 ++++ mutt/globals.h 2007-03-26 14:51:13.227945753 +0200 +@@ -218,6 +218,8 @@ WHERE ALIAS *Aliases INITVAL (0); WHERE LIST *UserHeader INITVAL (0); +WHERE int slrnface_fd INITVAL (-1); + - #ifdef DEBUG - WHERE FILE *debugfile INITVAL (0); - WHERE int debuglevel INITVAL (0); -diff -ruN mutt-1.4./init.c mutt-1.4/init.c ---- mutt-1.4./init.c Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/init.c Mon Jan 20 00:28:31 2003 -@@ -47,6 +47,8 @@ + /*-- formerly in pgp.h --*/ + WHERE REGEXP PgpGoodSign; + WHERE char *PgpSignAs; +diff -urp ../MUTT/mutt/init.c mutt/init.c +--- ../MUTT/mutt/init.c 2004-07-18 01:25:28.000000000 +0200 ++++ mutt/init.c 2004-07-21 13:33:47.000000000 +0200 +@@ -43,6 +43,8 @@ #include #include #include @@ -106,7 +119,7 @@ diff -ruN mutt-1.4./init.c mutt-1.4/init.c #include void toggle_quadoption (int opt) -@@ -1971,3 +1973,131 @@ +@@ -2356,3 +2358,131 @@ int mutt_get_hook_type (const char *name return c->data; return 0; } @@ -238,10 +251,10 @@ diff -ruN mutt-1.4./init.c mutt-1.4/init.c + + /* FIFO has been unlinked in the startup function. */ +} -diff -ruN mutt-1.4./init.h mutt-1.4/init.h ---- mutt-1.4./init.h Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/init.h Mon Jan 20 00:28:31 2003 -@@ -2437,6 +2437,12 @@ +diff -urp ../MUTT/mutt/init.h mutt/init.h +--- ../MUTT/mutt/init.h 2004-07-21 13:33:02.000000000 +0200 ++++ mutt/init.h 2004-07-21 13:33:47.000000000 +0200 +@@ -2736,6 +2736,12 @@ struct option_t MuttVars[] = { ** Controls whether mutt writes out the Bcc header when preparing ** messages to be sent. Exim users may wish to use this. */ @@ -254,10 +267,10 @@ diff -ruN mutt-1.4./init.h mutt-1.4/init.h /*--*/ { NULL } }; -diff -ruN mutt-1.4./main.c mutt-1.4/main.c ---- mutt-1.4./main.c Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/main.c Mon Jan 20 00:28:31 2003 -@@ -841,6 +841,8 @@ +diff -urp ../MUTT/mutt/main.c mutt/main.c +--- ../MUTT/mutt/main.c 2004-06-18 17:24:22.000000000 +0200 ++++ mutt/main.c 2004-07-21 13:33:47.000000000 +0200 +@@ -905,6 +905,8 @@ int main (int argc, char **argv) mutt_folder_hook (folder); @@ -266,8 +279,8 @@ diff -ruN mutt-1.4./main.c mutt-1.4/main.c if((Context = mx_open_mailbox (folder, ((flags & M_RO) || option (OPTREADONLY)) ? M_READONLY : 0, NULL)) || !explicit_folder) { -@@ -849,6 +851,8 @@ - safe_free ((void **)&Context); +@@ -913,6 +915,8 @@ int main (int argc, char **argv) + FREE (&Context); } mutt_endwin (Errorbuf); + @@ -275,40 +288,40 @@ diff -ruN mutt-1.4./main.c mutt-1.4/main.c } exit (0); -diff -ruN mutt-1.4./mutt.h mutt-1.4/mutt.h ---- mutt-1.4./mutt.h Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/mutt.h Mon Jan 20 00:28:31 2003 -@@ -422,6 +422,7 @@ +diff -urp ../MUTT/mutt/mutt.h mutt/mutt.h +--- ../MUTT/mutt/mutt.h 2004-07-21 13:33:02.000000000 +0200 ++++ mutt/mutt.h 2004-07-21 13:33:47.000000000 +0200 +@@ -435,6 +435,7 @@ enum OPTWRAP, OPTWRAPSEARCH, OPTWRITEBCC, /* write out a bcc header? */ + OPTXFACE, OPTXMAILER, - /* PGP options */ -@@ -540,6 +541,7 @@ - char *x_label; + OPTCRYPTUSEGPGME, +@@ -577,6 +578,7 @@ typedef struct envelope + BUFFER *spam; LIST *references; /* message references (in reverse order) */ LIST *in_reply_to; /* in-reply-to header content */ + LIST *x_face; /* X-Face header content */ LIST *userhdrs; /* user defined headers */ } ENVELOPE; -diff -ruN mutt-1.4./muttlib.c mutt-1.4/muttlib.c ---- mutt-1.4./muttlib.c Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/muttlib.c Mon Jan 20 00:28:31 2003 -@@ -650,6 +650,7 @@ - safe_free ((void **) &(*p)->date); +diff -urp ../MUTT/mutt/muttlib.c mutt/muttlib.c +--- ../MUTT/mutt/muttlib.c 2004-07-18 01:25:28.000000000 +0200 ++++ mutt/muttlib.c 2004-07-21 13:33:47.000000000 +0200 +@@ -651,6 +651,7 @@ void mutt_free_envelope (ENVELOPE **p) + FREE (&(*p)->date); mutt_free_list (&(*p)->references); mutt_free_list (&(*p)->in_reply_to); + mutt_free_list (&(*p)->x_face); mutt_free_list (&(*p)->userhdrs); - safe_free ((void **) p); + FREE (p); } -diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c ---- mutt-1.4./pager.c Mon Jan 20 00:17:02 2003 -+++ mutt-1.4/pager.c Mon Jan 20 00:28:31 2003 -@@ -1431,6 +1431,66 @@ +diff -urp ../MUTT/mutt/pager.c mutt/pager.c +--- ../MUTT/mutt/pager.c 2004-07-18 01:25:28.000000000 +0200 ++++ mutt/pager.c 2004-07-21 13:36:34.000000000 +0200 +@@ -1441,6 +1441,66 @@ upNLines (int nlines, struct line_t *inf return cur; } @@ -375,7 +388,7 @@ diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c static struct mapping_t PagerHelp[] = { { N_("Exit"), OP_EXIT }, { N_("PrevPg"), OP_PREV_PAGE }, -@@ -1535,6 +1595,9 @@ +@@ -1545,6 +1605,9 @@ mutt_pager (const char *banner, const ch snprintf (helpstr, sizeof (helpstr), "%s %s", tmphelp, buffer); } @@ -385,7 +398,7 @@ diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c while (ch != -1) { mutt_curs_set (0); -@@ -2035,7 +2098,9 @@ +@@ -2067,7 +2130,9 @@ search_next: if (! InHelp) { InHelp = 1; @@ -395,12 +408,12 @@ diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c redraw = REDRAW_FULL; InHelp = 0; } -@@ -2329,59 +2394,71 @@ +@@ -2383,59 +2448,71 @@ CHECK_IMAP_ACL(IMAP_ACL_WRITE); case OP_MAIL: CHECK_MODE(IsHeader (extra) && !IsAttach (extra)); CHECK_ATTACH; + mutt_suppress_xface (); - ci_send_message (0, NULL, NULL, NULL, NULL); + ci_send_message (0, NULL, NULL, extra->ctx, NULL); + mutt_show_xface (); redraw = REDRAW_FULL; break; @@ -420,7 +433,7 @@ diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c break; case OP_RECALL_MESSAGE: - CHECK_MODE(IsHeader (extra)); + CHECK_MODE(IsHeader (extra) && !IsAttach(extra)); CHECK_ATTACH; + mutt_suppress_xface(); ci_send_message (SENDPOSTPONED, NULL, NULL, extra->ctx, extra->hdr); @@ -467,7 +480,7 @@ diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c redraw = REDRAW_FULL; break; -@@ -2430,7 +2507,9 @@ +@@ -2485,7 +2562,9 @@ CHECK_IMAP_ACL(IMAP_ACL_WRITE); break; case OP_SHELL_ESCAPE: @@ -477,17 +490,17 @@ diff -ruN mutt-1.4./pager.c mutt-1.4/pager.c MAYBE_REDRAW (redraw); break; -@@ -2573,5 +2652,6 @@ - safe_free ((void **) &lineInfo); +@@ -2644,5 +2723,6 @@ CHECK_IMAP_ACL(IMAP_ACL_DELETE); + FREE (&lineInfo); if (index) mutt_menuDestroy(&index); + mutt_clear_xface (); return (rc != -1 ? rc : 0); } -diff -ruN mutt-1.4./parse.c mutt-1.4/parse.c ---- mutt-1.4./parse.c Tue Jan 29 11:05:20 2002 -+++ mutt-1.4/parse.c Mon Jan 20 00:28:32 2003 -@@ -90,6 +90,27 @@ +diff -urp ../MUTT/mutt/parse.c mutt/parse.c +--- ../MUTT/mutt/parse.c 2004-07-21 13:33:02.000000000 +0200 ++++ mutt/parse.c 2004-07-21 13:33:47.000000000 +0200 +@@ -85,6 +85,27 @@ static char *read_rfc822_line (FILE *f, /* not reached */ } @@ -515,7 +528,7 @@ diff -ruN mutt-1.4./parse.c mutt-1.4/parse.c static LIST *mutt_parse_references (char *s, int in_reply_to) { LIST *t, *lst = NULL; -@@ -1207,6 +1228,11 @@ +@@ -1231,6 +1252,11 @@ int mutt_parse_rfc822_line (ENVELOPE *e, e->x_label = safe_strdup(p); matched = 1; } @@ -527,13 +540,13 @@ diff -ruN mutt-1.4./parse.c mutt-1.4/parse.c default: break; -diff -ruN mutt-1.4./sendlib.c mutt-1.4/sendlib.c ---- mutt-1.4./sendlib.c Sat Apr 20 09:25:49 2002 -+++ mutt-1.4/sendlib.c Mon Jan 20 00:28:32 2003 -@@ -1663,6 +1663,15 @@ - fputc ('\n', fp); +diff -urp ../MUTT/mutt/sendlib.c mutt/sendlib.c +--- ../MUTT/mutt/sendlib.c 2004-07-21 13:33:02.000000000 +0200 ++++ mutt/sendlib.c 2004-07-21 13:37:16.000000000 +0200 +@@ -1697,6 +1697,15 @@ int mutt_write_rfc822_header (FILE *fp, + } } - + + /* Add X-Face headers */ + if (env->x_face) + { @@ -543,6 +556,6 @@ diff -ruN mutt-1.4./sendlib.c mutt-1.4/sendlib.c + fprintf (fp, "X-Face: %s\n", face->data); + } + - if (mode == 0 && !privacy && option (OPTXMAILER)) + if (mode == 0 && !privacy && option (OPTXMAILER) && !has_agent) { /* Add a vanity header */ diff --git a/mutt.spec b/mutt.spec index 4ca63cc..0f94db0 100644 --- a/mutt.spec +++ b/mutt.spec @@ -8,72 +8,70 @@ %bcond_without home_etc # don't use home_etc # Summary: The Mutt Mail User Agent -Summary(de.UTF-8): Der Mutt Mail-User-Agent -Summary(es.UTF-8): Mutt, cliente de correo electrónico -Summary(fr.UTF-8): Agent courrier Mutt -Summary(ko.UTF-8): 텍스트 기반의 MUA -Summary(pl.UTF-8): Program pocztowy Mutt -Summary(pt_BR.UTF-8): Mutt, cliente de correio eletrônico -Summary(ru.UTF-8): Почтовая клиентская программа Mutt -Summary(tr.UTF-8): Mutt elektronik posta programı -Summary(uk.UTF-8): Поштова клієнтська програма Mutt +Summary(de.UTF-8): Der Mutt Mail-User-Agent +Summary(es.UTF-8): Mutt, cliente de correo electrónico +Summary(fr.UTF-8): Agent courrier Mutt +Summary(ko.UTF-8): 텍스트 기반의 MUA +Summary(pl.UTF-8): Program pocztowy Mutt +Summary(pt_BR.UTF-8): Mutt, cliente de correio eletrônico +Summary(ru.UTF-8): Почтовая клиентская программа Mutt +Summary(tr.UTF-8): Mutt elektronik posta programı +Summary(uk.UTF-8): Поштова клієнтська програма Mutt Name: mutt -Version: 1.4.2.2 +Version: 1.5.14 Release: 1 Epoch: 6 License: GPL Group: Applications/Mail -Source0: ftp://ftp.mutt.org/mutt/%{name}-%{version}i.tar.gz -# Source0-md5: 51a08429c5bd5c34af3f4268b8cbcda3 +Source0: ftp://ftp.mutt.org/mutt/devel/%{name}-%{version}.tar.gz +# Source0-md5: 6d33b4f0074e39772021d947c49b30c6 Source1: %{name}.desktop Source2: %{name}.png Source3: %{name}.1.pl -Patch0: %{name}-paths.patch +#Patch0: %{name}-pl.po-update.patch Patch1: %{name}-forcedotlock.patch -Patch2: %{name}-muttbug-tmp.patch -Patch3: %{name}-rr.compressed.patch -Patch4: %{name}-cd.edit_threads.patch -Patch5: %{name}-bj.status-time.patch -Patch6: %{name}-devl.narrow_tree.patch -Patch7: %{name}-vvv.quote.gz -Patch8: %{name}-null_name.patch -Patch9: %{name}-cd.trash_folder.patch -Patch10: %{name}-cd.purge_message.patch -Patch11: %{name}-cd.signatures_menu.patch -Patch12: %{name}-folder_columns.patch -Patch13: %{name}-nr.tag_prefix_cond.patch -Patch14: %{name}-pgp_hook.patch -Patch15: %{name}-manual.patch -Patch16: %{name}-send_charset.patch -Patch17: %{name}-xface.patch -Patch18: %{name}-sasl2.patch -Patch19: %{name}-nntp.patch -Patch20: %{name}-esmtp.patch -Patch21: %{name}-home_etc.patch -Patch22: %{name}-kill_warnings.patch -Patch23: %{name}-Muttrc_mbox_path.patch -Patch24: %{name}-po.patch -Patch25: %{name}-sasl-fixes.patch -Patch26: %{name}-long-lines.patch +Patch2: %{name}-rr.compressed.patch +Patch3: %{name}-bj.status-time.patch +Patch4: %{name}-vvv.quote.patch +Patch5: %{name}-null_name.patch +Patch6: %{name}-cd.trash_folder.patch +Patch7: %{name}-cd.purge_message.patch +Patch8: %{name}-cd.signatures_menu.patch +Patch9: %{name}-folder_columns.patch +Patch10: %{name}-nr.tag_prefix_cond.patch +Patch11: %{name}-manual.patch +Patch12: %{name}-send_charset.patch +Patch13: %{name}-xface.patch +Patch14: %{name}-Muttrc_mbox_path.patch +Patch15: %{name}-po.patch +Patch16: %{name}-vvv.nntp.patch +Patch17: %{name}-esmtp.patch +Patch18: %{name}-home_etc.patch +#PatchXXX: %{name}-pgp_hook.patch URL: http://www.mutt.org/ -%{!?with_slang:BuildRequires: ncurses-devel >= 5.4-0.7} BuildRequires: autoconf BuildRequires: automake %{?with_sasl:BuildRequires: cyrus-sasl-devel >= 2.1.0} -BuildRequires: gettext-devel -BuildRequires: groff +BuildRequires: db-devel %{?with_home_etc:BuildRequires: home-etc-devel >= 1.0.8} -%{?with_esmtp:BuildRequires: libesmtp-devel} +BuildRequires: gettext-devel +BuildRequires: gpgme-devel >= 1:1.0.0 +BuildRequires: libidn-devel +BuildRequires: lynx +%{!?with_slang:BuildRequires: ncurses-devel >= 5.0} BuildRequires: openssl-devel >= 0.9.7d -BuildRequires: sgml-tools >= 1.0.9-20 -BuildRequires: sgml-tools-dtd %{?with_slang:BuildRequires: slang-devel} -%{?with_home_etc:Requires: home-etc >= 1.0.8} +%{?with_esmtp:BuildRequires: libesmtp-devel} +BuildRequires: docbook-style-xsl +BuildRequires: libxslt-progs +BuildRequires: sgml-tools +BuildRequires: sgml-tools-dtd Requires: iconv Requires: mailcap +%{?with_home_etc:Requires: home-etc >= 1.0.8} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define specflags_ia32 -fomit-frame-pointer +%define specflags_ia32 -fomit-frame-pointer %description Mutt is a small but very poweful full-screen Unix mail client. @@ -133,8 +131,8 @@ Mutt - це невеликий, але потужний повноекранни експериментальну) підтримку NNTP. %prep -%setup -q -n %{name}-%(echo %{version} | sed 's/i$//') -%patch0 -p1 +%setup -q +#%patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 @@ -143,26 +141,18 @@ Mutt - це невеликий, але потужний повноекранни %patch6 -p1 %patch7 -p1 %patch8 -p1 -%patch9 -p1 -%patch10 -p1 -%patch11 -p1 # breaks display if arrow_cursor is set -%{?with_folder_column:%patch12 -p1} +%{?with_folder_column:%patch9 -p1} # disabled - changes default behaviour -##%patch13 -p0 +#%patch10 -p0 +%patch11 -p1 +%patch12 -p1 +%patch13 -p1 %patch14 -p1 %patch15 -p1 -%patch16 -p1 -%patch17 -p1 -%{?with_sasl:%patch18 -p1} -%{?with_nntp:%patch19 -p1} -%{?with_esmtp:%patch20 -p1} -%{?with_home_etc:%patch21 -p1} -%patch22 -p1 -%patch23 -p1 -%patch24 -p1 -%patch25 -p1 -%patch26 -p1 +%{?with_nntp:%patch16 -p1} +%{?with_esmtp:%patch17 -p1} +%{?with_home_etc:%patch18 -p1} # force regeneration (manual.sgml is modified by some patches) rm -f doc/{manual*.html,manual.txt} @@ -173,32 +163,28 @@ rm -f doc/{manual*.html,manual.txt} %{__autoheader} %{__automake} %configure \ - --%{?debug:en}%{!?debug:dis}able-debug \ - %{!?with_slang:--with-curses} \ - %{?with_slang:--with-slang} \ + %{!?debug:--disable-debug} %{?debug:--enable-debug} \ + --disable-warnings \ --enable-compressed \ --enable-external-dotlock \ + --enable-gpgme \ --enable-imap \ - --without-included-gettext \ --enable-mailtool \ - --with-mixmaster \ - --enable-pop \ %{?with_nntp:--enable-nntp} \ - --with-regex \ - --with%{!?with_sasl:out}-sasl \ - --with%{!?with_home_etc:out}-home-etc \ - %{?with_esmtp:--enable-libesmtp --with-libesmtp=/usr} \ - --with-ssl \ - --disable-warnings \ + --enable-pop \ + --enable-hcache \ + %{!?with_slang:--with-curses} \ + %{?with_slang:--with-slang} \ --with-docdir=%{_docdir}/%{name} \ + %{?with_home_etc:--with-home-etc} %{!?with_home_etc:--without-home-etc} \ --with-homespool=Maildir \ + %{?with_esmtp:--enable-libesmtp --with-libesmtp=/usr} \ --with-mailpath=/var/mail \ - --with-sharedir=%{_datadir} \ - --prefix=%{_prefix} \ - --bindir=%{_bindir} \ - --datadir=%{_datadir} \ - --mandir=%{_mandir} \ - --sysconfdir=%{_sysconfdir} + --with-regex \ + --with-mixmaster \ + %{?with_sasl:--with-sasl2} \ + --with-ssl \ + --without-included-gettext %{__make} %{__make} manual.txt -C doc @@ -210,7 +196,7 @@ install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},%{_mandir}/pl/man1} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT -%{__patch} -p0 -d $RPM_BUILD_ROOT%{_sysconfdir} < %{PATCH16} +%{__patch} -p0 -d $RPM_BUILD_ROOT%{_sysconfdir} < %{PATCH12} install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir} @@ -223,7 +209,7 @@ gzip -9nf $RPM_BUILD_ROOT%{_docdir}/%{name}/manual.txt # conflict with qmail rm -f $RPM_BUILD_ROOT%{_mandir}/man5/mbox.5* -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/mime.types +rm -f $RPM_BUILD_ROOT/etc/mime.types %find_lang %{name} @@ -233,11 +219,12 @@ rm -rf $RPM_BUILD_ROOT %files -f %{name}.lang %defattr(644,root,root,755) %doc contrib/{*rc*,*cap*} ChangeLog README TODO NEWS README.SECURITY README.SSL README.xface %{?with_esmtp:Muttrc.esmtp} -%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/Muttrc +%config(noreplace,missingok) %verify(not md5 size mtime) %{_sysconfdir}/Muttrc %attr(755,root,root) %{_bindir}/mutt %attr(755,root,root) %{_bindir}/flea %attr(755,root,root) %{_bindir}/muttbug %attr(755,root,root) %{_bindir}/pgp* +%attr(755,root,root) %{_bindir}/smime_keys %attr(2755,root,mail) %{_bindir}/mutt_dotlock %{_docdir}/%{name} -- 2.44.0