]> granicus.if.org Git - neomutt/log
neomutt
9 years agobuild fix for old compilers
Richard Russon [Sun, 10 Apr 2016 21:28:57 +0000 (22:28 +0100)]
build fix for old compilers

9 years agochange wiki references to website
Richard Russon [Mon, 11 Apr 2016 18:02:12 +0000 (19:02 +0100)]
change wiki references to website

9 years agoOnly sort the sidebar if we're asked to
Richard Russon [Thu, 7 Apr 2016 13:06:27 +0000 (14:06 +0100)]
Only sort the sidebar if we're asked to

fixes #11

9 years agoadd ident to PATCHES
Richard Russon [Thu, 18 Feb 2016 16:52:53 +0000 (16:52 +0000)]
add ident to PATCHES

9 years agoadd docs
Richard Russon [Tue, 29 Dec 2015 15:16:26 +0000 (15:16 +0000)]
add docs

9 years agorefresh sidebar after timeout
Stefan Assmann [Wed, 30 Oct 2013 18:34:57 +0000 (11:34 -0700)]
refresh sidebar after timeout

Allow the sidebar to automatically refresh after the amount of time
specified via the "timeout" variable.

Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
9 years agosplit out sidebar wipe
Richard Russon [Mon, 8 Feb 2016 16:30:36 +0000 (16:30 +0000)]
split out sidebar wipe

9 years agohandle unmailboxes * safely
Richard Russon [Mon, 8 Feb 2016 02:02:13 +0000 (02:02 +0000)]
handle unmailboxes * safely

9 years agorename: lots of config for consistency with mutt
Richard Russon [Fri, 18 Dec 2015 15:47:37 +0000 (15:47 +0000)]
rename: lots of config for consistency with mutt

9 years agofeature: separate colour for spoolfile
Richard Russon [Thu, 31 Dec 2015 15:42:25 +0000 (15:42 +0000)]
feature: separate colour for spoolfile

don't highlight spoolfile if not coloured

9 years agofeature: separate sidebar indicator colour
Richard Russon [Thu, 31 Dec 2015 15:24:40 +0000 (15:24 +0000)]
feature: separate sidebar indicator colour

default MT_COLOR_SB_INDICATOR to MT_COLOR_INDICATOR

9 years agoexpandos for deleted, limited, tagged
Richard Russon [Thu, 31 Dec 2015 03:04:42 +0000 (03:04 +0000)]
expandos for deleted, limited, tagged

9 years agosplit up sb_draw
Richard Russon [Sat, 19 Dec 2015 18:40:19 +0000 (18:40 +0000)]
split up sb_draw

9 years agorevamp sorting
Richard Russon [Fri, 18 Dec 2015 18:40:19 +0000 (18:40 +0000)]
revamp sorting

9 years agodistinguish between what's highlighted and what's actually open
Richard Russon [Fri, 18 Dec 2015 18:40:19 +0000 (18:40 +0000)]
distinguish between what's highlighted and what's actually open

9 years agorefactor: visibility check
Richard Russon [Fri, 18 Dec 2015 17:40:50 +0000 (17:40 +0000)]
refactor: visibility check

9 years agoadd: BUFFY notifications
Richard Russon [Fri, 18 Dec 2015 17:34:17 +0000 (17:34 +0000)]
add: BUFFY notifications

9 years agorefactor: split out initialise
Richard Russon [Fri, 18 Dec 2015 17:18:09 +0000 (17:18 +0000)]
refactor: split out initialise

9 years agoadd: colours for divider and highlights
Richard Russon [Fri, 18 Dec 2015 16:35:14 +0000 (16:35 +0000)]
add: colours for divider and highlights

9 years agoadd: BUFFY sorting
Richard Russon [Fri, 18 Dec 2015 16:32:12 +0000 (16:32 +0000)]
add: BUFFY sorting

9 years agorename: vars
Richard Russon [Fri, 19 Feb 2016 04:21:10 +0000 (04:21 +0000)]
rename: vars

