1
0
forked from pool/mutt

Accepting request 282890 from server:mail

- Update to mutt version 1.5.23 which is a security bugfix release
  as well as add support for TLS 1.1/1.2
- Remove the patches automake-1.12.patch,
  mutt-1.5.20-gpgme_set_locale.patch, and mutt-CVE-2014-0467.patch
- Replace the patches
  patch-1.5.23.rr.compressed.bz2 with patch-1.5.21.rr.compressed.1.bz2
  mutt-1.5.21.sidebar.20120829.patch with patch-1.5.23.sidebar.20140412.patch
  patch-1.5.5.1.nt.xtitles.3.ab.1 with patch-1.5.23.xtitles.patch
  mutt-1.5.21.dif with mutt-1.5.23.dif
- Modify the patches aw.listreply.diff, bug-676388-largefile.patch,
  and bsc907453-CVE-2014-9116-jessie.patch
- Build with PIE

OBS-URL: https://build.opensuse.org/request/show/282890
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutt?expand=0&rev=61
This commit is contained in:
Dominique Leuenberger 2015-01-27 08:09:21 +00:00 committed by Git OBS Bridge
commit 73102533a0
18 changed files with 738 additions and 783 deletions

View File

@ -1,12 +0,0 @@
Index: mutt-1.5.21/configure.ac
===================================================================
--- mutt-1.5.21.orig/configure.ac
+++ mutt-1.5.21/configure.ac
@@ -27,7 +27,6 @@ AC_MSG_RESULT($mutt_cv_prefix)
AC_PROG_CC
AC_ISC_POSIX
-AM_C_PROTOTYPES
if test "x$U" != "x"; then
AC_MSG_ERROR(Compiler not ANSI compliant)
fi

View File

