Accepting request 526350 from server:mail
- Update to neomutt 20170912 which updates to mutt 1.9.0 NeoMutt Add guix build support Only match real mailboxes when looking for new mail Fix the printing of ncurses version in -v output Bind editor <delete> to delete-char Fix overflowing colours Fix empty In-Reply-To generation Trim trailing slash from completed dirs Add guix-neomutt.scm Fix setting custom query_type in notmuch query Better curses identification Use the system's wchar_t support Use the system's md5 tool (or equivalent) Clean up configure.ac Teach gen-map-doc about the new opcode header Rename functions (snake_case) Rename constants/defines (UPPER_CASE) Create library of shared functions Much tidying Rename globals to match user config Drop unnecessary functions/macros Use a standard list implementation Coverity fixes Use explicit NUL for string terminators Drop OPS* in favour of opcodes.h Upstream Fix menu color calls to occur before positioning the cursor When guessing an attachment type, don't allow text/plain if there is a null character Add $imap_poll_timeout to allow mailbox polling to time out OBS-URL: https://build.opensuse.org/request/show/526350 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutt?expand=0&rev=78
This commit is contained in:
commit
013873328b
@ -7,34 +7,34 @@ ask when sending list message replies to author only - Armin Wolfermann (aw)
|
|||||||
3 files changed, 26 insertions(+)
|
3 files changed, 26 insertions(+)
|
||||||
|
|
||||||
--- init.h
|
--- init.h
|
||||||
+++ init.h 2017-06-13 08:07:08.641344928 +0000
|
+++ init.h 2017-09-11 11:57:46.199273705 +0000
|
||||||
@@ -1631,6 +1631,13 @@ struct Option MuttVars[] = {
|
@@ -1662,6 +1662,13 @@ struct Option MuttVars[] = {
|
||||||
** ``$$keywords_standard'' are \fCfalse\fP, mutt will save keywords
|
** ``$$keywords_standard'' are \fCfalse\fP, mutt will save keywords
|
||||||
** to legacy headers to ensure that it does not lose your labels.
|
** to legacy headers to ensure that it does not lose your labels.
|
||||||
*/
|
*/
|
||||||
+ { "list_reply", DT_QUAD, R_NONE, OPT_LISTREPLY, MUTT_NO },
|
+ { "list_reply", DT_QUAD, R_NONE, OPT_LIST_REPLY, MUTT_NO },
|
||||||
+ /*
|
+ /*
|
||||||
+ ** .pp
|
+ ** .pp
|
||||||
+ ** When set, address replies to the mailing list the original message came
|
+ ** When set, address replies to the mailing list the original message came
|
||||||
+ ** from (instead to the author only). Setting this option to ``ask-yes'' or
|
+ ** from (instead to the author only). Setting this option to ``ask-yes'' or
|
||||||
+ ** ``ask-no'' will ask if you really intended to reply to the author only.
|
+ ** ``ask-no'' will ask if you really intended to reply to the author only.
|
||||||
+ */
|
+ */
|
||||||
{ "mail_check", DT_NUM, R_NONE, UL &BuffyTimeout, 5 },
|
{ "mail_check", DT_NUMBER, R_NONE, UL &MailCheck, 5 },
|
||||||
/*
|
/*
|
||||||
** .pp
|
** .pp
|
||||||
--- mutt.h
|
--- mutt.h
|
||||||
+++ mutt.h 2017-06-13 08:07:08.641344928 +0000
|
+++ mutt.h 2017-09-11 11:59:08.957770801 +0000
|
||||||
@@ -249,6 +249,7 @@ enum
|
@@ -266,6 +266,7 @@ enum QuadOptionVars
|
||||||
#endif
|
#endif
|
||||||
OPT_SUBJECT,
|
OPT_ABORT_NOSUBJECT,
|
||||||
OPT_VERIFYSIG, /* verify PGP signatures */
|
OPT_CRYPT_VERIFY_SIG, /* verify PGP signatures */
|
||||||
+ OPT_LISTREPLY,
|
+ OPT_LIST_REPLY,
|
||||||
#ifdef USE_NNTP
|
#ifdef USE_NNTP
|
||||||
OPT_TOMODERATED,
|
OPT_POST_MODERATED,
|
||||||
OPT_CATCHUP,
|
OPT_CATCHUP_NEWSGROUP,
|
||||||
--- send.c
|
--- send.c
|
||||||
+++ send.c 2017-06-13 08:08:46.631548101 +0000
|
+++ send.c 2017-09-11 12:00:28.680322715 +0000
|
||||||
@@ -512,6 +512,7 @@ static int include_reply(struct Context
|
@@ -532,6 +532,7 @@ static int include_reply(struct Context
|
||||||
static int default_to(struct Address **to, struct Envelope *env, int flags, int hmfupto)
|
static int default_to(struct Address **to, struct Envelope *env, int flags, int hmfupto)
|
||||||
{
|
{
|
||||||
char prompt[STRING];
|
char prompt[STRING];
|
||||||
@ -42,7 +42,7 @@ ask when sending list message replies to author only - Armin Wolfermann (aw)
|
|||||||
|
|
||||||
if (flags && env->mail_followup_to && hmfupto == MUTT_YES)
|
if (flags && env->mail_followup_to && hmfupto == MUTT_YES)
|
||||||
{
|
{
|
||||||
@@ -525,6 +526,23 @@ static int default_to(struct Address **t
|
@@ -545,6 +546,23 @@ static int default_to(struct Address **t
|
||||||
if (flags & SENDLISTREPLY)
|
if (flags & SENDLISTREPLY)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
@ -50,7 +50,7 @@ ask when sending list message replies to author only - Armin Wolfermann (aw)
|
|||||||
+ * intended to reply to the author only.
|
+ * intended to reply to the author only.
|
||||||
+ */
|
+ */
|
||||||
+ if (!(flags & SENDGROUPREPLY) && mutt_is_list_cc (0, env->to, env->cc)) {
|
+ if (!(flags & SENDGROUPREPLY) && mutt_is_list_cc (0, env->to, env->cc)) {
|
||||||
+ switch (query_quadoption (OPT_LISTREPLY,
|
+ switch (query_quadoption (OPT_LIST_REPLY,
|
||||||
+ _("Message came from a mailing list. Reply to author only?")))
|
+ _("Message came from a mailing list. Reply to author only?")))
|
||||||
+ {
|
+ {
|
||||||
+ case MUTT_NO:
|
+ case MUTT_NO:
|
||||||
@ -63,6 +63,6 @@ ask when sending list message replies to author only - Armin Wolfermann (aw)
|
|||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
if (!option(OPTREPLYSELF) && mutt_addr_is_user(env->from))
|
if (!option(OPT_REPLY_SELF) && mutt_addr_is_user(env->from))
|
||||||
{
|
{
|
||||||
/* mail is from the user, assume replying to recipients */
|
/* mail is from the user, assume replying to recipients */
|
||||||
|
@ -13,12 +13,12 @@ has -jessie prefixed in its name.
|
|||||||
Index: mutt/lib.c
|
Index: mutt/lib.c
|
||||||
===================================================================
|
===================================================================
|
||||||
---
|
---
|
||||||
lib.c | 3 +++
|
lib/string.c | 3 +++
|
||||||
1 file changed, 3 insertions(+)
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
--- lib.c
|
--- lib/string.c
|
||||||
+++ lib.c 2017-06-13 08:18:01.113325096 +0000
|
+++ lib/string.c 2017-09-11 12:20:02.770906853 +0000
|
||||||
@@ -820,6 +820,9 @@ char *mutt_substrdup(const char *begin,
|
@@ -338,6 +338,9 @@ char *mutt_substrdup(const char *begin,
|
||||||
size_t len;
|
size_t len;
|
||||||
char *p = NULL;
|
char *p = NULL;
|
||||||
|
|
||||||
|
@ -5,19 +5,19 @@
|
|||||||
3 files changed, 5 insertions(+), 5 deletions(-)
|
3 files changed, 5 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
--- body.h
|
--- body.h
|
||||||
+++ body.h 2017-06-13 08:06:05.550501689 +0000
|
+++ body.h 2017-09-11 11:52:02.449585688 +0000
|
||||||
@@ -29,7 +29,7 @@ struct Body
|
@@ -37,7 +37,7 @@ struct Body
|
||||||
struct Parameter *parameter; /* parameters of the content-type */
|
struct 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 */
|
||||||
- long hdr_offset; /* offset in stream where the headers begin.
|
- long hdr_offset; /**< offset in stream where the headers begin.
|
||||||
+ LOFF_T hdr_offset; /* offset in stream where the headers begin.
|
+ LOFF_T hdr_offset; /**< offset in stream where the headers begin.
|
||||||
* 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 */
|
||||||
--- mh.c
|
--- mh.c
|
||||||
+++ mh.c 2017-06-13 08:04:35.572151258 +0000
|
+++ mh.c 2017-09-11 11:50:58.466761763 +0000
|
||||||
@@ -1732,9 +1732,9 @@ static int mh_rewrite_message(struct Con
|
@@ -1757,9 +1757,9 @@ static int mh_rewrite_message(struct Con
|
||||||
char newpath[_POSIX_PATH_MAX];
|
char newpath[_POSIX_PATH_MAX];
|
||||||
char partpath[_POSIX_PATH_MAX];
|
char partpath[_POSIX_PATH_MAX];
|
||||||
|
|
||||||
@ -31,11 +31,11 @@
|
|||||||
if ((dest = mx_open_new_message(ctx, h, 0)) == NULL)
|
if ((dest = mx_open_new_message(ctx, h, 0)) == NULL)
|
||||||
return -1;
|
return -1;
|
||||||
--- ncrypt/crypt_gpgme.c
|
--- ncrypt/crypt_gpgme.c
|
||||||
+++ ncrypt/crypt_gpgme.c 2017-06-13 08:04:35.572151258 +0000
|
+++ ncrypt/crypt_gpgme.c 2017-09-11 11:52:34.888989382 +0000
|
||||||
@@ -493,7 +493,7 @@ static gpgme_data_t body_to_data_object(
|
@@ -570,7 +570,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. */
|
*/
|
||||||
-static gpgme_data_t file_to_data_object(FILE *fp, long offset, long length)
|
-static gpgme_data_t file_to_data_object(FILE *fp, long offset, long length)
|
||||||
+static gpgme_data_t file_to_data_object(FILE *fp, LOFF_T offset, long length)
|
+static gpgme_data_t file_to_data_object(FILE *fp, LOFF_T offset, long length)
|
||||||
{
|
{
|
||||||
|
@ -1,18 +1,16 @@
|
|||||||
Index: init.h
|
Index: init.h
|
||||||
===================================================================
|
===================================================================
|
||||||
---
|
---
|
||||||
init.h | 3 ++-
|
init.h | 1 +
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
--- init.h
|
--- init.h
|
||||||
+++ init.h 2017-06-13 07:52:39.605269357 +0000
|
+++ init.h 2017-09-11 11:39:38.727250536 +0000
|
||||||
@@ -4297,7 +4297,8 @@ struct Option MuttVars[] = {
|
@@ -4354,6 +4354,7 @@ struct Option MuttVars[] = {
|
||||||
** When \fIset\fP, mutt will weed headers when displaying, forwarding,
|
|
||||||
** printing, or replying to messages.
|
** printing, or replying to messages.
|
||||||
*/
|
*/
|
||||||
- { "wrap", DT_NUM, R_PAGER, UL &Wrap, 0 },
|
{ "wrap", DT_NUMBER, R_PAGER, UL &Wrap, 0 },
|
||||||
+ { "wrap", DT_NUM, R_PAGER, UL &Wrap, 0 },
|
+ { "wrapcolumn", DT_SYNONYM, R_NONE, UL "wrap", 0 },
|
||||||
+ { "wrapcolumn", DT_SYN, R_NONE, UL "wrap", 0 },
|
|
||||||
/*
|
/*
|
||||||
** .pp
|
** .pp
|
||||||
** When set to a positive value, mutt will wrap text at $$wrap characters.
|
** When set to a positive value, mutt will wrap text at $$wrap characters.
|
||||||
|
@ -5,40 +5,40 @@
|
|||||||
3 files changed, 18 insertions(+), 2 deletions(-)
|
3 files changed, 18 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
--- init.h
|
--- init.h
|
||||||
+++ init.h 2017-06-13 07:47:41.578725458 +0000
|
+++ init.h 2017-09-11 11:36:34.666630359 +0000
|
||||||
@@ -3078,6 +3078,13 @@ struct Option MuttVars[] = {
|
@@ -3135,6 +3135,13 @@ struct Option MuttVars[] = {
|
||||||
** .pp
|
** .pp
|
||||||
** Also see the $$force_name variable.
|
** Also see the $$force_name variable.
|
||||||
*/
|
*/
|
||||||
+ { "send_group_reply_to", DT_BOOL, R_NONE, OPTSENDGROUPREPLYTO, 0 },
|
+ { "send_group_reply_to", DT_BOOL, R_NONE, OPT_SENDGROUP_REPLYTO, 0 },
|
||||||
+ /*
|
+ /*
|
||||||
+ ** .pp
|
+ ** .pp
|
||||||
+ ** This variable controls how group replies are done.
|
+ ** This variable controls how group replies are done.
|
||||||
+ ** When set, all recepients listet in "To:" are set in the
|
+ ** When set, all recepients listet in "To:" are set in the
|
||||||
+ ** "To:" header again, else in the "CC", which is the default.
|
+ ** "To:" header again, else in the "CC", which is the default.
|
||||||
+ */
|
+ */
|
||||||
{ "score", DT_BOOL, R_NONE, OPTSCORE, 1 },
|
{ "score", DT_BOOL, R_NONE, OPT_SCORE, 1 },
|
||||||
/*
|
/*
|
||||||
** .pp
|
** .pp
|
||||||
--- options.h
|
--- options.h
|
||||||
+++ options.h 2017-06-13 07:51:23.062670919 +0000
|
+++ options.h 2017-09-11 11:37:05.418065746 +0000
|
||||||
@@ -151,6 +151,7 @@ enum
|
@@ -160,6 +160,7 @@ enum GlobalBool
|
||||||
OPTSAVEADDRESS,
|
OPT_SAVE_ADDRESS,
|
||||||
OPTSAVEEMPTY,
|
OPT_SAVE_EMPTY,
|
||||||
OPTSAVENAME,
|
OPT_SAVE_NAME,
|
||||||
+ OPTSENDGROUPREPLYTO,
|
+ OPT_SENDGROUP_REPLYTO,
|
||||||
OPTSCORE,
|
OPT_SCORE,
|
||||||
#ifdef USE_SIDEBAR
|
#ifdef USE_SIDEBAR
|
||||||
OPTSIDEBAR,
|
OPT_SIDEBAR_VISIBLE,
|
||||||
--- send.c
|
--- send.c
|
||||||
+++ send.c 2017-06-13 07:47:41.578725458 +0000
|
+++ send.c 2017-09-11 11:37:26.009687657 +0000
|
||||||
@@ -617,8 +617,16 @@ int mutt_fetch_recips(struct Envelope *o
|
@@ -637,8 +637,16 @@ int mutt_fetch_recips(struct Envelope *o
|
||||||
if ((flags & SENDGROUPREPLY) && (!in->mail_followup_to || hmfupto != MUTT_YES))
|
if ((flags & SENDGROUPREPLY) && (!in->mail_followup_to || hmfupto != MUTT_YES))
|
||||||
{
|
{
|
||||||
/* if(!mutt_addr_is_user(in->to)) */
|
/* if(!mutt_addr_is_user(in->to)) */
|
||||||
- rfc822_append(&out->cc, in->to, 1);
|
- rfc822_append(&out->cc, in->to, 1);
|
||||||
- rfc822_append(&out->cc, in->cc, 1);
|
- rfc822_append(&out->cc, in->cc, 1);
|
||||||
+ if (option (OPTSENDGROUPREPLYTO))
|
+ if (option (OPT_SENDGROUP_REPLYTO))
|
||||||
+ {
|
+ {
|
||||||
+ rfc822_append(&out->to, in->to, 0);
|
+ rfc822_append(&out->to, in->to, 0);
|
||||||
+ rfc822_append(&out->cc, in->cc, 1);
|
+ rfc822_append(&out->cc, in->cc, 1);
|
||||||
|
@ -8,8 +8,8 @@ Index: mutt-1.5.21/init.c
|
|||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
--- init.c
|
--- init.c
|
||||||
+++ init.c 2017-06-13 08:17:31.217879191 +0000
|
+++ init.c 2017-09-11 12:17:15.337988648 +0000
|
||||||
@@ -4088,7 +4088,8 @@ void mutt_init(int skip_sys_rc, struct L
|
@@ -4248,7 +4248,8 @@ void mutt_init(int skip_sys_rc, struct L
|
||||||
/* Default search path from RFC1524 */
|
/* Default search path from RFC1524 */
|
||||||
MailcapPath = safe_strdup(
|
MailcapPath = safe_strdup(
|
||||||
"~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR
|
"~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR
|
||||||
@ -18,4 +18,4 @@ Index: mutt-1.5.21/init.c
|
|||||||
+ SYSCONFDIR "/mutt/mailcap");
|
+ SYSCONFDIR "/mutt/mailcap");
|
||||||
}
|
}
|
||||||
|
|
||||||
Tempdir = safe_strdup((p = getenv("TMPDIR")) ? p : "/tmp");
|
Tmpdir = safe_strdup((p = getenv("TMPDIR")) ? p : "/tmp");
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
---
|
---
|
||||||
lib.c | 12 ++++++++++++
|
lib/string.c | 12 ++++++++++++
|
||||||
lib.h | 1 +
|
lib/string2.h | 1 +
|
||||||
ncrypt/crypt_gpgme.c | 2 +-
|
ncrypt/crypt_gpgme.c | 2 +-
|
||||||
ncrypt/pgp.c | 24 ++++++++++++------------
|
ncrypt/pgp.c | 24 ++++++++++++------------
|
||||||
pager.c | 2 +-
|
pager.c | 2 +-
|
||||||
5 files changed, 27 insertions(+), 14 deletions(-)
|
5 files changed, 27 insertions(+), 14 deletions(-)
|
||||||
|
|
||||||
--- lib.c
|
--- lib/string.c
|
||||||
+++ lib.c 2017-06-13 08:15:45.319842066 +0000
|
+++ lib/string.c 2017-09-11 12:12:00.503744275 +0000
|
||||||
@@ -875,6 +875,18 @@ int mutt_strcmp(const char *a, const cha
|
@@ -362,6 +362,18 @@ int mutt_strcmp(const char *a, const cha
|
||||||
return strcmp(NONULL(a), NONULL(b));
|
return strcmp(NONULL(a), NONULL(b));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -24,33 +24,33 @@
|
|||||||
+ return strncmp(NONULL(a), NONULL(b), xa);
|
+ return strncmp(NONULL(a), NONULL(b), xa);
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
int mutt_strcasecmp(const char *a, const char *b)
|
/**
|
||||||
{
|
* mutt_strcasecmp - Compare two strings ignoring case, safely
|
||||||
return strcasecmp(NONULL(a), NONULL(b));
|
* @param a First string to compare
|
||||||
--- lib.h
|
--- lib/string2.h
|
||||||
+++ lib.h 2017-06-13 08:16:23.791128961 +0000
|
+++ lib/string2.h 2017-09-11 12:14:01.681538993 +0000
|
||||||
@@ -158,6 +158,7 @@ int mutt_copy_bytes(FILE *in, FILE *out,
|
@@ -67,6 +67,7 @@ void mutt_str_adjust(char **p);
|
||||||
int mutt_rx_sanitize_string(char *dest, size_t destlen, const char *src);
|
|
||||||
int mutt_strcasecmp(const char *a, const char *b);
|
int mutt_strcasecmp(const char *a, const char *b);
|
||||||
|
const char *mutt_strchrnul(const char *s, char c);
|
||||||
int mutt_strcmp(const char *a, const char *b);
|
int mutt_strcmp(const char *a, const char *b);
|
||||||
+int mutt_strxcmp(const char *, const char *);
|
+int mutt_strxcmp(const char *a, const char *b);
|
||||||
int mutt_strncasecmp(const char *a, const char *b, size_t l);
|
|
||||||
int mutt_strncmp(const char *a, const char *b, size_t l);
|
|
||||||
int mutt_strcoll(const char *a, const char *b);
|
int mutt_strcoll(const char *a, const char *b);
|
||||||
|
const char *mutt_stristr(const char *haystack, const char *needle);
|
||||||
|
size_t mutt_strlen(const char *a);
|
||||||
--- ncrypt/crypt_gpgme.c
|
--- ncrypt/crypt_gpgme.c
|
||||||
+++ ncrypt/crypt_gpgme.c 2017-06-13 08:15:45.319842066 +0000
|
+++ ncrypt/crypt_gpgme.c 2017-09-11 12:09:17.086717319 +0000
|
||||||
@@ -2294,7 +2294,7 @@ static void copy_clearsigned(gpgme_data_
|
@@ -2442,7 +2442,7 @@ static void copy_clearsigned(gpgme_data_
|
||||||
|
|
||||||
if (armor_header)
|
if (armor_header)
|
||||||
{
|
{
|
||||||
- if (buf[0] == '\n')
|
- if (buf[0] == '\n')
|
||||||
+ if (buf[0] == '\n' || (buf[0] == '\r' && buf[1] == '\n'))
|
+ if (buf[0] == '\n' || (buf[0] == '\r' && buf[1] == '\n'))
|
||||||
armor_header = 0;
|
armor_header = false;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
--- ncrypt/pgp.c
|
--- ncrypt/pgp.c
|
||||||
+++ ncrypt/pgp.c 2017-06-13 08:15:45.323841992 +0000
|
+++ ncrypt/pgp.c 2017-09-11 12:08:10.179934232 +0000
|
||||||
@@ -288,7 +288,7 @@ static void pgp_copy_clearsigned(FILE *f
|
@@ -301,7 +301,7 @@ static void pgp_copy_clearsigned(FILE *f
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -59,9 +59,9 @@
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
if (armor_header)
|
if (armor_header)
|
||||||
@@ -352,14 +352,14 @@ int pgp_application_pgp_handler(struct B
|
@@ -369,14 +369,14 @@ int pgp_application_pgp_handler(struct B
|
||||||
{
|
{
|
||||||
clearsign = 0;
|
clearsign = false;
|
||||||
|
|
||||||
- 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)
|
||||||
@ -69,15 +69,15 @@
|
|||||||
- else if (mutt_strcmp("SIGNED MESSAGE-----\n", buf + 15) == 0)
|
- else if (mutt_strcmp("SIGNED MESSAGE-----\n", buf + 15) == 0)
|
||||||
+ else if (mutt_strxcmp("SIGNED MESSAGE-----\n", buf + 15) == 0)
|
+ else if (mutt_strxcmp("SIGNED MESSAGE-----\n", buf + 15) == 0)
|
||||||
{
|
{
|
||||||
clearsign = 1;
|
clearsign = true;
|
||||||
needpass = 0;
|
needpass = 0;
|
||||||
}
|
}
|
||||||
- else if (mutt_strcmp("PUBLIC KEY BLOCK-----\n", buf + 15) == 0)
|
- else if (mutt_strcmp("PUBLIC KEY BLOCK-----\n", buf + 15) == 0)
|
||||||
+ else if (mutt_strxcmp("PUBLIC KEY BLOCK-----\n", buf + 15) == 0)
|
+ else if (mutt_strxcmp("PUBLIC KEY BLOCK-----\n", buf + 15) == 0)
|
||||||
{
|
{
|
||||||
needpass = 0;
|
needpass = 0;
|
||||||
pgp_keyblock = 1;
|
pgp_keyblock = true;
|
||||||
@@ -393,9 +393,9 @@ int pgp_application_pgp_handler(struct B
|
@@ -410,9 +410,9 @@ int pgp_application_pgp_handler(struct B
|
||||||
|
|
||||||
fputs(buf, tmpfp);
|
fputs(buf, tmpfp);
|
||||||
|
|
||||||
@ -90,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)
|
||||||
@@ -636,11 +636,11 @@ static int pgp_check_traditional_one_bod
|
@@ -650,11 +650,11 @@ static int pgp_check_traditional_one_bod
|
||||||
{
|
{
|
||||||
if (mutt_strncmp("-----BEGIN PGP ", buf, 15) == 0)
|
if (mutt_strncmp("-----BEGIN PGP ", buf, 15) == 0)
|
||||||
{
|
{
|
||||||
@ -105,7 +105,7 @@
|
|||||||
key = 1;
|
key = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1122,9 +1122,9 @@ struct Body *pgp_sign_message(struct Bod
|
@@ -1144,9 +1144,9 @@ struct Body *pgp_sign_message(struct Bod
|
||||||
*/
|
*/
|
||||||
while (fgets(buffer, sizeof(buffer) - 1, pgpout) != NULL)
|
while (fgets(buffer, sizeof(buffer) - 1, pgpout) != NULL)
|
||||||
{
|
{
|
||||||
@ -118,11 +118,11 @@
|
|||||||
else
|
else
|
||||||
fputs(buffer, fp);
|
fputs(buffer, fp);
|
||||||
--- pager.c
|
--- pager.c
|
||||||
+++ pager.c 2017-06-13 08:15:45.323841992 +0000
|
+++ pager.c 2017-09-11 12:10:06.737814133 +0000
|
||||||
@@ -803,7 +803,7 @@ static void resolve_types(char *buf, cha
|
@@ -827,7 +827,7 @@ static void resolve_types(char *buf, cha
|
||||||
lineInfo[n].type = MT_COLOR_NORMAL;
|
line_info[n].type = MT_COLOR_NORMAL;
|
||||||
else if (check_attachment_marker((char *) raw) == 0)
|
else if (check_attachment_marker((char *) raw) == 0)
|
||||||
lineInfo[n].type = MT_COLOR_ATTACHMENT;
|
line_info[n].type = MT_COLOR_ATTACHMENT;
|
||||||
- else if ((mutt_strcmp("-- \n", buf) == 0) || (mutt_strcmp("-- \r\n", buf) == 0))
|
- else if ((mutt_strcmp("-- \n", buf) == 0) || (mutt_strcmp("-- \r\n", buf) == 0))
|
||||||
+ else if (mutt_strxcmp("-- \n", buf) == 0)
|
+ else if (mutt_strxcmp("-- \n", buf) == 0)
|
||||||
{
|
{
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
1 file changed, 6 insertions(+)
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
--- pgpewrap.c
|
--- pgpewrap.c
|
||||||
+++ pgpewrap.c 2017-04-28 12:46:25.911731441 +0000
|
+++ pgpewrap.c 2017-09-11 11:34:11.241263407 +0000
|
||||||
@@ -61,6 +61,12 @@ int main(int argc, char **argv)
|
@@ -63,6 +63,12 @@ int main(int argc, char **argv)
|
||||||
}
|
}
|
||||||
*opt = NULL;
|
*opt = NULL;
|
||||||
|
|
||||||
|
@ -1,44 +1,44 @@
|
|||||||
---
|
---
|
||||||
Makefile.am | 4 -
|
Makefile.am | 4 -
|
||||||
lib.c | 7 ++-
|
lib/file.c | 7 ++-
|
||||||
mbox.c | 5 ++
|
mbox.c | 5 ++
|
||||||
mh.c | 9 +++-
|
mh.c | 8 +++
|
||||||
mutt.h | 3 +
|
mutt.h | 3 +
|
||||||
opennfs.c | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
opennfs.c | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
sendlib.c | 4 +
|
sendlib.c | 4 +
|
||||||
7 files changed, 150 insertions(+), 4 deletions(-)
|
7 files changed, 150 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
--- Makefile.am
|
--- Makefile.am
|
||||||
+++ Makefile.am 2017-06-13 08:34:27.043052733 +0000
|
+++ Makefile.am 2017-09-11 11:47:43.214350183 +0000
|
||||||
@@ -44,7 +44,7 @@ mutt_SOURCES = account.c addrbook.c addr
|
@@ -52,7 +52,7 @@ mutt_SOURCES = account.c addrbook.c addr
|
||||||
handler.c hash.c hdrline.c header.h headers.c help.c history.c hook.c \
|
handler.c hdrline.c header.h headers.c help.c history.c hook.c \
|
||||||
init.c keymap.c lib.c list.h main.c mbox.c mbyte.c mbyte_table.h md5.c \
|
init.c keymap.c list.h main.c mbox.c mbyte.c mbtable.h \
|
||||||
menu.c mh.c muttlib.c mutt_idna.c mutt_sasl_plain.c mutt_socket.c \
|
menu.c mh.c muttlib.c mutt_idna.c mutt_sasl_plain.c mutt_socket.c \
|
||||||
- mutt_tunnel.c mx.c newsrc.c nntp.c options.h pager.c parameter.h \
|
- mutt_tunnel.c mx.c newsrc.c nntp.c options.h pager.c parameter.c parameter.h \
|
||||||
+ mutt_tunnel.c mx.c newsrc.c nntp.c opennfs.c options.h pager.c parameter.h \
|
+ mutt_tunnel.c mx.c newsrc.c nntp.c opennfs.c options.h pager.c parameter.c parameter.h \
|
||||||
parse.c pattern.c pattern.h pop.c pop_auth.c pop_lib.c postpone.c \
|
parse.c pattern.c pattern.h pop.c pop_auth.c pop_lib.c postpone.c \
|
||||||
query.c recvattach.c recvcmd.c rfc1524.c rfc2047.c rfc2231.c rfc3676.c \
|
query.c recvattach.c recvcmd.c rfc1524.c rfc2047.c rfc2231.c rfc3676.c \
|
||||||
rfc822.c safe_asprintf.c score.c send.c sendlib.c sidebar.c signal.c \
|
rfc822.c safe_asprintf.c score.c send.c sendlib.c sidebar.c signal.c \
|
||||||
@@ -91,7 +91,7 @@ mutt_dotlock_SOURCES = mutt_dotlock.c
|
@@ -96,7 +96,7 @@ EXTRA_DIST = account.h attach.h bcache.h
|
||||||
mutt_dotlock_LDADD = $(LIBOBJS)
|
|
||||||
mutt_dotlock_DEPENDENCIES = $(LIBOBJS)
|
|
||||||
|
|
||||||
-pgpring_SOURCES = ascii.c extlib.c lib.c md5.c pgppubring.c sha1.c
|
EXTRA_SCRIPTS =
|
||||||
+pgpring_SOURCES = ascii.c extlib.c lib.c md5.c opennfs.c pgppubring.c sha1.c
|
|
||||||
pgpring_LDADD = $(LIBOBJS) $(NCRYPT_LIBS) $(INTLLIBS)
|
|
||||||
pgpring_DEPENDENCIES = $(LIBOBJS) $(NCRYPT_DEPS) $(INTLDEPS)
|
|
||||||
|
|
||||||
--- lib.c
|
-pgpring_SOURCES = pgppubring.c
|
||||||
+++ lib.c 2017-06-13 08:34:27.043052733 +0000
|
+pgpring_SOURCES = opennfs.c pgppubring.c
|
||||||
@@ -37,6 +37,7 @@
|
pgpring_LDADD = $(LIBOBJS) $(NCRYPT_LIBS) $(INTLLIBS) $(LIBMUTT)
|
||||||
#include <time.h>
|
pgpring_DEPENDENCIES = $(LIBOBJS) $(NCRYPT_DEPS) $(INTLDEPS) $(LIBMUTTDEPS)
|
||||||
#include <unistd.h>
|
|
||||||
#include "lib.h"
|
--- lib/file.c
|
||||||
|
+++ lib/file.c 2017-09-11 11:45:32.960743565 +0000
|
||||||
|
@@ -71,6 +71,7 @@
|
||||||
|
#include "debug.h"
|
||||||
|
#include "memory.h"
|
||||||
|
#include "message.h"
|
||||||
+#include "mutt.h"
|
+#include "mutt.h"
|
||||||
|
#include "string2.h"
|
||||||
|
|
||||||
#ifdef HAVE_SYSEXITS_H
|
/* these characters must be escaped in regular expressions */
|
||||||
#include <sysexits.h>
|
@@ -502,6 +503,10 @@ int safe_open(const char *path, int flag
|
||||||
@@ -635,6 +636,10 @@ int safe_open(const char *path, int flag
|
|
||||||
struct stat osb, nsb;
|
struct stat osb, nsb;
|
||||||
int fd;
|
int fd;
|
||||||
|
|
||||||
@ -49,18 +49,18 @@
|
|||||||
if (flags & O_EXCL)
|
if (flags & O_EXCL)
|
||||||
{
|
{
|
||||||
char safe_file[_POSIX_PATH_MAX];
|
char safe_file[_POSIX_PATH_MAX];
|
||||||
@@ -657,7 +662,7 @@ int safe_open(const char *path, int flag
|
@@ -526,7 +531,7 @@ int safe_open(const char *path, int flag
|
||||||
|
fd = open(path, flags & ~O_EXCL, 0600);
|
||||||
if ((fd = open(path, flags & ~O_EXCL, 0600)) < 0)
|
if (fd < 0)
|
||||||
return fd;
|
return fd;
|
||||||
-
|
-
|
||||||
+#endif
|
+#endif
|
||||||
/* make sure the file is not symlink */
|
/* make sure the file is not symlink */
|
||||||
if (lstat(path, &osb) < 0 || fstat(fd, &nsb) < 0 || !compare_stat(&osb, &nsb))
|
if ((lstat(path, &osb) < 0 || fstat(fd, &nsb) < 0) || !compare_stat(&osb, &nsb))
|
||||||
{
|
{
|
||||||
--- mbox.c
|
--- mbox.c
|
||||||
+++ mbox.c 2017-06-13 08:34:27.043052733 +0000
|
+++ mbox.c 2017-09-11 11:40:15.902567799 +0000
|
||||||
@@ -1069,8 +1069,13 @@ static int mbox_sync_mailbox(struct Cont
|
@@ -1075,8 +1075,13 @@ static int mbox_sync_mailbox(struct Cont
|
||||||
|
|
||||||
/* Create a temporary file to write the new version of the mailbox in. */
|
/* Create a temporary file to write the new version of the mailbox in. */
|
||||||
mutt_mktemp(tempfile, sizeof(tempfile));
|
mutt_mktemp(tempfile, sizeof(tempfile));
|
||||||
@ -75,11 +75,11 @@
|
|||||||
if (-1 != i)
|
if (-1 != i)
|
||||||
{
|
{
|
||||||
--- mh.c
|
--- mh.c
|
||||||
+++ mh.c 2017-06-13 08:34:27.047052659 +0000
|
+++ mh.c 2017-09-11 11:49:25.892463230 +0000
|
||||||
@@ -357,7 +357,11 @@ static int mh_mkstemp(struct Context *de
|
@@ -383,7 +383,11 @@ static int mh_mkstemp(struct Context *de
|
||||||
{
|
{
|
||||||
snprintf(path, _POSIX_PATH_MAX, "%s/.mutt-%s-%d-%" PRIu64, dest->path,
|
snprintf(path, _POSIX_PATH_MAX, "%s/.mutt-%s-%d-%" PRIu64, dest->path,
|
||||||
NONULL(Hostname), (int) getpid(), mutt_rand64());
|
NONULL(ShortHostname), (int) getpid(), mutt_rand64());
|
||||||
+#if defined(__linux__)
|
+#if defined(__linux__)
|
||||||
+ if ((fd = opennfs(path, O_WRONLY | O_EXCL | O_CREAT, 0666)) == -1)
|
+ if ((fd = opennfs(path, O_WRONLY | O_EXCL | O_CREAT, 0666)) == -1)
|
||||||
+#else
|
+#else
|
||||||
@ -88,11 +88,10 @@
|
|||||||
{
|
{
|
||||||
if (errno != EEXIST)
|
if (errno != EEXIST)
|
||||||
{
|
{
|
||||||
@@ -1488,8 +1492,11 @@ static int maildir_open_new_message(stru
|
@@ -1518,7 +1522,11 @@ static int maildir_open_new_message(stru
|
||||||
subdir, (long long) time(NULL), mutt_rand64(), NONULL(Hostname), suffix);
|
|
||||||
|
|
||||||
mutt_debug(2, "maildir_open_new_message (): Trying %s.\n", path);
|
mutt_debug(2, "maildir_open_new_message (): Trying %s.\n", path);
|
||||||
-
|
|
||||||
+#if defined(__linux__)
|
+#if defined(__linux__)
|
||||||
+ if ((fd = opennfs(path, O_WRONLY | O_EXCL | O_CREAT, 0666)) == -1)
|
+ if ((fd = opennfs(path, O_WRONLY | O_EXCL | O_CREAT, 0666)) == -1)
|
||||||
+#else
|
+#else
|
||||||
@ -102,17 +101,17 @@
|
|||||||
if (errno != EEXIST)
|
if (errno != EEXIST)
|
||||||
{
|
{
|
||||||
--- mutt.h
|
--- mutt.h
|
||||||
+++ mutt.h 2017-06-13 08:34:27.047052659 +0000
|
+++ mutt.h 2017-09-11 11:50:18.979487541 +0000
|
||||||
@@ -348,4 +348,7 @@ struct AttachMatch
|
@@ -367,4 +367,7 @@ extern char *debugfile_cmdline;
|
||||||
|
extern int debuglevel_cmdline;
|
||||||
#define MUTT_PARTS_TOPLEVEL (1 << 0) /* is the top-level part */
|
#endif
|
||||||
|
|
||||||
+#if defined(__linux__)
|
+#if defined(__linux__)
|
||||||
+extern int opennfs(const char *, int, int);
|
+extern int opennfs(const char *, int, int);
|
||||||
+#endif
|
+#endif
|
||||||
#endif /* _MUTT_H */
|
#endif /* _MUTT_H */
|
||||||
--- opennfs.c
|
--- opennfs.c
|
||||||
+++ opennfs.c 2017-06-13 08:36:39.904588552 +0000
|
+++ opennfs.c 2017-09-11 11:40:15.906567726 +0000
|
||||||
@@ -0,0 +1,122 @@
|
@@ -0,0 +1,122 @@
|
||||||
+#include <errno.h>
|
+#include <errno.h>
|
||||||
+#include <fcntl.h>
|
+#include <fcntl.h>
|
||||||
@ -237,8 +236,8 @@
|
|||||||
+ return open(path, flags, mode);
|
+ return open(path, flags, mode);
|
||||||
+}
|
+}
|
||||||
--- sendlib.c
|
--- sendlib.c
|
||||||
+++ sendlib.c 2017-06-13 08:34:27.047052659 +0000
|
+++ sendlib.c 2017-09-11 11:40:15.906567726 +0000
|
||||||
@@ -2255,7 +2255,11 @@ static int send_msg(const char *path, ch
|
@@ -2354,7 +2354,11 @@ static int send_msg(const char *path, ch
|
||||||
if (SendmailWait >= 0 && tempfile && *tempfile)
|
if (SendmailWait >= 0 && tempfile && *tempfile)
|
||||||
{
|
{
|
||||||
/* *tempfile will be opened as stdout */
|
/* *tempfile will be opened as stdout */
|
||||||
|
@ -7,8 +7,8 @@
|
|||||||
5 files changed, 36 insertions(+), 2 deletions(-)
|
5 files changed, 36 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
--- configure.ac
|
--- configure.ac
|
||||||
+++ configure.ac 2017-06-13 07:46:56.047558768 +0000
|
+++ configure.ac 2017-09-11 11:24:08.296326161 +0000
|
||||||
@@ -318,7 +318,7 @@ main ()
|
@@ -337,7 +337,7 @@ main ()
|
||||||
mutt_cv_slang=$withval
|
mutt_cv_slang=$withval
|
||||||
if test -d $withval/include/slang; then
|
if test -d $withval/include/slang; then
|
||||||
CPPFLAGS="$CPPFLAGS -I${withval}/include/slang"
|
CPPFLAGS="$CPPFLAGS -I${withval}/include/slang"
|
||||||
@ -17,7 +17,7 @@
|
|||||||
CPPFLAGS="$CPPFLAGS -I${withval}/include"
|
CPPFLAGS="$CPPFLAGS -I${withval}/include"
|
||||||
fi
|
fi
|
||||||
LDFLAGS="$LDFLAGS -L${withval}/lib"
|
LDFLAGS="$LDFLAGS -L${withval}/lib"
|
||||||
@@ -509,8 +509,12 @@ dnl -- end imap dependencies --
|
@@ -510,8 +510,12 @@ dnl -- end imap dependencies --
|
||||||
AC_ARG_WITH(ssl, AS_HELP_STRING([--with-ssl@<:@=PFX@:>@],[Enable TLS support using OpenSSL]),
|
AC_ARG_WITH(ssl, AS_HELP_STRING([--with-ssl@<:@=PFX@:>@],[Enable TLS support using OpenSSL]),
|
||||||
[ if test "$with_ssl" != "no"; then
|
[ if test "$with_ssl" != "no"; then
|
||||||
if test "$with_ssl" != "yes"; then
|
if test "$with_ssl" != "yes"; then
|
||||||
@ -30,7 +30,7 @@
|
|||||||
fi
|
fi
|
||||||
saved_LIBS="$LIBS"
|
saved_LIBS="$LIBS"
|
||||||
|
|
||||||
@@ -579,8 +583,12 @@ AC_ARG_WITH(sasl, AS_HELP_STRING([--with
|
@@ -574,8 +578,12 @@ AC_ARG_WITH(sasl, AS_HELP_STRING([--with
|
||||||
[
|
[
|
||||||
if test "$with_sasl" != "no"; then
|
if test "$with_sasl" != "no"; then
|
||||||
if test "$with_sasl" != "yes"; then
|
if test "$with_sasl" != "yes"; then
|
||||||
@ -42,32 +42,32 @@
|
|||||||
+ esac
|
+ esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
saved_LIBS="$LIBS"
|
# OpenSolaris provides a SASL2 interface in libsasl
|
||||||
--- doc/Muttrc.head
|
--- doc/Muttrc.head
|
||||||
+++ doc/Muttrc.head 2017-06-13 07:42:27.684468937 +0000
|
+++ doc/Muttrc.head 2017-09-11 11:24:59.871380290 +0000
|
||||||
@@ -23,7 +23,7 @@ macro index,pager,attach,compose \cb "\
|
@@ -23,7 +23,7 @@ macro index,pager,attach,compose \cb "\
|
||||||
"call urlview to extract URLs out of a message"
|
"call urlview to extract URLs out of a message"
|
||||||
|
|
||||||
# Show documentation when pressing F1
|
# Show documentation when pressing F1
|
||||||
-macro generic,pager <F1> "<shell-escape> less @docdir@/manual.txt<Enter>" "show Mutt documentation"
|
-macro generic,pager <F1> "<shell-escape> less @docdir@/manual.txt<Enter>" "show Mutt documentation"
|
||||||
+macro generic,index,pager <F1> "<shell-escape> less -iM @docdir@/manual.txt.gz<Enter>" "show Mutt documentation"
|
+macro generic,index,pager <F1> "<shell-escape> less @docdir@/manual.txt.gz<Enter>" "show Mutt documentation"
|
||||||
|
|
||||||
# show the incoming mailboxes list (just like "mutt -y") and back when pressing "y"
|
# show the incoming mailboxes list (just like "mutt -y") and back when pressing "y"
|
||||||
macro index,pager y "<change-folder>?<toggle-mailboxes>" "show incoming mailboxes list"
|
macro index,pager y "<change-folder>?" "show incoming mailboxes list"
|
||||||
--- imap/auth.c
|
--- imap/auth.c
|
||||||
+++ imap/auth.c 2017-06-13 07:42:27.684468937 +0000
|
+++ imap/auth.c 2017-09-11 11:26:50.141357697 +0000
|
||||||
@@ -72,6 +72,23 @@ int imap_authenticate(struct ImapData *i
|
@@ -80,6 +80,23 @@ int imap_authenticate(struct ImapData *i
|
||||||
mutt_debug(2, "imap_authenticate: Trying method %s\n", method);
|
mutt_debug(2, "imap_authenticate: Trying method %s\n", method);
|
||||||
authenticator = imap_authenticators;
|
authenticator = imap_authenticators;
|
||||||
|
|
||||||
+#ifdef USE_SASL
|
+#ifdef USE_SASL
|
||||||
+ /* "login" not supported by SASL */
|
+ /* "login" not supported by SASL */
|
||||||
+ if (!ascii_strcasecmp ("login", method))
|
+ if (!mutt_strcasecmp ("login", method))
|
||||||
+ {
|
+ {
|
||||||
+ while (authenticator->authenticate)
|
+ while (authenticator->authenticate)
|
||||||
+ {
|
+ {
|
||||||
+ const char *identify = authenticator->method;
|
+ const char *identify = authenticator->method;
|
||||||
+ if (identify && !ascii_strcasecmp(identify, method))
|
+ if (identify && !mutt_strcasecmp(identify, method))
|
||||||
+ if ((r = authenticator->authenticate(idata, method)) != IMAP_AUTH_UNAVAIL)
|
+ if ((r = authenticator->authenticate(idata, method)) != IMAP_AUTH_UNAVAIL)
|
||||||
+ {
|
+ {
|
||||||
+ FREE(&methods);
|
+ FREE(&methods);
|
||||||
@ -79,8 +79,8 @@
|
|||||||
+#endif
|
+#endif
|
||||||
while (authenticator->authenticate)
|
while (authenticator->authenticate)
|
||||||
{
|
{
|
||||||
if (!authenticator->method || (ascii_strcasecmp(authenticator->method, method) == 0))
|
if (!authenticator->method || (mutt_strcasecmp(authenticator->method, method) == 0))
|
||||||
@@ -83,6 +100,9 @@ int imap_authenticate(struct ImapData *i
|
@@ -91,6 +108,9 @@ int imap_authenticate(struct ImapData *i
|
||||||
|
|
||||||
authenticator++;
|
authenticator++;
|
||||||
}
|
}
|
||||||
@ -91,20 +91,20 @@
|
|||||||
|
|
||||||
FREE(&methods);
|
FREE(&methods);
|
||||||
--- init.h
|
--- init.h
|
||||||
+++ init.h 2017-06-13 07:42:27.684468937 +0000
|
+++ init.h 2017-09-11 11:27:51.208237439 +0000
|
||||||
@@ -3808,6 +3808,9 @@ struct Option MuttVars[] = {
|
@@ -3864,6 +3864,9 @@ struct Option MuttVars[] = {
|
||||||
** the default from the GNUTLS library.
|
** the default from the GNUTLS library.
|
||||||
*/
|
*/
|
||||||
#endif /* USE_SSL_GNUTLS */
|
#endif /* USE_SSL_GNUTLS */
|
||||||
+#if defined(USE_IMAP) && defined(SUSE_IMAP_FORCE_SSL)
|
+#if defined(USE_IMAP) && defined(SUSE_IMAP_FORCE_SSL)
|
||||||
+ { "imap_force_ssl", DT_SYN, R_NONE, UL "ssl_force_tls", 0 },
|
+ { "imap_force_ssl", DT_SYN, R_NONE, UL "ssl_force_tls", 0 },
|
||||||
+#endif
|
+#endif
|
||||||
{ "ssl_starttls", DT_QUAD, R_NONE, OPT_SSLSTARTTLS, MUTT_YES },
|
{ "ssl_starttls", DT_QUAD, R_NONE, OPT_SSL_STARTTLS, MUTT_YES },
|
||||||
/*
|
/*
|
||||||
** .pp
|
** .pp
|
||||||
--- mx.c
|
--- mx.c
|
||||||
+++ mx.c 2017-06-13 07:42:27.684468937 +0000
|
+++ mx.c 2017-09-11 11:14:29.263001870 +0000
|
||||||
@@ -1454,6 +1454,9 @@ void mx_update_context(struct Context *c
|
@@ -1287,6 +1287,9 @@ void mx_update_context(struct Context *c
|
||||||
{
|
{
|
||||||
h = ctx->hdrs[msgno];
|
h = ctx->hdrs[msgno];
|
||||||
|
|
62
mutt.changes
62
mutt.changes
@ -1,3 +1,65 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 15 09:07:55 UTC 2017 - werner@suse.de
|
||||||
|
|
||||||
|
- Update to neomutt 20170912 which updates to mutt 1.9.0
|
||||||
|
NeoMutt
|
||||||
|
Add guix build support
|
||||||
|
Only match real mailboxes when looking for new mail
|
||||||
|
Fix the printing of ncurses version in -v output
|
||||||
|
Bind editor <delete> to delete-char
|
||||||
|
Fix overflowing colours
|
||||||
|
Fix empty In-Reply-To generation
|
||||||
|
Trim trailing slash from completed dirs
|
||||||
|
Add guix-neomutt.scm
|
||||||
|
Fix setting custom query_type in notmuch query
|
||||||
|
Better curses identification
|
||||||
|
Use the system's wchar_t support
|
||||||
|
Use the system's md5 tool (or equivalent)
|
||||||
|
Clean up configure.ac
|
||||||
|
Teach gen-map-doc about the new opcode header
|
||||||
|
Rename functions (snake_case)
|
||||||
|
Rename constants/defines (UPPER_CASE)
|
||||||
|
Create library of shared functions
|
||||||
|
Much tidying
|
||||||
|
Rename globals to match user config
|
||||||
|
Drop unnecessary functions/macros
|
||||||
|
Use a standard list implementation
|
||||||
|
Coverity fixes
|
||||||
|
Use explicit NUL for string terminators
|
||||||
|
Drop OPS* in favour of opcodes.h
|
||||||
|
Upstream
|
||||||
|
Fix menu color calls to occur before positioning the cursor
|
||||||
|
When guessing an attachment type, don't allow text/plain if there is a null character
|
||||||
|
Add $imap_poll_timeout to allow mailbox polling to time out
|
||||||
|
Handle error if REGCOMP in pager fails when resizing
|
||||||
|
Change recvattach to allow nested encryption
|
||||||
|
Fix attachment check_traditional and extract_keys operations
|
||||||
|
Add edit-content-type helper and warning for decrypted attachments
|
||||||
|
Add option to run command to query attachment mime type
|
||||||
|
Add warning about using inline pgp with format=flowed
|
||||||
|
- Rename patch mutt-1.8.3.dif which becomes now mutt-1.9.0.dif
|
||||||
|
- Modify the patches
|
||||||
|
* aw.listreply.diff
|
||||||
|
* bsc907453-CVE-2014-9116-jessie.patch
|
||||||
|
* bug-676388-largefile.patch
|
||||||
|
* mutt-1.5.15-wrapcolumn.diff
|
||||||
|
* mutt-1.5.20-sendgroupreplyto.diff
|
||||||
|
* mutt-1.5.21-mailcap.diff
|
||||||
|
* mutt-1.5.23-carriage-return.path
|
||||||
|
* mutt-1.5.9i-pgpewrap.diff
|
||||||
|
* mutt-1.6.1-opennfs.dif
|
||||||
|
* patch-1.5.24.vk.pgp_verbose_mime
|
||||||
|
* widechar.sidebar.dif
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 10 08:03:38 UTC 2017 - tchvatal@suse.com
|
||||||
|
|
||||||
|
- Switch to hunspell as default spell-checking software wrt
|
||||||
|
fate#323578
|
||||||
|
- Write SUSE in the skel.muttrc instead of SuSE
|
||||||
|
- Use the right folder for unpacking instead of symlink
|
||||||
|
* fixes quilt setup
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Jul 13 10:38:57 UTC 2017 - olaf@aepfle.de
|
Thu Jul 13 10:38:57 UTC 2017 - olaf@aepfle.de
|
||||||
|
|
||||||
|
39
mutt.spec
39
mutt.spec
@ -30,25 +30,29 @@ BuildRequires: autoconf
|
|||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: cyrus-sasl-devel
|
BuildRequires: cyrus-sasl-devel
|
||||||
BuildRequires: cyrus-sasl-gssapi
|
BuildRequires: cyrus-sasl-gssapi
|
||||||
|
BuildRequires: docbook-xsl-stylesheets
|
||||||
BuildRequires: gdbm-devel
|
BuildRequires: gdbm-devel
|
||||||
|
BuildRequires: hunspell
|
||||||
BuildRequires: krb5-devel
|
BuildRequires: krb5-devel
|
||||||
|
BuildRequires: libgpgme-devel
|
||||||
BuildRequires: libidn-devel
|
BuildRequires: libidn-devel
|
||||||
BuildRequires: libkyotocabinet-devel
|
BuildRequires: libkyotocabinet-devel
|
||||||
|
BuildRequires: libxslt-tools
|
||||||
BuildRequires: lua-devel
|
BuildRequires: lua-devel
|
||||||
BuildRequires: ncurses-devel
|
BuildRequires: ncurses-devel
|
||||||
%if 0%{?is_opensuse}
|
%if 0%{?is_opensuse}
|
||||||
BuildRequires: notmuch-devel
|
BuildRequires: notmuch-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: docbook-xsl-stylesheets
|
|
||||||
BuildRequires: libxslt-tools
|
|
||||||
BuildRequires: opensp
|
BuildRequires: opensp
|
||||||
|
%if 0%{?suse_version} > 1130
|
||||||
|
BuildRequires: shared-mime-info
|
||||||
|
%endif
|
||||||
%if 0%{?suse_version}
|
%if 0%{?suse_version}
|
||||||
BuildRequires: update-desktop-files
|
BuildRequires: update-desktop-files
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: w3m
|
BuildRequires: w3m
|
||||||
#if
|
Url: http://www.neomutt.org
|
||||||
BuildRequires: libgpgme-devel
|
Recommends: hunspell
|
||||||
Url: http://www.mutt.org
|
|
||||||
Provides: muttssl
|
Provides: muttssl
|
||||||
Obsoletes: muttssl
|
Obsoletes: muttssl
|
||||||
Recommends: mutt-doc
|
Recommends: mutt-doc
|
||||||
@ -60,18 +64,17 @@ Recommends: w3m
|
|||||||
Requires(post): shared-mime-info
|
Requires(post): shared-mime-info
|
||||||
Requires(postun): shared-mime-info
|
Requires(postun): shared-mime-info
|
||||||
%endif
|
%endif
|
||||||
%global neo 20170609
|
%global neo 20170912
|
||||||
Version: 1.8.3
|
Version: 1.9.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Mail Program
|
Summary: Mail Program
|
||||||
# ftp://ftp.mutt.org/mutt/devel/
|
# ftp://ftp.mutt.org/mutt/devel/
|
||||||
# Source0: https://bitbucket.org/mutt/mutt/downloads/%%name-%%version.tar.gz
|
# https://bitbucket.org/mutt/mutt/downloads/%%name-%%version.tar.gz
|
||||||
# Switch over to neomutt tar ball which is based on original mutt
|
# Switch over to neomutt tar ball which is based on original mutt
|
||||||
# http://www.neomutt.org/
|
# http://www.neomutt.org/
|
||||||
### https://github.com/neomutt/neomutt/archive/neomutt-20170421.tar.gz
|
|
||||||
License: GPL-2.0+
|
License: GPL-2.0+
|
||||||
Group: Productivity/Networking/Email/Clients
|
Group: Productivity/Networking/Email/Clients
|
||||||
Source0: neomutt-%neo.tar.gz
|
Source0: https://github.com/neomutt/neomutt/archive/neomutt-%{neo}.tar.gz
|
||||||
Source1: Signature_conversion
|
Source1: Signature_conversion
|
||||||
Source2: README.alternates
|
Source2: README.alternates
|
||||||
Source3: mutt.png
|
Source3: mutt.png
|
||||||
@ -102,7 +105,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|||||||
%description
|
%description
|
||||||
A very powerful mail user agent. It supports (among other nice things)
|
A very powerful mail user agent. It supports (among other nice things)
|
||||||
highlighting, threading, and PGP. It takes some time to get used to,
|
highlighting, threading, and PGP. It takes some time to get used to,
|
||||||
however.
|
however. This version is based on NeoMutt, that is it includes many
|
||||||
|
enhancements.
|
||||||
|
|
||||||
%package doc
|
%package doc
|
||||||
Summary: Additional Documentation about Mutt
|
Summary: Additional Documentation about Mutt
|
||||||
@ -188,7 +192,7 @@ cflags -Wl,--hash-size=8599 LDFLAGS
|
|||||||
cflags -pie LDFLAGS
|
cflags -pie LDFLAGS
|
||||||
export CC CFLAGS LDFLAGS
|
export CC CFLAGS LDFLAGS
|
||||||
export SENDMAIL=/usr/sbin/sendmail
|
export SENDMAIL=/usr/sbin/sendmail
|
||||||
export ISPELL=/usr/bin/ispell
|
export ISPELL=/usr/bin/hunspell
|
||||||
export PATH="/usr/lib/mit/bin:$PATH"
|
export PATH="/usr/lib/mit/bin:$PATH"
|
||||||
export KRB5CFGPATH="$(type -p krb5-config)"
|
export KRB5CFGPATH="$(type -p krb5-config)"
|
||||||
$KRB5CFGPATH --cflags gssapi
|
$KRB5CFGPATH --cflags gssapi
|
||||||
@ -298,19 +302,22 @@ chmod a-x %{buildroot}%{_docdir}/%name/keybase/*.sh
|
|||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%doc %{_docdir}/%name/COPYRIGHT
|
%doc %{_docdir}/%name/COPYRIGHT
|
||||||
%doc %{_docdir}/%name/README*
|
%doc %{_docdir}/%name/README*
|
||||||
%doc %{_docdir}/%name/ChangeLog
|
%doc %{_docdir}/%name/ChangeLog.md
|
||||||
%doc %{_docdir}/%name/ChangeLog.neomutt
|
%doc %{_docdir}/%name/CODE_OF_CONDUCT.md
|
||||||
%doc %{_docdir}/%name/LICENSE.md
|
%doc %{_docdir}/%name/LICENSE.md
|
||||||
%doc %{_docdir}/%name/*.html
|
%doc %{_docdir}/%name/*.html
|
||||||
%doc %{_docdir}/%name/*.txt
|
%doc %{_docdir}/%name/*.txt
|
||||||
|
%dir %doc %{_docdir}/%name/colorschemes/
|
||||||
|
%doc %{_docdir}/%name/colorschemes/*.muttrc
|
||||||
|
%doc %{_docdir}/%name/colorschemes/vombatidae.mutt
|
||||||
%dir %doc %{_docdir}/%name/keybase/
|
%dir %doc %{_docdir}/%name/keybase/
|
||||||
%doc %{_docdir}/%name/keybase/*
|
%doc %{_docdir}/%name/keybase/*
|
||||||
|
%dir %doc %{_docdir}/%name/logo/
|
||||||
|
%doc %{_docdir}/%name/logo/mutt*
|
||||||
%doc %{_docdir}/%name/neomutt-syntax.vim
|
%doc %{_docdir}/%name/neomutt-syntax.vim
|
||||||
%dir %doc %{_docdir}/%name/samples/
|
%dir %doc %{_docdir}/%name/samples/
|
||||||
%doc %{_docdir}/%name/samples/*.rc
|
%doc %{_docdir}/%name/samples/*.rc
|
||||||
%doc %{_docdir}/%name/samples/colors.*
|
%doc %{_docdir}/%name/samples/colors.*
|
||||||
%dir %doc %{_docdir}/%name/samples/iconv/
|
|
||||||
%doc %{_docdir}/%name/samples/iconv/*.rc
|
|
||||||
%doc %{_docdir}/%name/samples/sample.*
|
%doc %{_docdir}/%name/samples/sample.*
|
||||||
%doc %{_docdir}/%name/samples/smime_keys_test.pl
|
%doc %{_docdir}/%name/samples/smime_keys_test.pl
|
||||||
%dir %doc %{_docdir}/%name/vim-keys/
|
%dir %doc %{_docdir}/%name/vim-keys/
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:feaaf7ac230cbf397f028fac5498e38b5d662078083e0cf3329ba04d1bb4b0cd
|
|
||||||
size 2637349
|
|
3
neomutt-20170912.tar.gz
Normal file
3
neomutt-20170912.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9f0d128fe8dbbbddb67e2b629f8b5e52a9d892f82c735845c1708c14e3046657
|
||||||
|
size 2533245
|
@ -5,8 +5,8 @@
|
|||||||
3 files changed, 16 insertions(+), 1 deletion(-)
|
3 files changed, 16 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
--- globals.h
|
--- globals.h
|
||||||
+++ globals.h 2017-06-13 08:12:32.139412148 +0000
|
+++ globals.h 2017-09-11 12:01:55.090752808 +0000
|
||||||
@@ -291,6 +291,8 @@ WHERE struct Regex PgpDecryptionOkay;
|
@@ -292,6 +292,8 @@ WHERE struct Regex PgpDecryptionOkay;
|
||||||
WHERE char *PgpSignAs;
|
WHERE char *PgpSignAs;
|
||||||
WHERE short PgpTimeout;
|
WHERE short PgpTimeout;
|
||||||
WHERE char *PgpEntryFormat;
|
WHERE char *PgpEntryFormat;
|
||||||
@ -16,29 +16,29 @@
|
|||||||
WHERE char *PgpDecodeCommand;
|
WHERE char *PgpDecodeCommand;
|
||||||
WHERE char *PgpVerifyCommand;
|
WHERE char *PgpVerifyCommand;
|
||||||
--- init.h
|
--- init.h
|
||||||
+++ init.h 2017-06-13 08:12:32.139412148 +0000
|
+++ init.h 2017-09-11 12:03:41.660816163 +0000
|
||||||
@@ -3409,6 +3409,18 @@ struct Option MuttVars[] = {
|
@@ -3466,6 +3466,18 @@ struct Option MuttVars[] = {
|
||||||
** a line quoted text if it also matches $$smileys. This mostly
|
** a line quoted text if it also matches $$smileys. This mostly
|
||||||
** happens at the beginning of a line.
|
** happens at the beginning of a line.
|
||||||
*/
|
*/
|
||||||
+ { "pgp_mime_signature_filename", DT_STR, R_NONE, UL &PgpMimeSignatureFilename, UL "signature.asc"},
|
+ { "pgp_mime_signature_filename", DT_STRING, R_NONE, UL &PgpMimeSignatureFilename, UL "signature.asc"},
|
||||||
+ /*
|
+ /*
|
||||||
+ ** .pp
|
+ ** .pp
|
||||||
+ ** This option sets the filename used for signature parts in PGP/MIME
|
+ ** This option sets the filename used for signature parts in PGP/MIME
|
||||||
+ ** signed messages.
|
+ ** signed messages.
|
||||||
+ */
|
+ */
|
||||||
+ { "pgp_mime_signature_description", DT_STR, R_NONE, UL &PgpMimeSignatureDescription, UL "Digital signature"},
|
+ { "pgp_mime_signature_description", DT_STRING, R_NONE, UL &PgpMimeSignatureDescription, UL "Digital signature"},
|
||||||
+ /*
|
+ /*
|
||||||
+ ** .pp
|
+ ** .pp
|
||||||
+ ** This option sets the Content-Description used for signature parts in
|
+ ** This option sets the Content-Description used for signature parts in
|
||||||
+ ** PGP/MIME signed messages.
|
+ ** PGP/MIME signed messages.
|
||||||
+ */
|
+ */
|
||||||
{ "smime_ask_cert_label", DT_BOOL, R_NONE, OPTASKCERTLABEL, 1 },
|
{ "smime_ask_cert_label", DT_BOOL, R_NONE, OPT_SMIME_ASK_CERT_LABEL, 1 },
|
||||||
/*
|
/*
|
||||||
** .pp
|
** .pp
|
||||||
--- ncrypt/pgp.c
|
--- ncrypt/pgp.c
|
||||||
+++ ncrypt/pgp.c 2017-06-13 08:12:32.139412148 +0000
|
+++ ncrypt/pgp.c 2017-09-11 12:01:55.090752808 +0000
|
||||||
@@ -1186,7 +1186,8 @@ struct Body *pgp_sign_message(struct Bod
|
@@ -1208,7 +1208,8 @@ struct Body *pgp_sign_message(struct Bod
|
||||||
t->disposition = DISPNONE;
|
t->disposition = DISPNONE;
|
||||||
t->encoding = ENC7BIT;
|
t->encoding = ENC7BIT;
|
||||||
t->unlink = true; /* ok to remove this file after sending. */
|
t->unlink = true; /* ok to remove this file after sending. */
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Sample ~/.muttrc for SuSE Linux
|
# Sample ~/.muttrc for SUSE Linux
|
||||||
|
|
||||||
# Setting
|
# Setting
|
||||||
set pager_context=4
|
set pager_context=4
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
1 file changed, 6 insertions(+), 4 deletions(-)
|
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
--- handler.c
|
--- handler.c
|
||||||
+++ handler.c 2017-06-13 08:14:25.529321141 +0000
|
+++ handler.c 2017-09-11 12:06:12.982065389 +0000
|
||||||
@@ -831,6 +831,7 @@ static int text_enriched_handler(struct
|
@@ -821,6 +821,7 @@ static int text_enriched_handler(struct
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
TEXT,
|
TEXT,
|
||||||
@ -12,7 +12,7 @@
|
|||||||
LANGLE,
|
LANGLE,
|
||||||
TAG,
|
TAG,
|
||||||
BOGUS_TAG,
|
BOGUS_TAG,
|
||||||
@@ -868,7 +869,7 @@ static int text_enriched_handler(struct
|
@@ -858,7 +859,7 @@ static int text_enriched_handler(struct
|
||||||
{
|
{
|
||||||
if (state != ST_EOF)
|
if (state != ST_EOF)
|
||||||
{
|
{
|
||||||
@ -21,7 +21,7 @@
|
|||||||
state = ST_EOF;
|
state = ST_EOF;
|
||||||
else
|
else
|
||||||
bytes--;
|
bytes--;
|
||||||
@@ -876,6 +877,8 @@ static int text_enriched_handler(struct
|
@@ -866,6 +867,8 @@ static int text_enriched_handler(struct
|
||||||
|
|
||||||
switch (state)
|
switch (state)
|
||||||
{
|
{
|
||||||
@ -30,7 +30,7 @@
|
|||||||
case TEXT:
|
case TEXT:
|
||||||
switch (wc)
|
switch (wc)
|
||||||
{
|
{
|
||||||
@@ -936,9 +939,8 @@ static int text_enriched_handler(struct
|
@@ -926,9 +929,8 @@ static int text_enriched_handler(struct
|
||||||
enriched_flush(&stte, 1);
|
enriched_flush(&stte, 1);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -41,9 +41,9 @@
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1653,7 +1655,7 @@ void mutt_decode_attachment(struct Body
|
@@ -1657,7 +1659,7 @@ void mutt_decode_attachment(struct Body
|
||||||
* strip all trailing spaces to improve interoperability;
|
* all trailing spaces to improve interoperability; if $text_flowed is unset,
|
||||||
* if $text_flowed is unset, simply verbatim copy input
|
* simply verbatim copy input
|
||||||
*/
|
*/
|
||||||
-static int text_plain_handler(struct Body *b, struct State *s)
|
-static int text_plain_handler(struct Body *b, struct State *s)
|
||||||
+static int text_plain_handler(struct Body *b __attribute__((unused)), struct State *s)
|
+static int text_plain_handler(struct Body *b __attribute__((unused)), struct State *s)
|
||||||
|
Loading…
Reference in New Issue
Block a user