9 years agorename: msgcount to msg_count to match other sidebar variables
Richard Russon [Fri, 18 Dec 2015 15:33:03 +0000 (15:33 +0000)]
rename: msgcount to msg_count to match other sidebar variables

9 years agodrop old sort
Richard Russon [Fri, 18 Dec 2015 15:14:14 +0000 (15:14 +0000)]
drop old sort

9 years agofeature: add function sidebar-toggle-visible
Richard Russon [Wed, 9 Dec 2015 04:20:01 +0000 (04:20 +0000)]
feature: add function sidebar-toggle-visible

9 years agofix refresh -- time overflowed short
Richard Russon [Thu, 10 Dec 2015 16:58:40 +0000 (16:58 +0000)]
fix refresh -- time overflowed short

rename SidebarLastRefresh to LastRefresh as it's only used in sidebar.c

9 years agofix brain-damaged function: mh_buffy_update
Richard Russon [Wed, 2 Dec 2015 02:11:03 +0000 (02:11 +0000)]
fix brain-damaged function: mh_buffy_update

Since 1.5.19, mh_buffy_update hasn't worked.  It updated the values
of pointers rather than the destinations of the pointers.

9 years agobuild: conditional compilation
Richard Russon [Wed, 2 Dec 2015 03:58:44 +0000 (03:58 +0000)]
build: conditional compilation

Make sidebar compilation conditional on a configure option.

Add --enable-sidebar option to configure
Alter Makefile to honour configure
Move our OPS into OPS.sidebar
Surround all our code with #ifdef USE_SIDEBAR

By using the unifdef program, all the sidebar code can be removed.
The result is code that differs only slightly from the original mutt
code.  Run this on each source file:

    unifdef -Bm -UUSE_SIDEBAR -UHAVE_FMEMOPEN <FILE>

Then run sed using this script:

    s/ *- *SidebarWidth//g
    s/ *+ *SidebarWidth//g
    s/SidebarWidth *+ *//g
    s/SidebarWidth/0/g

Compared to the original mutt code, there are some minor changes,
such as whitespace, and minor refactoring of variables.

Note: One sidebar global variable is left-behind: SidebarWidth.
This is deeply embedded in the mutt code.  This is because mutt
hard-codes a lot of values: 0's for the left-hand side of the
screen and COLS representing the width of the screen.

9 years agotidy: add comments
Richard Russon [Wed, 2 Dec 2015 03:58:15 +0000 (03:58 +0000)]
tidy: add comments

NOTE: this patch does NOT make any code changes.
It simply adds comment blocks.

Fully document all the sidebar config options.
Add comment-blocks describing each function -- what it does, the
parameters it takes, the return values.  These can be used by
doxygen.

9 years agotidy: rename functions
Richard Russon [Fri, 19 Feb 2016 04:32:06 +0000 (04:32 +0000)]
tidy: rename functions

9 years agosort: sidebar functions
Richard Russon [Mon, 30 Nov 2015 14:37:10 +0000 (14:37 +0000)]
sort: sidebar functions

NOTE: this patch does NOT make any code changes.
It simply rearranges entire functions.

Reorder the functions in sidebar.c
Put the static (helper) functions together.

9 years agotidy: other code
Richard Russon [Wed, 2 Dec 2015 02:23:51 +0000 (02:23 +0000)]
tidy: other code

Tidy up our code in mutt functions

Minor refactoring of code
Initialise variables
Check pointers before use
Bracket complicated logic

9 years agotidy: our functions
Richard Russon [Wed, 2 Dec 2015 02:21:12 +0000 (02:21 +0000)]
tidy: our functions

Tidy up code in our complete functions

Minor refactoring of code
Initialise variables
Check pointers before use
Bracket complicated logic

9 years agotidy: sidebar
Richard Russon [Wed, 2 Dec 2015 03:03:49 +0000 (03:03 +0000)]
tidy: sidebar

Tidy up code in sidebar.c