@ -1,19 +1,21 @@
ask when sending list message replies to author only - Armin Wolfermann (aw) ask when sending list message replies to author only - Armin Wolfermann (aw)
Index: mutt-1.5.21/PATCHES ---
=================================================================== PATCHES | 1 +
--- mutt-1.5.21.orig/PATCHES 2012-06-21 11:48:06.757181997 +0200 init.h | 7 +++++++
+++ mutt-1.5.21/PATCHES 2012-06-21 11:48:50.352837436 +0200 mutt.h | 1 +
@@ -1,3 +1,4 @@ send.c | 18 ++++++++++++++++++
4 files changed, 27 insertions(+)
--- mutt-1.5.23/PATCHES
+++ mutt-1.5.23/PATCHES 2015-01-26 15:34:40.133518493 +0000
@@ -1,2 +1,3 @@
+patch-1.5.9.aw.listreply.1 +patch-1.5.9.aw.listreply.1
patch-1.5.21.sidebar.20120829.txt patch-1.5.23.sidebar.20140412.txt
patch-1.5.19.rr.compressed.1 rr.compressed
patch-1.5.5.1.nt.xtitles.3.ab.1 --- mutt-1.5.23/init.h
Index: mutt-1.5.21/init.h +++ mutt-1.5.23/init.h 2012-06-21 09:48:22.000000000 +0000
=================================================================== @@ -1340,6 +1340,13 @@ struct option_t MuttVars[] = {
--- mutt-1.5.21.orig/init.h 2012-06-21 11:48:06.754181952 +0200
+++ mutt-1.5.21/init.h 2012-06-21 11:48:22.426417566 +0200
@@ -1331,6 +1331,13 @@ struct option_t MuttVars[] = {
** The locale used by \fCstrftime(3)\fP to format dates. Legal values are ** The locale used by \fCstrftime(3)\fP to format dates. Legal values are
** the strings your system accepts for the locale environment variable \fC$$$LC_TIME\fP. ** the strings your system accepts for the locale environment variable \fC$$$LC_TIME\fP.
*/ */
@ -27,11 +29,9 @@ Index: mutt-1.5.21/init.h
{ "mail_check", DT_NUM, R_NONE, UL &BuffyTimeout, 5 }, { "mail_check", DT_NUM, R_NONE, UL &BuffyTimeout, 5 },
/* /*
** .pp ** .pp
Index: mutt-1.5.21/mutt.h --- mutt-1.5.23/mutt.h
=================================================================== +++ mutt-1.5.23/mutt.h 2012-06-21 09:48:22.000000000 +0000
--- mutt-1.5.21.orig/mutt.h 2012-06-21 11:48:06.788182463 +0200 @@ -288,6 +288,7 @@ enum
+++ mutt-1.5.21/mutt.h 2012-06-21 11:48:22.426417566 +0200
@@ -290,6 +290,7 @@ enum
#endif #endif
OPT_SUBJECT, OPT_SUBJECT,
OPT_VERIFYSIG, /* verify PGP signatures */ OPT_VERIFYSIG, /* verify PGP signatures */
@ -39,11 +39,9 @@ Index: mutt-1.5.21/mutt.h
/* THIS MUST BE THE LAST VALUE. */ /* THIS MUST BE THE LAST VALUE. */
OPT_MAX OPT_MAX
Index: mutt-1.5.21/send.c --- mutt-1.5.23/send.c
=================================================================== +++ mutt-1.5.23/send.c 2012-06-21 09:48:22.000000000 +0000
--- mutt-1.5.21.orig/send.c 2012-06-21 11:48:06.724181501 +0200 @@ -452,6 +452,7 @@ static int include_reply (CONTEXT *ctx,
+++ mutt-1.5.21/send.c 2012-06-21 11:48:22.426417566 +0200
@@ -453,6 +453,7 @@ static int include_reply (CONTEXT *ctx,
static int default_to (ADDRESS **to, ENVELOPE *env, int flags, int hmfupto) static int default_to (ADDRESS **to, ENVELOPE *env, int flags, int hmfupto)
{ {
char prompt[STRING]; char prompt[STRING];
@ -51,7 +49,7 @@ Index: mutt-1.5.21/send.c
if (flags && env->mail_followup_to && hmfupto == M_YES) if (flags && env->mail_followup_to && hmfupto == M_YES)
{ {
@@ -466,6 +467,23 @@ static int default_to (ADDRESS **to, ENV @@ -465,6 +466,23 @@ static int default_to (ADDRESS **to, ENV
if (flags & SENDLISTREPLY) if (flags & SENDLISTREPLY)
return 0; return 0;

View File

@ -12,9 +12,13 @@ has -jessie prefixed in its name.
Index: mutt/lib.c Index: mutt/lib.c
=================================================================== ===================================================================
---
lib.c | 3 +++
1 file changed, 3 insertions(+)
--- mutt/lib.c --- mutt/lib.c
+++ mutt/lib.c +++ mutt/lib.c 2015-01-26 00:00:00.000000000 +0000
@@ -819,6 +819,9 @@ char *mutt_substrdup (const char *begin, @@ -820,6 +820,9 @@ char *mutt_substrdup (const char *begin,
size_t len; size_t len;
char *p; char *p;
@ -24,20 +28,3 @@ Index: mutt/lib.c
if (end) if (end)
len = end - begin; len = end - begin;
else else
Index: mutt/sendlib.c
===================================================================
--- mutt/sendlib.c
+++ mutt/sendlib.c
@@ -1814,7 +1814,11 @@ static int write_one_header (FILE *fp, i
{
tagbuf = mutt_substrdup (start, t);
++t; /* skip over the colon separating the header field name and value */
- SKIPWS(t); /* skip over any leading whitespace */
+
+ /* skip over any leading whitespace (WSP, as defined in RFC5322) */
+ while (*t == ' ' || *t == '\t')
+ t++;
+
valbuf = mutt_substrdup (t, end);
}
dprint(4,(debugfile,"mwoh: buf[%s%s] too long, "

View File

@ -1,7 +1,12 @@
diff -ur orig.010003/mutt-1.5.21/crypt-gpgme.c mutt-1.5.21/crypt-gpgme.c ---
--- orig.010003/mutt-1.5.21/crypt-gpgme.c 2010-09-13 19:19:55.000000000 +0200 crypt-gpgme.c | 2 +-
+++ mutt-1.5.21/crypt-gpgme.c 2011-03-02 18:18:01.000000000 +0100 mh.c | 6 +++---
@@ -461,7 +461,7 @@ mutt.h | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
--- mutt-1.5.23/crypt-gpgme.c
+++ mutt-1.5.23/crypt-gpgme.c 2011-03-02 17:18:01.000000000 +0000
@@ -450,7 +450,7 @@ static gpgme_data_t body_to_data_object
/* Create a GPGME data object from the stream FP but limit the object /* Create a GPGME data object from the stream FP but limit the object
to LENGTH bytes starting at OFFSET bytes from the beginning of the to LENGTH bytes starting at OFFSET bytes from the beginning of the
file. */ file. */
@ -10,31 +15,9 @@ diff -ur orig.010003/mutt-1.5.21/crypt-gpgme.c mutt-1.5.21/crypt-gpgme.c
{ {
int err = 0; int err = 0;
gpgme_data_t data; gpgme_data_t data;
@@ -2156,7 +2156,7 @@ --- mutt-1.5.23/mh.c
{ +++ mutt-1.5.23/mh.c 2011-03-02 17:48:36.000000000 +0000
int needpass = -1, pgp_keyblock = 0; @@ -1579,9 +1579,9 @@ static int mh_rewrite_message (CONTEXT *
int clearsign = 0;
- long start_pos = 0;
+ LOFF_T start_pos = 0;
long bytes;
LOFF_T last_pos, offset;
char buf[HUGE_STRING];
diff -ur orig.010003/mutt-1.5.21/handler.c mutt-1.5.21/handler.c
--- orig.010003/mutt-1.5.21/handler.c 2009-08-25 21:08:52.000000000 +0200
+++ mutt-1.5.21/handler.c 2011-03-02 18:12:28.000000000 +0100
@@ -1520,7 +1520,7 @@
FILE *fp = NULL;
char tempfile[_POSIX_PATH_MAX];
handler_t handler = NULL;
- long tmpoffset = 0;
+ LOFF_T tmpoffset = 0;
size_t tmplength = 0;
char type[STRING];
int rc = 0;
diff -ur orig.010003/mutt-1.5.21/mh.c mutt-1.5.21/mh.c
--- orig.010003/mutt-1.5.21/mh.c 2010-08-24 18:34:21.000000000 +0200
+++ mutt-1.5.21/mh.c 2011-03-02 18:48:36.000000000 +0100
@@ -1493,9 +1493,9 @@
char newpath[_POSIX_PATH_MAX]; char newpath[_POSIX_PATH_MAX];
char partpath[_POSIX_PATH_MAX]; char partpath[_POSIX_PATH_MAX];
@ -47,10 +30,9 @@ diff -ur orig.010003/mutt-1.5.21/mh.c mutt-1.5.21/mh.c
if ((dest = mx_open_new_message (ctx, h, 0)) == NULL) if ((dest = mx_open_new_message (ctx, h, 0)) == NULL)
return -1; return -1;
diff -ur orig.010003/mutt-1.5.21/mutt.h mutt-1.5.21/mutt.h --- mutt-1.5.23/mutt.h
--- orig.010003/mutt-1.5.21/mutt.h 2010-09-13 19:19:55.000000000 +0200 +++ mutt-1.5.23/mutt.h 2011-03-02 16:52:03.000000000 +0000
+++ mutt-1.5.21/mutt.h 2011-03-02 17:52:03.000000000 +0100 @@ -638,7 +638,7 @@ typedef struct body
@@ -625,7 +625,7 @@
PARAMETER *parameter; /* parameters of the content-type */ PARAMETER *parameter; /* parameters of the content-type */
char *description; /* content-description */ char *description; /* content-description */
char *form_name; /* Content-Disposition form-data name param */ char *form_name; /* Content-Disposition form-data name param */
@ -59,45 +41,3 @@ diff -ur orig.010003/mutt-1.5.21/mutt.h mutt-1.5.21/mutt.h
* this info is used when invoking metamail, * this info is used when invoking metamail,
* where we need to send the headers of the * where we need to send the headers of the
* attachment * attachment
diff -ur orig.010003/mutt-1.5.21/pgp.c mutt-1.5.21/pgp.c
--- orig.010003/mutt-1.5.21/pgp.c 2010-09-13 19:19:55.000000000 +0200
+++ mutt-1.5.21/pgp.c 2011-03-02 18:48:08.000000000 +0100
@@ -251,7 +251,7 @@
int needpass = -1, pgp_keyblock = 0;
int clearsign = 0, rv, rc;
int c = 1; /* silence GCC warning */
- long start_pos = 0;
+ LOFF_T start_pos = 0;
long bytes;
LOFF_T last_pos, offset;
char buf[HUGE_STRING];
diff -ur orig.010003/mutt-1.5.21/smime.c mutt-1.5.21/smime.c
--- orig.010003/mutt-1.5.21/smime.c 2010-09-13 19:19:55.000000000 +0200
+++ mutt-1.5.21/smime.c 2011-03-02 18:12:08.000000000 +0100
@@ -1546,7 +1546,7 @@
pid_t thepid;
int badsig = -1;
- long tmpoffset = 0;
+ LOFF_T tmpoffset = 0;
size_t tmplength = 0;
int origType = sigbdy->type;
char *savePrefix = NULL;
@@ -1660,7 +1660,7 @@
{
int len=0;
int c;
- long last_pos;
+ LOFF_T last_pos;
char buf[HUGE_STRING];
char outfile[_POSIX_PATH_MAX], errfile[_POSIX_PATH_MAX];
char tmpfname[_POSIX_PATH_MAX];
@@ -1865,7 +1865,7 @@
char tempfile[_POSIX_PATH_MAX];
STATE s;
- long tmpoffset = b->offset;
+ LOFF_T tmpoffset = b->offset;
size_t tmplength = b->length;
int origType = b->type;
FILE *tmpfp=NULL;

View File

@ -1,12 +0,0 @@
Index: mutt-1.5.20/crypt-gpgme.c
===================================================================
--- mutt-1.5.20/crypt-gpgme.c 2009-05-19 02:11:35.000000000 +0200
+++ mutt-1.5.20/crypt-gpgme.c 2009-07-14 14:43:43.000000000 +0200
@@ -344,6 +344,7 @@ static gpgme_ctx_t create_gpgme_context
if (!GpgmeLocaleSet)
{
+ gpgme_check_version(NULL);
gpgme_set_locale (NULL, LC_CTYPE, setlocale (LC_CTYPE, NULL));
#ifdef ENABLE_NLS
gpgme_set_locale (NULL, LC_MESSAGES, setlocale (LC_MESSAGES, NULL));

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:220b330eec40f2b15ed82bb87cae09b08c7a71e0282b57416183cf0ead7c7086
size 7583

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ca64bf24206a3026ab8148c2161e89b2bf25f383a44072c6861a6dd0bae53595
size 2503333

View File

@ -1,41 +1,13 @@
--- crypt-gpgme.c ---
+++ crypt-gpgme.c 2013-05-29 09:31:53.141939173 +0000 lib.c | 12 ++++++++++++
@@ -2003,12 +2003,12 @@ static int pgp_check_traditional_one_bod lib.h | 1 +
{ pager.c | 2 +-
if (!mutt_strncmp ("-----BEGIN PGP ", buf, 15)) pgp.c | 24 ++++++++++++------------
{ 4 files changed, 26 insertions(+), 13 deletions(-)
- if (!mutt_strcmp ("MESSAGE-----\n", buf + 15))
+ if (!mutt_strxcmp ("MESSAGE-----\n", buf + 15))
{
enc = 1;
break;
}
- else if (!mutt_strcmp ("SIGNED MESSAGE-----\n", buf + 15))
+ else if (!mutt_strxcmp ("SIGNED MESSAGE-----\n", buf + 15))
{
sgn = 1;
break;
@@ -2196,14 +2196,14 @@ int pgp_gpgme_application_handler (BODY
clearsign = 0;
start_pos = last_pos;
- if (!mutt_strcmp ("MESSAGE-----\n", buf + 15))
+ if (!mutt_strxcmp ("MESSAGE-----\n", buf + 15))
needpass = 1;
- else if (!mutt_strcmp ("SIGNED MESSAGE-----\n", buf + 15))
+ else if (!mutt_strxcmp ("SIGNED MESSAGE-----\n", buf + 15))
{
clearsign = 1;
needpass = 0;
}
- else if (!mutt_strcmp ("PUBLIC KEY BLOCK-----\n", buf + 15))
+ else if (!mutt_strxcmp ("PUBLIC KEY BLOCK-----\n", buf + 15))
{
needpass = 0;
pgp_keyblock = 1;
--- lib.c --- lib.c
+++ lib.c 2013-05-29 09:31:53.325439198 +0000 +++ lib.c 2013-05-29 09:31:53.000000000 +0000
@@ -875,6 +875,18 @@ int mutt_strcmp(const char *a, const cha @@ -876,6 +876,18 @@ int mutt_strcmp(const char *a, const cha
return strcmp(NONULL(a), NONULL(b)); return strcmp(NONULL(a), NONULL(b));
} }
@ -55,8 +27,8 @@
{ {
return strcasecmp(NONULL(a), NONULL(b)); return strcasecmp(NONULL(a), NONULL(b));
--- lib.h --- lib.h
+++ lib.h 2013-05-29 09:25:21.805439324 +0000 +++ lib.h 2013-05-29 09:25:22.000000000 +0000
@@ -179,6 +179,7 @@ int mutt_copy_bytes (FILE *, FILE *, siz @@ -197,6 +197,7 @@ int mutt_copy_bytes (FILE *, FILE *, siz
int mutt_rx_sanitize_string (char *, size_t, const char *); int mutt_rx_sanitize_string (char *, size_t, const char *);
int mutt_strcasecmp (const char *, const char *); int mutt_strcasecmp (const char *, const char *);
int mutt_strcmp (const char *, const char *); int mutt_strcmp (const char *, const char *);
@ -65,7 +37,7 @@
int mutt_strncmp (const char *, const char *, size_t); int mutt_strncmp (const char *, const char *, size_t);
int mutt_strcoll (const char *, const char *); int mutt_strcoll (const char *, const char *);
--- pager.c --- pager.c
+++ pager.c 2013-05-29 09:31:53.433440090 +0000 +++ pager.c 2013-05-29 09:31:53.000000000 +0000
@@ -771,7 +771,7 @@ resolve_types (char *buf, char *raw, str @@ -771,7 +771,7 @@ resolve_types (char *buf, char *raw, str
else if (check_attachment_marker ((char *) raw) == 0) else if (check_attachment_marker ((char *) raw) == 0)
lineInfo[n].type = MT_COLOR_ATTACHMENT; lineInfo[n].type = MT_COLOR_ATTACHMENT;
@ -76,10 +48,19 @@
i = n + 1; i = n + 1;
--- pgp.c --- pgp.c
+++ pgp.c 2013-05-29 09:31:53.461439587 +0000 +++ pgp.c 2015-01-26 15:48:02.361518080 +0000
@@ -287,14 +287,14 @@ int pgp_application_pgp_handler (BODY *m @@ -219,7 +219,7 @@ static void pgp_copy_clearsigned (FILE *
continue;
}
- if (mutt_strcmp (buf, "-----BEGIN PGP SIGNATURE-----\n") == 0)
+ if (mutt_strxcmp (buf, "-----BEGIN PGP SIGNATURE-----\n") == 0)
break;
if (armor_header)
@@ -285,14 +285,14 @@ int pgp_application_pgp_handler (BODY *m
{
clearsign = 0; clearsign = 0;
start_pos = last_pos;
- if (mutt_strcmp ("MESSAGE-----\n", buf + 15) == 0) - if (mutt_strcmp ("MESSAGE-----\n", buf + 15) == 0)
+ if (mutt_strxcmp ("MESSAGE-----\n", buf + 15) == 0) + if (mutt_strxcmp ("MESSAGE-----\n", buf + 15) == 0)
@ -95,7 +76,7 @@
{ {
needpass = 0; needpass = 0;
pgp_keyblock = 1; pgp_keyblock = 1;
@@ -327,10 +327,10 @@ int pgp_application_pgp_handler (BODY *m @@ -325,10 +325,10 @@ int pgp_application_pgp_handler (BODY *m
fputs (buf, tmpfp); fputs (buf, tmpfp);
@ -109,7 +90,7 @@
break; break;
/* remember optional Charset: armor header as defined by RfC4880 */ /* remember optional Charset: armor header as defined by RfC4880 */
if (mutt_strncmp ("Charset: ", buf, 9) == 0) if (mutt_strncmp ("Charset: ", buf, 9) == 0)
@@ -552,11 +552,11 @@ static int pgp_check_traditional_one_bod @@ -550,11 +550,11 @@ static int pgp_check_traditional_one_bod
{ {
if (mutt_strncmp ("-----BEGIN PGP ", buf, 15) == 0) if (mutt_strncmp ("-----BEGIN PGP ", buf, 15) == 0)
{ {
@ -124,7 +105,7 @@
key = 1; key = 1;
} }
} }
@@ -1065,9 +1065,9 @@ BODY *pgp_sign_message (BODY *a) @@ -1063,9 +1063,9 @@ BODY *pgp_sign_message (BODY *a)
*/ */
while (fgets (buffer, sizeof (buffer) - 1, pgpout) != NULL) while (fgets (buffer, sizeof (buffer) - 1, pgpout) != NULL)
{ {

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fa4453d1fe2d5bc2fd78b71779594de2f5998c5921fad03195f28ae0a29b4d6f
size 243

3
mutt-1.5.23.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3af0701e57b9e1880ed3a0dee34498a228939e854a16cdccd24e5e502626fd37
size 3782032

View File

@ -1,10 +0,0 @@
--- mutt-1.5.21/copy.c
+++ mutt-1.5.21/copy.c 2014-03-25 08:42:27.466839319 +0000
@@ -254,6 +254,7 @@ mutt_copy_hdr (FILE *in, FILE *out, LOFF
{
if (!address_header_decode (&this_one))
rfc2047_decode (&this_one);
+ this_one_len = mutt_strlen (this_one);
}
if (!headers[x])

View File

@ -1,3 +1,19 @@
-------------------------------------------------------------------
Mon Jan 26 16:22:08 UTC 2015 - werner@suse.de
- Update to mutt version 1.5.23 which is a security bugfix release
as well as add support for TLS 1.1/1.2
- Remove the patches automake-1.12.patch,
mutt-1.5.20-gpgme_set_locale.patch, and mutt-CVE-2014-0467.patch
- Replace the patches
patch-1.5.23.rr.compressed.bz2 with patch-1.5.21.rr.compressed.1.bz2
mutt-1.5.21.sidebar.20120829.patch with patch-1.5.23.sidebar.20140412.patch
patch-1.5.5.1.nt.xtitles.3.ab.1 with patch-1.5.23.xtitles.patch
mutt-1.5.21.dif with mutt-1.5.23.dif
- Modify the patches aw.listreply.diff, bug-676388-largefile.patch,
and bsc907453-CVE-2014-9116-jessie.patch
- Build with PIE
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Dec 4 12:03:10 UTC 2014 - werner@suse.de Thu Dec 4 12:03:10 UTC 2014 - werner@suse.de

View File

@ -1,7 +1,7 @@
# #
# spec file for package mutt # spec file for package mutt
# #
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -57,6 +57,7 @@ Url: http://www.mutt.org
Provides: muttssl Provides: muttssl
Obsoletes: muttssl Obsoletes: muttssl
Recommends: smtp_daemon Recommends: smtp_daemon
Recommends: urlview
Recommends: w3m Recommends: w3m
%if 0%{?suse_version} > 1130 %if 0%{?suse_version} > 1130
Requires(post): shared-mime-info Requires(post): shared-mime-info
@ -65,13 +66,13 @@ Requires(postun): shared-mime-info
# NOTE: We don't want this dependency and desktop-data-SuSE is in all # NOTE: We don't want this dependency and desktop-data-SuSE is in all
# desktop selections. # desktop selections.
#Requires: desktop-data-SuSE #Requires: desktop-data-SuSE
Version: 1.5.21 Version: 1.5.23
Release: 33.2 Release: 33.2
Summary: Mail Program Summary: Mail Program
License: GPL-2.0+ License: GPL-2.0+
Group: Productivity/Networking/Email/Clients Group: Productivity/Networking/Email/Clients
# ftp://ftp.mutt.org/mutt/devel/ # ftp://ftp.mutt.org/mutt/devel/
Source0: %name-%version.tar.bz2 Source0: https://bitbucket.org/mutt/mutt/downloads/%name-%version.tar.gz
Source1: Signature_conversion Source1: Signature_conversion
Source2: README.alternates Source2: README.alternates
Source3: mutt.png Source3: mutt.png
@ -83,28 +84,24 @@ Source8: %name-%version-patches.tar.bz2
Source9: mutt.mailcap Source9: mutt.mailcap
Patch: %name-%version.dif Patch: %name-%version.dif
# http://www.spinnaker.de/mutt/compressed/ # http://www.spinnaker.de/mutt/compressed/
Patch1: patch-%version.rr.compressed.1.bz2 Patch1: patch-%version.rr.compressed.bz2
Patch2: %name-1.5.9i-pgpewrap.diff Patch2: %name-1.5.9i-pgpewrap.diff
Patch3: %name-1.5.20-sendgroupreplyto.diff Patch3: %name-1.5.20-sendgroupreplyto.diff
Patch4: %name-1.5.15-wrapcolumn.diff Patch4: %name-1.5.15-wrapcolumn.diff
Patch5: patch-1.5.5.1.nt.xtitles.3.ab.1 Patch5: patch-1.5.23.xtitles.patch
# http://lunar-linux.org/mutt-sidebar # http://lunar-linux.org/mutt-sidebar
Patch6: mutt-1.5.21.sidebar.20120829.patch Patch6: patch-1.5.23.sidebar.20140412.patch
Patch7: mutt-1.5.21-opennfs.dif Patch7: mutt-1.5.21-opennfs.dif
Patch8: mutt-1.5.20-gpgme_set_locale.patch
Patch9: bug-676388-largefile.patch Patch9: bug-676388-largefile.patch
Patch10: mutt-1.5.21-tinfo.dif Patch10: mutt-1.5.21-tinfo.dif
# http://www.wolfermann.org/mutt.html # http://www.wolfermann.org/mutt.html
Patch11: aw.listreply.diff Patch11: aw.listreply.diff
Patch12: patch-1.5.21.vk.pgp_verbose_mime Patch12: patch-1.5.21.vk.pgp_verbose_mime
Patch13: automake-1.12.patch
Patch14: nion.sidebar-color.diff Patch14: nion.sidebar-color.diff
# PATCH-FIX-OPENSUSE: bnc#813498 - mutt crashes in fgetwc in text_enriched_handler # PATCH-FIX-OPENSUSE: bnc#813498 - mutt crashes in fgetwc in text_enriched_handler
Patch15: widechar.sidebar.dif Patch15: widechar.sidebar.dif
# PATCH-FIX-OPENSUSE: Be able to read signed/encrypted messsages even with CRLF # PATCH-FIX-OPENSUSE: Be able to read signed/encrypted messsages even with CRLF
Patch16: mutt-1.5.21-cariage-return.path Patch16: mutt-1.5.23-cariage-return.path
# PATCH-FIX-SUSE: bnc#868115 - CVE-2014-0467: mutt: crash due to malicious email
Patch17: mutt-CVE-2014-0467.patch
# PATCH-FIX-OPENSUSE bnc#899712 - fallback mailcap for e.g text/html # PATCH-FIX-OPENSUSE bnc#899712 - fallback mailcap for e.g text/html
Patch18: mutt-1.5.21-mailcap.diff Patch18: mutt-1.5.21-mailcap.diff
# PATCH-FIX-SUSE: bsc#907453 - CVE-2014-9116: mutt: heap-based buffer overflow in mutt_substrdup() # PATCH-FIX-SUSE: bsc#907453 - CVE-2014-9116: mutt: heap-based buffer overflow in mutt_substrdup()
@ -132,16 +129,13 @@ done
%patch5 -p1 -b .xtitles %patch5 -p1 -b .xtitles
%patch6 -p1 -b .sidebar %patch6 -p1 -b .sidebar
%patch7 -p0 -b .opennfs %patch7 -p0 -b .opennfs
%patch8 -p1 -b .gpgme
%patch9 -p1 -b .largefile %patch9 -p1 -b .largefile
%patch10 -p0 -b .tinfo %patch10 -p0 -b .tinfo
%patch11 -p1 -b .listreply %patch11 -p1 -b .listreply
%patch12 -p1 -b .pgp_verbose_mtime %patch12 -p1 -b .pgp_verbose_mtime
%patch13 -p1 -b .automake-1.12
%patch14 -p1 -b .sidebar.color %patch14 -p1 -b .sidebar.color
%patch15 -p0 -b .widechar.sidebar %patch15 -p0 -b .widechar.sidebar
%patch16 -p0 -b .crlf %patch16 -p0 -b .crlf
%patch17 -p1 -b .cve.2014.0467
%patch18 -p1 -b .mailcap %patch18 -p1 -b .mailcap
%patch19 -p1 -b .cvw2014.9116 %patch19 -p1 -b .cvw2014.9116
@ -178,14 +172,15 @@ autoreconf -fi
CC=gcc CC=gcc
CFLAGS="-Wall $RPM_OPT_FLAGS -I. -D_GNU_SOURCE" CFLAGS="-Wall $RPM_OPT_FLAGS -I. -D_GNU_SOURCE"
#cflags -DSUSE_IMAP_FORCE_SSL CFLAGS #cflags -DSUSE_IMAP_FORCE_SSL CFLAGS
cflags -std=gnu99 CFLAGS
cflags -fno-strict-aliasing CFLAGS cflags -fno-strict-aliasing CFLAGS
cflags -fstack-protector CFLAGS cflags -fstack-protector CFLAGS
cflags -fPIE CFLAGS
cflags -g3 CFLAGS cflags -g3 CFLAGS
cflags -pipe CFLAGS cflags -pipe CFLAGS
cflags -Wl,--as-needed LDFLAGS cflags -Wl,--as-needed LDFLAGS
cflags -Wl,-O2 LDFLAGS cflags -Wl,-O2 LDFLAGS
cflags -Wl,--hash-size=8599 LDFLAGS cflags -Wl,--hash-size=8599 LDFLAGS
cflags -pie LDFLAGS
KRB5CFGPATH=%{S:6} KRB5CFGPATH=%{S:6}
export CC CFLAGS LDFLAGS KRB5CFGPATH export CC CFLAGS LDFLAGS KRB5CFGPATH
chmod 755 $KRB5CFGPATH chmod 755 $KRB5CFGPATH
@ -276,6 +271,7 @@ install -D -m 644 %{SOURCE9} %{buildroot}%{_datadir}/mutt/mailcap
%{_datadir}/applications/*.desktop %{_datadir}/applications/*.desktop
%{_datadir}/pixmaps/mutt.png %{_datadir}/pixmaps/mutt.png
%{_mandir}/man1/mutt.1.gz %{_mandir}/man1/mutt.1.gz
%{_mandir}/man1/pgp*.1.gz
%{_mandir}/man1/smime_keys.1.gz %{_mandir}/man1/smime_keys.1.gz
%{_mandir}/man5/mmdf_mutt.5.gz %{_mandir}/man5/mmdf_mutt.5.gz
%{_mandir}/man5/muttrc.5.gz %{_mandir}/man5/muttrc.5.gz

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:352a022a428c6a00c044105ae29a7abbf7aab0082fcc7b9694af8b02c7c35ee2
size 10357

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4f92431ff7e793af274d200324c4526d470e88d68d6cb803aaf387c9292dba62
size 9730

View File

@ -1,21 +1,42 @@
Index: mutt-1.5.20/PATCHES From: Cristoph Berg <myon@debian.org>
=================================================================== Date: Thu, 27 Feb 2014 12:25:51 +0100
--- mutt-1.5.20.orig/PATCHES Subject: xtitles
+++ mutt-1.5.20/PATCHES
@@ -1 +1,2 @@ This is the xterm title patch as found on the mutt mailing lists.
patch-1.5.19.rr.compressed.1
+patch-1.5.5.1.nt.xtitles.3.ab.1 * Changes made:
Index: mutt-1.5.20/curs_main.c - 2007-01-27 myon: using %P caused a segfault, updated status.c to catch
=================================================================== menu==NULL.
--- mutt-1.5.20.orig/curs_main.c - 2007-02-20 myon: make the note about the xterm_set_titles defaults a
+++ mutt-1.5.20/curs_main.c comment.
@@ -110,6 +110,19 @@ static const char *No_visible = N_("No v - 2008-08-02 myon: move set_xterm_* prototypes into the proper header file
(cleaner code, no functional change, evades conflict with sidebar patch)
Signed-off-by: Matteo F. Vescovi <mfvescovi@gmail.com>
Gbp-Pq: Topic features
---
curs_main.c | 20 ++++++++++++++++++++
globals.h | 2 ++
init.c | 20 ++++++++++++++++++++
init.h | 21 +++++++++++++++++++++
mutt.h | 1 +
mutt_menu.h | 2 ++
pager.c | 7 +++++++
status.c | 2 ++
8 files changed, 75 insertions(+)
diff --git a/curs_main.c b/curs_main.c
index aa4b044..16ddbc9 100644
--- a/curs_main.c
+++ b/curs_main.c
@@ -110,6 +110,19 @@ static const char *No_visible = N_("No visible messages.");
extern size_t UngetCount; extern size_t UngetCount;
+#define ASCII_CTRL_G 0x07 +#define ASCII_CTRL_G 0x07
+#define ASCII_CTRL_OPEN_SQUARE_BRAKET 0x1b +#define ASCII_CTRL_OPEN_SQUARE_BRAKET 0x1b
+ +
+void set_xterm_title_bar(char *title) +void set_xterm_title_bar(char *title)
+{ +{
+ fprintf(stderr ,"%c]2;%s%c", ASCII_CTRL_OPEN_SQUARE_BRAKET, title, ASCII_CTRL_G); + fprintf(stderr ,"%c]2;%s%c", ASCII_CTRL_OPEN_SQUARE_BRAKET, title, ASCII_CTRL_G);
@ -29,9 +50,9 @@ Index: mutt-1.5.20/curs_main.c
void index_make_entry (char *s, size_t l, MUTTMENU *menu, int num) void index_make_entry (char *s, size_t l, MUTTMENU *menu, int num)
{ {
format_flag flag = M_FORMAT_MAKEPRINT | M_FORMAT_ARROWCURSOR | M_FORMAT_INDEX; format_flag flag = M_FORMAT_MAKEPRINT | M_FORMAT_ARROWCURSOR | M_FORMAT_INDEX;
@@ -566,6 +579,13 @@ int mutt_index_menu (void) @@ -560,6 +573,13 @@ int mutt_index_menu (void)
SETCOLOR (MT_COLOR_NORMAL); mutt_paddstr (COLS, buf);
BKGDSET (MT_COLOR_NORMAL); NORMAL_COLOR;
menu->redraw &= ~REDRAW_STATUS; menu->redraw &= ~REDRAW_STATUS;
+ if (option(OPTXTERMSETTITLES)) + if (option(OPTXTERMSETTITLES))
+ { + {
@ -43,10 +64,10 @@ Index: mutt-1.5.20/curs_main.c
} }
menu->redraw = 0; menu->redraw = 0;
Index: mutt-1.5.20/globals.h diff --git a/globals.h b/globals.h
=================================================================== index 6fefe5b..584cd0c 100644
--- mutt-1.5.20.orig/globals.h --- a/globals.h
+++ mutt-1.5.20/globals.h +++ b/globals.h
@@ -141,6 +141,8 @@ WHERE char *Tempdir; @@ -141,6 +141,8 @@ WHERE char *Tempdir;
WHERE char *Tochars; WHERE char *Tochars;
WHERE char *Username; WHERE char *Username;
@ -56,11 +77,11 @@ Index: mutt-1.5.20/globals.h
WHERE char *CurrentFolder; WHERE char *CurrentFolder;
WHERE char *LastFolder; WHERE char *LastFolder;
Index: mutt-1.5.20/init.c diff --git a/init.c b/init.c
=================================================================== index cc3cf4b..81bb9e7 100644
--- mutt-1.5.20.orig/init.c --- a/init.c
+++ mutt-1.5.20/init.c +++ b/init.c
@@ -1833,6 +1833,26 @@ static int parse_set (BUFFER *tmp, BUFFE @@ -1877,6 +1877,26 @@ static int parse_set (BUFFER *tmp, BUFFER *s, unsigned long data, BUFFER *err)
toggle_option (MuttVars[idx].data); toggle_option (MuttVars[idx].data);
else else
set_option (MuttVars[idx].data); set_option (MuttVars[idx].data);
@ -87,11 +108,11 @@ Index: mutt-1.5.20/init.c
} }
else if (myvar || DTYPE (MuttVars[idx].type) == DT_STR || else if (myvar || DTYPE (MuttVars[idx].type) == DT_STR ||
DTYPE (MuttVars[idx].type) == DT_PATH || DTYPE (MuttVars[idx].type) == DT_PATH ||
Index: mutt-1.5.20/init.h diff --git a/init.h b/init.h
=================================================================== index 80d05ce..cf8e75a 100644
--- mutt-1.5.20.orig/init.h --- a/init.h
+++ mutt-1.5.20/init.h +++ b/init.h
@@ -3348,6 +3348,27 @@ struct option_t MuttVars[] = { @@ -3412,6 +3412,27 @@ struct option_t MuttVars[] = {
** Also see the $$read_inc, $$net_inc and $$time_inc variables and the ** Also see the $$read_inc, $$net_inc and $$time_inc variables and the
** ``$tuning'' section of the manual for performance considerations. ** ``$tuning'' section of the manual for performance considerations.
*/ */
@ -103,11 +124,11 @@ Index: mutt-1.5.20/init.h
+ ** ``$$status_format''. + ** ``$$status_format''.
+ */ + */
+ {"xterm_set_titles", DT_BOOL, R_BOTH, OPTXTERMSETTITLES, 0}, + {"xterm_set_titles", DT_BOOL, R_BOTH, OPTXTERMSETTITLES, 0},
+ /* The default must be off to force in the validity checking. */
+ /* + /*
+ ** .pp + ** .pp
+ ** Controls whether mutt sets the xterm title bar and icon name + ** Controls whether mutt sets the xterm title bar and icon name
+ ** (as long as you're in an appropriate terminal). The default must + ** (as long as you are in an appropriate terminal).
+ ** be off to force in the validity checking.
+ */ + */
+ {"xterm_title", DT_STR, R_BOTH, UL &XtermTitle, UL "Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"}, + {"xterm_title", DT_STR, R_BOTH, UL &XtermTitle, UL "Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"},
+ /* + /*
@ -119,11 +140,11 @@ Index: mutt-1.5.20/init.h
/*--*/ /*--*/
{ NULL, 0, 0, 0, 0 } { NULL, 0, 0, 0, 0 }
}; };
Index: mutt-1.5.20/mutt.h diff --git a/mutt.h b/mutt.h
=================================================================== index dcd7dc5..1d7e177 100644
--- mutt-1.5.20.orig/mutt.h --- a/mutt.h
+++ mutt-1.5.20/mutt.h +++ b/mutt.h
@@ -452,6 +452,7 @@ enum @@ -449,6 +449,7 @@ enum
OPTWRAPSEARCH, OPTWRAPSEARCH,
OPTWRITEBCC, /* write out a bcc header? */ OPTWRITEBCC, /* write out a bcc header? */
OPTXMAILER, OPTXMAILER,
@ -131,14 +152,27 @@ Index: mutt-1.5.20/mutt.h
OPTCRYPTUSEGPGME, OPTCRYPTUSEGPGME,
OPTCRYPTUSEPKA, OPTCRYPTUSEPKA,
Index: mutt-1.5.20/pager.c diff --git a/mutt_menu.h b/mutt_menu.h
=================================================================== index d459bef..82abecd 100644
--- mutt-1.5.20.orig/pager.c --- a/mutt_menu.h
+++ mutt-1.5.20/pager.c +++ b/mutt_menu.h
@@ -1784,6 +1784,13 @@ mutt_pager (const char *banner, const ch @@ -103,6 +103,8 @@ void menu_current_middle (MUTTMENU *);
void menu_current_bottom (MUTTMENU *);
void menu_check_recenter (MUTTMENU *);
void menu_status_line (char *, size_t, MUTTMENU *, const char *);
+void set_xterm_title_bar (char *title);
+void set_xterm_icon_name (char *name);
MUTTMENU *mutt_new_menu (int);
void mutt_menuDestroy (MUTTMENU **);
diff --git a/pager.c b/pager.c
index 486d8c8..23eb8ca 100644
--- a/pager.c
+++ b/pager.c
@@ -1812,6 +1812,13 @@ mutt_pager (const char *banner, const char *fname, int flags, pager_t *extra)
mutt_paddstr (COLS, bn);
} }
BKGDSET (MT_COLOR_NORMAL); NORMAL_COLOR;
SETCOLOR (MT_COLOR_NORMAL);
+ if (option(OPTXTERMSETTITLES)) + if (option(OPTXTERMSETTITLES))
+ { + {
+ menu_status_line (buffer, sizeof (buffer), index, NONULL (XtermTitle)); + menu_status_line (buffer, sizeof (buffer), index, NONULL (XtermTitle));
@ -149,15 +183,16 @@ Index: mutt-1.5.20/pager.c
} }
if ((redraw & REDRAW_INDEX) && index) if ((redraw & REDRAW_INDEX) && index)
Index: mutt-1.5.20/mutt_menu.h diff --git a/status.c b/status.c
=================================================================== index 1bb9a5a..6051e3a 100644
--- mutt-1.5.20.orig/mutt_menu.h --- a/status.c
+++ mutt-1.5.20/mutt_menu.h +++ b/status.c
@@ -112,4 +112,7 @@ int mutt_menuLoop (MUTTMENU *); @@ -195,6 +195,8 @@ status_format_str (char *buf, size_t buflen, size_t col, char op, const char *sr
void index_make_entry (char *, size_t, struct menu_t *, int); break;
int index_color (int);
+void set_xterm_title_bar(char *); case 'P':
+void set_xterm_icon_name(char *); + if (!menu)
+ + break;
#endif /* _MUTT_MENU_H_ */ if (menu->top + menu->pagelen >= menu->max)
cp = menu->top ? "end" : "all";
else