Minor refactoring of code
Initialise variables
Check pointers before use
Bracket complicated logic
Add {} to unbalanced, or ambiguous, if's
Align = signs
Split up illegible uses of ternary operator ? :
Split up: if ((x = y()) == NULL)
Remove perl-like one-line if's
Compare pointers to NULL
Move our private data struct (sidebar_entry) from protos.h

9 years agofix: drop DrawFullLine
Richard Russon [Mon, 30 Nov 2015 16:37:36 +0000 (16:37 +0000)]
fix: drop DrawFullLine

Drop global variable DrawFullLine

sidebar used a global variable in order to occasionally draw a
complete line of text on the screen.  By manipulating the
SidebarWidth, we can produce the same effect.

Removing this variable also removes the need for nearly 50 lines of
duplicated code in mutt_FormatString.

9 years agofix: drop unused
Richard Russon [Tue, 1 Dec 2015 04:14:25 +0000 (04:14 +0000)]
fix: drop unused

NOTE: this patch does NOT make any functional changes.

remove unused parameters from:
    draw_sidebar
    scroll_sidebar
    calc_boundaries
draw_sidebar has a return value that isn't used
struct MBOX_LIST isn't used
remove some unneeded #include's
remove defunct #ifdef BUFFY_SIZE
remove junk comments

9 years agoindent: sync to surroundings
Richard Russon [Tue, 1 Dec 2015 03:23:52 +0000 (03:23 +0000)]
indent: sync to surroundings

NOTE: this patch does NOT make any code changes.
If only adds/removes whitespace.

Tidy our code in mutt functions as best we can.
Importantly, match up the indent to the surrounding code.

Delete trailing whitespace
{} in compact style
Tidy whitespace around ()'s and maths operators

9 years agoindent: our functions
Richard Russon [Mon, 30 Nov 2015 04:25:05 +0000 (04:25 +0000)]
indent: our functions

NOTE: this patch does NOT make any code changes.
If only adds/removes whitespace.

Use whitespace uniformly across all of our code.

Delete trailing whitespace
Indent with tabs
Function {} to beginning of line
Other {} in compact style
Tidy whitespace around ()'s and maths operators

9 years agofeature: refresh
David Sterba [Fri, 27 Nov 2015 21:56:00 +0000 (21:56 +0000)]
feature: refresh

Add new config: "sidebar_refresh"
Configure the minimum time between sidebar refreshes to reduce
network traffic.

9 years agofeature: dotpathsep
Fabian Groffen [Thu, 26 Nov 2015 16:49:27 +0000 (16:49 +0000)]
feature: dotpathsep

Add new config: "sidebar_delim_chars"
Allow the user to configure how folder names are parsed into a
hierarchy.

9 years agofeature: working utf8
Richard Russon [Tue, 24 Nov 2015 16:27:20 +0000 (16:27 +0000)]
feature: working utf8

Correctly handle utf8 character sequences.
Fix the distinction, in the code, between buffer length in bytes,
string length in wide-chars and screen width in cells.

9 years agofeature: whitelist
Jason DeTiberus [Thu, 19 Nov 2015 19:55:54 +0000 (19:55 +0000)]
feature: whitelist

Add new config: "sidebar_whitelist"
When displaying only-new mailboxes, force some mailboxes to be
always displayed

9 years agofeature: prev/next wraparound
Richard Russon [Thu, 19 Nov 2015 18:30:24 +0000 (18:30 +0000)]
feature: prev/next wraparound

Add new config: "sidebar_next_new_wrap"
When searching for next-new/prev-new mailbox, wrap around if the end
is reached.

9 years agofeature: new only
Steve Kemp [Thu, 19 Nov 2015 18:29:49 +0000 (18:29 +0000)]
feature: new only

Add new config: "sidebar_newmail_only"
Only display mailboxes containing new mail.

Add two new functions and keyboard mappings.
"sidebar-next-new" / "sidebar-prev-new" select the next/previous
mailbox that contains new, or flagged, mail.

9 years agobugfix: fixed header wrapping
Tyler Earnest [Fri, 27 Nov 2015 20:58:02 +0000 (20:58 +0000)]
bugfix: fixed header wrapping

Fix bug with header wrapping

9 years agobugfix: delim null wide
Evgeni Golov [Thu, 19 Nov 2015 20:20:36 +0000 (20:20 +0000)]
bugfix: delim null wide

Fix bug with empty sidebar_delim string.
Debian bugs: #696145, #663883

9 years agobugfix: compose mode
Evgeni Golov [Thu, 19 Nov 2015 18:36:48 +0000 (18:36 +0000)]
bugfix: compose mode

Fix bug when starting in compose mode.
Debian bug: #502627

9 years agobugfix: missing includes
Richard Russon [Thu, 26 Nov 2015 17:09:42 +0000 (17:09 +0000)]
bugfix: missing includes

Add two missing #include's.

9 years agosidebar 1.5.24-20151111
Terry Chan [Mon, 16 Nov 2015 20:39:28 +0000 (20:39 +0000)]
sidebar 1.5.24-20151111

Official Mutt-Sidebar patch against mutt-1.5.24
http://www.lunar-linux.org/mutt-sidebar/
http://lunar-linux.org/~tchan/mutt/patch-1.5.24.sidebar.20151111.txt

9 years agomutt-1.6.0 signed
Kevin McCarthy [Sat, 2 Apr 2016 18:55:45 +0000 (11:55 -0700)]
mutt-1.6.0 signed

9 years agoAdded tag mutt-1-6-rel for changeset be82a2fde82f
Kevin McCarthy [Sat, 2 Apr 2016 18:18:54 +0000 (11:18 -0700)]
Added tag mutt-1-6-rel for changeset be82a2fde82f

9 years agoautomatic post-release commit for mutt-1.6.0
Kevin McCarthy [Sat, 2 Apr 2016 18:18:27 +0000 (11:18 -0700)]
automatic post-release commit for mutt-1.6.0

9 years agoFix hcversion.h generation error when using included gettext.
Kevin McCarthy [Fri, 1 Apr 2016 16:38:47 +0000 (09:38 -0700)]
Fix hcversion.h generation error when using included gettext.

When configuring mutt with --enable-hcache and
--with-included-gettext, there is an automake ordering issue:
BUILT_SOURCES are processed before SUBDIRS.  Therefore, the
'hcversion.h' target is run before the included gettext (intl) is
built.

The hcversion.h target runs the cpp over config.h and mutt.h,
but mutt.h includes lib.h which tries to #include <libintl.h>.
Unfortunately, libintl.h (in this configuration) is generated by the
intl subdir build and so doesn't exist yet.

While the build doesn't completely fail, the resulting hcversion.h is
incorrect: it's just the md5sum of the initial value of BASEVERSION.

This fix is somewhat of a hack but is cleaner than trying to change
automake's behavior.  It inserts a '#undef ENABLE_NLS' in between the
config.h and mutt.h sent to the cpp.  Since hcachever.sh is just
scanning the data structures used by mutt, this shouldn't affect the
hash generated.

Thanks to Will Yardley for reporting this issue.

9 years agoFilter out bidi marks in rfc2047 and rfc2231 encoding. (see #3827)
Kevin McCarthy [Wed, 30 Mar 2016 20:16:20 +0000 (13:16 -0700)]
Filter out bidi marks in rfc2047 and rfc2231 encoding. (see #3827)

Filter out U+200F RIGHT-TO-LEFT MARK and U+200E LEFT-TO-RIGHT MARK in
rfc2047 and 2231 encoded fields.  GNU Screen has a bug that corrupts
the display, and can cause the wrong email to appear to be selected in
the index.  Until screen fixes the issue, filter it out in mutt.

9 years agoFix documentation: mime_lookup (not mime-lookup).
Kevin McCarthy [Tue, 29 Mar 2016 21:07:51 +0000 (14:07 -0700)]
Fix documentation: mime_lookup (not mime-lookup).

9 years agoFix typo.
Vincent Lefevre [Tue, 29 Mar 2016 13:06:52 +0000 (15:06 +0200)]
Fix typo.

9 years agoFix error handling in sync_helper() and imap_sync_mailbox(). (closes #3817)
Kevin McCarthy [Sat, 26 Mar 2016 22:45:18 +0000 (15:45 -0700)]
Fix error handling in sync_helper() and imap_sync_mailbox(). (closes #3817)

This patch is based on the one Richard Russon found in the Fedora package.

If an error occurs during one of the imap_exec() calls in
imap_sync_mailbox(), the mailbox could end up being closed.  This
would cause idata->ctx to be NULL.  Add a check in sync_helper() for
the case where idata->ctx == NULL.

In imap_sync_mailbox(), check the return value of sync_helper().  To
keep the code simple, change rc from being the sum of the calls to the
bitwise-OR of the calls.  (We only need to know if a single flag needs
to be updated, and bitwise-OR will detect negatives.)

Below the calls to sync_helper(), if the call to imap_exec() fails,
make sure rc is set to -1.

9 years agoUpdated Japanese translation.
TAKAHASHI Tamotsu [Sat, 26 Mar 2016 20:30:16 +0000 (13:30 -0700)]
Updated Japanese translation.

9 years agoUpdated Esperanto translation.
Benno Schulenberg [Thu, 24 Mar 2016 19:07:38 +0000 (12:07 -0700)]
Updated Esperanto translation.

9 years agoPrevent renaming root folder in imap.
Kevin McCarthy [Wed, 23 Mar 2016 22:28:25 +0000 (15:28 -0700)]
Prevent renaming root folder in imap.

The root folder results in mx.mbox being NULL, which causes a
segfault.  This can be triggered by entering a subfolder and trying to
rename the ".." entry.

Due to the translation string freeze, no visible error message is
displayed.  Add a TODO note about this for post-1.6 release.

9 years agoFix uninitialized prompt buffer in imap_mailbox_rename(). (closes #3819)
Kevin McCarthy [Wed, 23 Mar 2016 21:20:43 +0000 (14:20 -0700)]
Fix uninitialized prompt buffer in imap_mailbox_rename(). (closes #3819)

This is a patch from OpenBSD to initialize the newname buffer in
imap_mailbox_rename().  Previously it would generate random garbage in
the prompt.

This version of the patch initializes the prompt to the old mailbox name.

Thanks to TAKAHASHI Tamotsu for finding this patch.

9 years agoAdd "-d" command-line option to manual. (closes #3816)
Kevin McCarthy [Wed, 23 Mar 2016 20:17:55 +0000 (13:17 -0700)]
Add "-d" command-line option to manual. (closes #3816)

Thanks to Richard Russon for finding this patch in the Fedora package.

9 years agoUpdated Catalan translation.
Ivan Vilata i Balaguer [Wed, 23 Mar 2016 20:06:15 +0000 (13:06 -0700)]
Updated Catalan translation.

9 years agoClean up mutt_wstr_trunc() some more.
Kevin McCarthy [Wed, 23 Mar 2016 01:00:13 +0000 (18:00 -0700)]
Clean up mutt_wstr_trunc() some more.

* Change return type to size_t.
  The return value is the cumulation of values from mbrtowc(), which
  returns size_t.  All callers already assign the return value to a
  size_t, requiring no external changes.

* Change the local variables n, w, l, and cl to size_t.
  n is the strlen of the src parameter.  l and cl are used for the
  return value.  w is assigned to the *width parameter, which is
  size_t.

  cw is kept as an int, because wcwidth returns type int.

* Change error handling of mbrtowc to be the same as other functions
  in mutt: only reset mbstate when the retval==-1.  When retvat==-2,
  set cl=n to break out of the loop.  Also, set wc to replacement_char
  and allow the logic below to determine the width instead of
  hardcoding to 1.

9 years agoImprove error handling in mutt_wstr_trunc().
Karel Zak [Mon, 21 Mar 2016 00:06:16 +0000 (17:06 -0700)]
Improve error handling in mutt_wstr_trunc().

This is Karel Zak's patch to fix handling of (illegal) multi-byte chars.

 * mutt_wstr_trunc():
 Reset mbstate after error in mbrtowc().
 Set wc=0 if wcwidth returns < 0.

Addresses: https://github.com/karelzak/mutt-kz/issues/58

Thanks to Richard Russon for bringing this patch to our attention.

9 years agoUpdated Dutch translation.
Benno Schulenberg [Tue, 22 Mar 2016 19:35:54 +0000 (12:35 -0700)]
Updated Dutch translation.

9 years agoUpdated French translation.
Vincent Lefevre [Mon, 21 Mar 2016 00:31:06 +0000 (01:31 +0100)]
Updated French translation.

9 years agoUpdated Russian translation.
Vsevolod Volkov [Sun, 20 Mar 2016 22:38:38 +0000 (15:38 -0700)]
Updated Russian translation.

9 years agoUpdated Ukrainian translation.
Vsevolod Volkov [Sun, 20 Mar 2016 22:36:34 +0000 (15:36 -0700)]
Updated Ukrainian translation.

9 years agoUpdated Danish translation.
Morten Bo Johansen [Sun, 20 Mar 2016 22:30:06 +0000 (15:30 -0700)]
Updated Danish translation.

9 years agoTurn off asserts in sendlib.c.
Kevin McCarthy [Sun, 20 Mar 2016 00:25:10 +0000 (17:25 -0700)]
Turn off asserts in sendlib.c.

The Doctor reported triggering an assertion in convert_file_to(), due
to an unexpected errno from iconv().  According to the comments, the
assertions were only enabled for debugging and should have been turned
off.  We certainly don't want to abort mutt for this case, so just
disable them as the comment indicates.

9 years agoUpdated Czech translation.
Petr Pisar [Sat, 19 Mar 2016 23:19:41 +0000 (16:19 -0700)]
Updated Czech translation.

9 years agoFix a few typos in translation messages.
Kevin McCarthy [Sat, 19 Mar 2016 13:08:08 +0000 (06:08 -0700)]
Fix a few typos in translation messages.

Thanks to Moritz Barsnick for reporting these.

9 years agoUpdated French translation.
Vincent Lefevre [Fri, 18 Mar 2016 11:12:05 +0000 (12:12 +0100)]
Updated French translation.

9 years agoFix typo in debug message.
Vincent Lefevre [Fri, 18 Mar 2016 09:15:16 +0000 (10:15 +0100)]
Fix typo in debug message.

9 years agoFix typo picked up by Debian's QA.
Richard Russon [Fri, 18 Mar 2016 00:33:09 +0000 (17:33 -0700)]
Fix typo picked up by Debian's QA.

This was allegedly fixed 5 years ago (see #3493).

9 years agoUse '$(PACKAGE).pot' instead of 'mutt.pot' in Makefile.am
Richard Russon [Fri, 18 Mar 2016 00:22:12 +0000 (17:22 -0700)]
Use '$(PACKAGE).pot' instead of 'mutt.pot' in Makefile.am

9 years agoFix three build warnings when DEBUG isn't defined.
Richard Russon [Fri, 18 Mar 2016 00:12:10 +0000 (17:12 -0700)]
Fix three build warnings when DEBUG isn't defined.

9 years agoFix tcbdb error reporting to use ecode, not errno.
Kevin McCarthy [Wed, 16 Mar 2016 21:15:14 +0000 (14:15 -0700)]
Fix tcbdb error reporting to use ecode, not errno.

After committing aff8d62ebddb and taking a closer look at the tcbdb
documentation, I realized those functions don't set errno.

Change the error handling messages to instead get the ecode and
message using tcbdbecode() and tcbdberrmsg().

9 years agoFix crash in hcache_open_tc() when open fails and debug is on. (closes #3813)
Kevin McCarthy [Wed, 16 Mar 2016 20:33:55 +0000 (13:33 -0700)]
Fix crash in hcache_open_tc() when open fails and debug is on. (closes #3813)

When the hcache open fails, it was trying to dprint.  The dprint had a
%s where it was passing errno, leading to a crash in strlen.

Unify the dprint messages for tcdbopen and tcdbclose to report the
path, strerror, and errno.

Thanks to Will Yardley for capturing the stack trace!

9 years agoPrevent ctx->fp from being closed twice in the event of an error.
Kevin McCarthy [Wed, 16 Mar 2016 01:04:26 +0000 (18:04 -0700)]
Prevent ctx->fp from being closed twice in the event of an error.

The previous patch from Vincent exposed a crash if ftruncate() fails
in mbox_sync_mailbox().  Change fclose() to safe_fclose(), to avoid it
being called twice.

9 years agoCheck return value of ftruncate() in mbox_sync_mailbox().
Vincent Lefevre [Wed, 16 Mar 2016 01:01:44 +0000 (18:01 -0700)]
Check return value of ftruncate() in mbox_sync_mailbox().

Generate an error in the event that ftruncate() fails.

9 years agoUpdate the $hostname documentation.
Kevin McCarthy [Mon, 14 Mar 2016 02:04:12 +0000 (19:04 -0700)]
Update the $hostname documentation.

Change to reflect the updates in changeset ce71d168c819.

9 years agoUpdate the UPDATING file for 1.6.0
Kevin McCarthy [Mon, 14 Mar 2016 01:18:28 +0000 (18:18 -0700)]
Update the UPDATING file for 1.6.0

9 years agoFix RFC2231 continuation join order. (closes #3811) (closes #3741)
Kevin McCarthy [Sun, 13 Mar 2016 18:19:47 +0000 (11:19 -0700)]
Fix RFC2231 continuation join order.  (closes #3811) (closes #3741)

The function generating a list of parts to join had incorrect sorting
logic.  It was comparing values, not attributes.  Additionally, the
order logic wasn't correct.

Thanks to TAKAHASHI Tamotsu for pointing out the value vs attribute
comparison bug.

9 years agoUpdated French translation.
Vincent Lefevre [Fri, 11 Mar 2016 12:47:29 +0000 (13:47 +0100)]
Updated French translation.

9 years agoImprove the mailto_allow documentation.
Kevin McCarthy [Thu, 10 Mar 2016 23:52:14 +0000 (15:52 -0800)]
Improve the mailto_allow documentation.

Add to the commands list.  Document unmailto_allow.  Mention the new
behavior in the Security Considerations section about mailto: links.

9 years agoRestrict mailto header fields using mailto_allow.
Michael Elkins [Thu, 10 Mar 2016 22:59:24 +0000 (14:59 -0800)]
Restrict mailto header fields using mailto_allow.

By default, only the body and subject fields are allowed.  These can
be changed with the mailto_allow and unmailto_allow commands.

9 years agoCheck stat return value in configure.ac. (closes #3810)
Kevin McCarthy [Thu, 10 Mar 2016 22:20:57 +0000 (14:20 -0800)]
Check stat return value in configure.ac. (closes #3810)

9 years agoAdd $resume_edited_draft_files option.
Kevin McCarthy [Tue, 8 Mar 2016 23:57:55 +0000 (15:57 -0800)]
Add $resume_edited_draft_files option.

This adds an extra header when saving edited draft files (-E -H on the
command line).  With this header, the next time they are edited, they
are automatically "resumed" (by setting $resume_draft_files).

The idea is to prevent multiple user-defined headers and signatures
from being added to the draft message by avoiding processing it as a
brand new message after the first time.

9 years agoAdd $resume_draft_files option.
Kevin McCarthy [Tue, 8 Mar 2016 23:57:50 +0000 (15:57 -0800)]
Add $resume_draft_files option.

When set, draft files are processed the same as when resuming
postponed messages.  One use of this option is to avoid multiple
user-defined headers and signatures being added to the message.
(e.g. when -E is used repeatedly on the draft files).

9 years agoImprove method of determining FQDN. (closes #3298)
Derek Martin [Tue, 8 Mar 2016 21:12:02 +0000 (13:12 -0800)]
Improve method of determining FQDN. (closes #3298)

Rather than reading /etc/resolv.conf, use gethostname() and
getaddrinfo() to get the canonical domain.

Thanks to Vincent Lefèvre for the memory leak fix.

9 years agoDocument that GPGME doesn't support creating inline PGP messages.
Kevin McCarthy [Wed, 2 Mar 2016 23:08:54 +0000 (15:08 -0800)]
Document that GPGME doesn't support creating inline PGP messages.

9 years agoAdd hard redraw for the gpgme application/pgp handler.
Kevin McCarthy [Wed, 2 Mar 2016 23:08:49 +0000 (15:08 -0800)]
Add hard redraw for the gpgme application/pgp handler.

Will Yardley reported display artifacts and keyboard issues after
decrypting a traditional pgp message using gpgme.  It turns out the
gpgpme code path was missing a hard_redraw() to repaint the screen
after pinentry.

9 years agoDraft file tweeks: rename flag, don't auto-abort on no change.
Kevin McCarthy [Mon, 29 Feb 2016 03:42:40 +0000 (19:42 -0800)]
Draft file tweeks: rename flag, don't auto-abort on no change.

Rename the flag to SENDDRAFTFILE since it will be used in contexts
other than the body allocation.

Don't automatically abort if the message was unchanged; it seems
possible the draft files could be used as the entire message reply.

9 years agoAdd $pgp_decryption_okay to verify multipart/encrypted are actually encrypted. (close...
Kevin McCarthy [Tue, 16 Feb 2016 03:44:23 +0000 (19:44 -0800)]
Add $pgp_decryption_okay to verify multipart/encrypted are actually encrypted. (closes #3770)

In pgp classic mode, if the $pgp_decrypt_command generated output, it
assumed the content was encrypted.  However, gpg will generate output
even if the block is simply signed and armored text.  The problem is
that mutt was then printing mime headers labelling the output as
encrypted text in the ui.

Add a new option, and suggested value of:
  set pgp_decryption_okay="^\\[GNUPG:\\] DECRYPTION_OKAY"
If set, the output from the decrypt command will be scanned for this
regexp to confirm an actual decryption occurred.

Note that gpgme already correctly rejects this form of spoofed message.

9 years agoUpdate the status message after decryption using gpgpme.
Kevin McCarthy [Thu, 11 Feb 2016 23:12:48 +0000 (15:12 -0800)]
Update the status message after decryption using gpgpme.

Change gpgme to behave the same as classic pgp mode: after a
decryption, update the status message to overwrite the initial
"Invoking PGP..." message.

9 years agoUpdated French translation.
Vincent Lefevre [Thu, 11 Feb 2016 01:15:27 +0000 (02:15 +0100)]
Updated French translation.

9 years agoFix pgp and smime decryption in mutt_prepare_template().
Kevin McCarthy [Sun, 7 Feb 2016 18:15:27 +0000 (10:15 -0800)]
Fix pgp and smime decryption in mutt_prepare_template().

Change the "combined" multipart decryption block to only work for pgp,
since mutt_is_multipart_encrypted() currently only checks for pgp
headers and it therefore only worked for pgp in the first place.

Fix the newhdr->security to be based on what that function returns,
instead of the "context" hdr passed in.

Add a smime decryption block below when iterating through the content.

Fix the application/pgp decryption block to assign to hdr->security
using the type of the app/pgp part instead of hdr->content.

9 years agoAdd new flag -E to modify draft/include file. (closes #3799)
Kevin McCarthy [Sun, 7 Feb 2016 18:15:22 +0000 (10:15 -0800)]
Add new flag -E to modify draft/include file. (closes #3799)

Specifying -E with -i will cause mutt to directly edit the include
file.

Specifying -E with -H will cause the draft file to be regenerated from
the latest version of the email on exit.

Improve -H so that it will read (and write) multipart messages.

9 years agoMention <what-key> under the key bindings documentation.
Kevin McCarthy [Tue, 26 Jan 2016 21:46:22 +0000 (13:46 -0800)]
Mention <what-key> under the key bindings documentation.