]> granicus.if.org Git - mutt/log
mutt
6 years agoDisplay matching new messages in a thread-limited index.
Kevin McCarthy [Fri, 20 Jul 2018 03:28:38 +0000 (20:28 -0700)]
Display matching new messages in a thread-limited index.

Previously, the index performed pattern matching first, and then
resorted new mail.  The problem was that thread-limiting patterns,
e.g. ~(pattern), require threading data to properly match against the
new messages.

We already save new messages for the purposes of uncollapsing threads.
To keep the code cleaner, split off update_index() into
update_index_threaded()/unthreaded().  Then for threaded mode, save
the new messages first.  We can then sort (before pattern matching),
and use the save_new array to pattern match the new messages
afterwards.

The $uncollapse_new loop was unnecessarily performing a n^2 search.
Simplify to just iteratate over the save_new instead.

6 years agoMinor documentation fix.
Kevin McCarthy [Tue, 17 Jul 2018 17:04:24 +0000 (10:04 -0700)]
Minor documentation fix.

6 years agoUpdated French translation.
Vincent Lefevre [Tue, 17 Jul 2018 15:06:45 +0000 (17:06 +0200)]
Updated French translation.

6 years agoImprove OAUTHBEARER support.
Brandon Long [Tue, 26 Jun 2018 22:42:08 +0000 (15:42 -0700)]
Improve OAUTHBEARER support.

Move token refresh commands to their own config variables. Consolidate
code for refreshing tokens and generating the SASL OAUTHBEARER
argument in account.c. Add support for OAUTHBEARER to pop.

Fix pop_auth_oauth() mutt_from_base64() call from 1.10.1 release.

6 years agoMerge branch 'stable'
Kevin McCarthy [Mon, 16 Jul 2018 16:58:43 +0000 (09:58 -0700)]
Merge branch 'stable'

6 years agoautomatic post-release commit for mutt-1.10.1 mutt-1-10-1-rel
Kevin McCarthy [Mon, 16 Jul 2018 16:52:23 +0000 (09:52 -0700)]
automatic post-release commit for mutt-1.10.1

6 years agoCheck outbuf length in mutt_from_base64()
Kevin McCarthy [Fri, 13 Jul 2018 21:25:28 +0000 (14:25 -0700)]
Check outbuf length in mutt_from_base64()

The obuf can be overflowed in auth_cram.c, and possibly auth_gss.c.

Thanks to Jeriko One for the bug report.

6 years agoCheck destlen and truncate in url_pct_encode().
Kevin McCarthy [Fri, 13 Jul 2018 20:05:22 +0000 (13:05 -0700)]
Check destlen and truncate in url_pct_encode().

Thanks to Jeriko One for the patch, which this commit is based upon.

6 years agoVerify IMAP status mailbox literal count size.
Kevin McCarthy [Fri, 13 Jul 2018 19:35:50 +0000 (12:35 -0700)]
Verify IMAP status mailbox literal count size.

Ensure the length isn't bigger than the idata->buf.

Thanks to Jeriko One fo the bug report and patch, which this commit is
based upon.

6 years agoHandle NO response without message properly
JerikoOne [Fri, 13 Jul 2018 19:24:58 +0000 (12:24 -0700)]
Handle NO response without message properly

6 years agoDon't overflow tmp in msg_parse_fetch.
Kevin McCarthy [Fri, 13 Jul 2018 19:15:00 +0000 (12:15 -0700)]
Don't overflow tmp in msg_parse_fetch.

Ensure INTERNALDATE and RFC822.SIZE field sizes fit temp buffer.

Thanks to Jeriko One for the bug report and patch, which this patch is
based upon.

6 years agoSelectively cache headers.
Richard Russon [Fri, 13 Jul 2018 18:33:16 +0000 (11:33 -0700)]
Selectively cache headers.

Thanks to NeoMutt and Jeriko One for the patch, which was slightly
modified to apply to the Mutt code.

6 years agoSanitize POP bcache paths.
Kevin McCarthy [Fri, 13 Jul 2018 18:16:33 +0000 (11:16 -0700)]
Sanitize POP bcache paths.

Protect against bcache directory path traversal for UID values.

Thanks for Jeriko One for the bug report and patch, which this commit
is based upon.

6 years agoEnsure UID in fetch_uidl.
JerikoOne [Fri, 13 Jul 2018 17:47:11 +0000 (10:47 -0700)]
Ensure UID in fetch_uidl.

6 years agoFix buffer size check in cmd_parse_lsub.
Kevin McCarthy [Fri, 13 Jul 2018 04:41:17 +0000 (21:41 -0700)]
Fix buffer size check in cmd_parse_lsub.

The size parameter to url_ciss_tostring() was off by one.

6 years agoFix imap_quote_string() length check errors.
Kevin McCarthy [Fri, 13 Jul 2018 03:46:37 +0000 (20:46 -0700)]
Fix imap_quote_string() length check errors.

The function wasn't properly checking for dlen<2 before quoting, and
wasn't properly pre-adjusting dlen to include the initial quote.

Thanks to Jeriko One for reporting these issues.

6 years agoMerge branch 'stable'
Kevin McCarthy [Sun, 8 Jul 2018 02:34:32 +0000 (19:34 -0700)]
Merge branch 'stable'

6 years agoMention $pgp_decode_command for $pgp_check_gpg_decrypt_status_fd
Kevin McCarthy [Sun, 8 Jul 2018 02:32:57 +0000 (19:32 -0700)]
Mention $pgp_decode_command for $pgp_check_gpg_decrypt_status_fd

It scans $pgp_decode_command for inline and application/pgp mime
types.

6 years agoMerge branch 'stable'
Kevin McCarthy [Sun, 8 Jul 2018 02:18:55 +0000 (19:18 -0700)]
Merge branch 'stable'

6 years agoProperly quote IMAP mailbox names when (un)subscribing.
Kevin McCarthy [Sun, 8 Jul 2018 02:03:44 +0000 (19:03 -0700)]
Properly quote IMAP mailbox names when (un)subscribing.

When handling automatic subscription (via $imap_check_subscribed), or
manual subscribe/unsubscribe commands, mutt generating a "mailboxes"
command but failed to properly escape backquotes.

Thanks to Jeriko One for the detailed bug report and patch, which this
commit is based upon.

6 years agoUpdated French translation.
Vincent Lefevre [Mon, 2 Jul 2018 10:39:14 +0000 (12:39 +0200)]
Updated French translation.

6 years agoAdd dependencies for keymap_alldefs.h in po/Makefile.in.in
Vincent Lefevre [Mon, 2 Jul 2018 10:25:13 +0000 (12:25 +0200)]
Add dependencies for keymap_alldefs.h in po/Makefile.in.in

These dependencies are based on those from Makefile.am and are needed
so that "make update-po" gets the new strings from OPS, etc.

6 years agosmime_handle_entity() cleanup.
Kevin McCarthy [Mon, 2 Jul 2018 03:43:24 +0000 (20:43 -0700)]
smime_handle_entity() cleanup.

Remove redundant NULL assignments after safe_fclose() calls.

Remove some trailing spaces.

smimeout can't be NULL, so remove the check around the output
translation block.

6 years agoVoid passphrase on s/mime decryption error.
Kevin McCarthy [Mon, 2 Jul 2018 03:13:11 +0000 (20:13 -0700)]
Void passphrase on s/mime decryption error.

Model this after pgp's pgp_decrypt_part(), which checks if fpout is
empty.

6 years agoAdd check-stats function to calculate mailbox statistics.
Anton Lindqvist [Fri, 29 Jun 2018 03:17:23 +0000 (20:17 -0700)]
Add check-stats function to calculate mailbox statistics.

This allows the statistics to be updated without setting
$mail_check_stats or before $mail_check_stats_interval has passed.

6 years agoAdd a reference to $copy in the $record documentation.
Kevin McCarthy [Wed, 27 Jun 2018 16:45:10 +0000 (09:45 -0700)]
Add a reference to $copy in the $record documentation.

6 years agoReset all MonitorContext state on context removal.
Kevin McCarthy [Wed, 27 Jun 2018 16:27:05 +0000 (09:27 -0700)]
Reset all MonitorContext state on context removal.

Reset both the descriptor and changed flag when the current context is
removed.  Don't make this dependent on the context being valid or
being found by monitor_resolve(), in case the context was closed due
to some type of error condition.

6 years agoFix MonitorContextDescriptor update on removal.
Kevin McCarthy [Wed, 27 Jun 2018 02:48:25 +0000 (19:48 -0700)]
Fix MonitorContextDescriptor update on removal.

Reset the context descriptor before checking for the monitor being
shared by another mailbox.  Technically, it would be set properly
during the next add, but it shouldn't be left incorrect.

6 years agoWork around open mailbox monitor code check issue.
Kevin McCarthy [Tue, 26 Jun 2018 00:54:43 +0000 (17:54 -0700)]
Work around open mailbox monitor code check issue.

The monitor code is too fast, and can result in all the changes for a
single directory stat update being missed.

Work around this issue by not recording stat time updates when the
check_mailbox() is triggered by the monitor.  This will cause the next
subsequent check to take another look.

6 years agoGenerate error if makedoc is missing a type.
Kevin McCarthy [Mon, 25 Jun 2018 20:13:55 +0000 (13:13 -0700)]
Generate error if makedoc is missing a type.

Add a comment in init.h to remind devs to update makedoc.c when adding
a new type.

Change makedoc to fail on a missing type.  Otherwise it's too easy to
miss the resulting problem in the documentation.

Credit goes to Eike Rathke for noting that it was too easy to forget
to do this, and something should be fixed.  I found his solution a bit
too complicated though, and opted for just adding comment and program
failure.

6 years agoMake make ctags actually work
Eike Rathke [Sat, 23 Jun 2018 08:25:15 +0000 (10:25 +0200)]
Make make ctags actually work

make ctags broke with

Making ctags in po
make[1]: Entering directory '.../mutt/po'
make[1]: *** No rule to make target 'ctags'.  Stop.
make[1]: Leaving directory '.../mutt/po'
Makefile:867: recipe for target 'ctags-recursive' failed
make: *** [ctags-recursive] Error 1

and once fixed the same in intl/

Note that this ctags target scatters tags files over directories.
If you use exuberant ctags then simply run
ctags -R
once in mutt's root dir instead.

6 years agoRemove uninitialized warning for mutt_get_stat_timespec().
Kevin McCarthy [Fri, 22 Jun 2018 03:42:55 +0000 (20:42 -0700)]
Remove uninitialized warning for mutt_get_stat_timespec().

The switch covers all the types, but in some cases the compiler still
complains.  Explicitly set tv_sec = 0 to silence the warning.

6 years agoUpdated Simplified Chinese translation.
Zero King [Tue, 19 Jun 2018 15:16:33 +0000 (15:16 +0000)]
Updated Simplified Chinese translation.

6 years agomutt_atol: better error handling.
Vincent Lefevre [Tue, 19 Jun 2018 07:45:29 +0000 (09:45 +0200)]
mutt_atol: better error handling.

* Detect overflow on negative numbers too (< LONG_MIN).

* Distinguish between format error and number overflow as already
  expected (e.g. for pgp_timeout and smime_timeout).

6 years agoReset errno to 0 before calling strtol and testing it in mutt_atol.
Vincent Lefevre [Tue, 19 Jun 2018 07:37:56 +0000 (09:37 +0200)]
Reset errno to 0 before calling strtol and testing it in mutt_atol.

Otherwise providing LONG_MAX+1 then LONG_MAX gave an error for LONG_MAX too.

6 years agoAllow larger passphrase timeout values
Eike Rathke [Mon, 18 Jun 2018 20:04:47 +0000 (22:04 +0200)]
Allow larger passphrase timeout values

This came up in the comp.mail.mutt newsgroup where a user wasn't
satisfied with the SHORT_MAX seconds ~9 hours limit on passphrase
timeouts.

For the first time made it necessary for the options parser to be
able to parse numbers as long values. Also, introduced
mutt_add_timeout() to detect possible overflow before adding a
timeout to a time_t value and truncate to TIME_T_MAX instead.

6 years agoUpdated French translation.
Vincent Lefevre [Mon, 18 Jun 2018 15:19:31 +0000 (17:19 +0200)]
Updated French translation.

6 years agoMerge branch 'stable'
Kevin McCarthy [Mon, 18 Jun 2018 11:35:24 +0000 (19:35 +0800)]
Merge branch 'stable'

6 years agocrypt-gpgme: prevent crash on bad S/MIME signature
Philipp Gesang [Mon, 18 Jun 2018 09:21:38 +0000 (11:21 +0200)]
crypt-gpgme: prevent crash on bad S/MIME signature

Inform the user about the fingerprint being unavailable instead
of crashing if the S/MIME signature is bad.

6 years agoConvert context and buffy to use nanosecond timestamps.
Kevin McCarthy [Thu, 14 Jun 2018 08:17:56 +0000 (16:17 +0800)]
Convert context and buffy to use nanosecond timestamps.

The inotify interface has an unfortunate side effect of making Mutt
react too quickly to new mail.  Sometimes, the mail is only
half-delivered when the mailbox is checked.  Because Mutt is using the
stat mtime - seconds resolution - this means it won't realize there
are more messages delivered during the same second.

Nanosecond resolution fields were standardized in POSIX.1-2008, so
check for and use those if they are available.

6 years agoUpdated French translation.
Vincent Lefevre [Thu, 14 Jun 2018 07:10:51 +0000 (09:10 +0200)]
Updated French translation.

6 years agoSupport for using OAUTHBEARER for smtp.
Brandon Long [Tue, 12 Jun 2018 21:11:47 +0000 (14:11 -0700)]
Support for using OAUTHBEARER for smtp.

This also means a bunch of smtp auth stuff is now compiled in by
default (with --enable-smtp) without having sasl

6 years agoInitial support for OAUTHBEARER for IMAP.
Brandon Long [Mon, 11 Jun 2018 17:39:49 +0000 (10:39 -0700)]
Initial support for OAUTHBEARER for IMAP.

Gmail supports RFC 7628 for using OAUTH with IMAP, and they really don't
like you using password based auth.  You can still enable "less secure
apps" and then generate an application specific password, but I figured it
was time to support it.

Being mutt, I punted on some of the "hard" work to an external script, ie
getting/refreshing the OAUTH tokens.  This avoids the issue of how do you
have a client-id and client-secret for an open source project, and the fact
that OAUTH discovery is still nascent, so you'd likely need separate things
for each of the providers.

At least for Gmail, you can use the oauth2.py script from Google's
gmail-oauth2-tools:
https://github.com/google/gmail-oauth2-tools/blob/master/python/oauth2.py

You'd need to get your own oauth client credentials for Gmail here:
https://console.developers.google.com/apis/credentials

Then, you'd use oauth2.py with --generate_oauth2_token to get a refresh
token, and configure mutt with:

set imap_authenticators="oauthbearer"
set imap_user="<email_address>"
set imap_pass=`/path/to/oauth2.py --quiet --user=<email_address>
--client_id=<client_id> --client_secret=<client_secret>
--refresh_token=<refresh_token>`

For this patch, I didn't add any new configuration, but I'm open to
suggestions on that.

The patch also only support SASL-IR to reduce round-trips to the server,
but it's certainly possible to change that if we think there are
OAUTHBEARER IMAP servers that don't support SASL-IR.  It also requires the
connection to be encrypted as the access token is re-usable for an hour or
so.  Again, Gmail only allows encrypted IMAP connections, not sure if any
OAUTHBEARER services allow non-encrypted.

Turns out that auth failure leaves you in SASL mode, so I have a hack to
issue a noop command on error.  Not sure if that's just OAUTHBEARER
oddness, or whether I should be using lower level mutt imap functions.

6 years agoMove mutt_getch() timeout value into curs_lib.c
Kevin McCarthy [Sun, 10 Jun 2018 00:51:30 +0000 (08:51 +0800)]
Move mutt_getch() timeout value into curs_lib.c

Change monitor.c to reference the curs_lib value, instead of
vice-versa.

We need to store the value for both monitor.c's poll and for
mutt_monitor_ch() to perform an initial non-blocking check of ncurses'
getch() buffer.

6 years agoSpelling mistake in debug message.
Vincent Lefevre [Fri, 8 Jun 2018 12:04:16 +0000 (14:04 +0200)]
Spelling mistake in debug message.

6 years agoMissing void in mutt_set_current_menu_redraw_full prototype
Vincent Lefevre [Fri, 8 Jun 2018 11:53:46 +0000 (13:53 +0200)]
Missing void in mutt_set_current_menu_redraw_full prototype

6 years agoGive a prototype for mutt_monitor_poll
Vincent Lefevre [Fri, 8 Jun 2018 11:49:32 +0000 (13:49 +0200)]
Give a prototype for mutt_monitor_poll

6 years agoQuick fix for ncurses buffering issue with inotify polling.
Kevin McCarthy [Wed, 6 Jun 2018 00:38:44 +0000 (17:38 -0700)]
Quick fix for ncurses buffering issue with inotify polling.

Ncurses does its own buffering for some character sequences, notable
Esc-prefixed input.  Add a non-blocking check for getch() before
performing the mutt_monitor_poll() call.

This is a quick fix, which I'll clean up more later.

6 years agoMerge branch 'stable'
Kevin McCarthy [Tue, 5 Jun 2018 04:43:41 +0000 (21:43 -0700)]
Merge branch 'stable'

6 years agoAdd GnuPG status fd checks for inline pgp.
Kevin McCarthy [Tue, 5 Jun 2018 04:31:33 +0000 (21:31 -0700)]
Add GnuPG status fd checks for inline pgp.

The difficulty is that "BEGIN PGP MESSAGE" could be a signed and
armored part, so we can't fail hard if it isn't encrypted.

Change pgp_check_decryption_okay() to return more status codes, with
>=0 indicating an actual decryption; -2 and -1 indicating plaintext
found; and -3 indicating an actual DECRYPTION_FAILED status code seen.

Fail hard on -3, but change the message for -2 and -1 to indicate the
message was not encrypted.

6 years agoMerge branch 'stable'
Kevin McCarthy [Mon, 4 Jun 2018 22:51:25 +0000 (15:51 -0700)]
Merge branch 'stable'

6 years agoAdd $pgp_check_gpg_decrypt_status_fd.
Kevin McCarthy [Mon, 4 Jun 2018 22:40:57 +0000 (15:40 -0700)]
Add $pgp_check_gpg_decrypt_status_fd.

If set (the default) mutt performs more thorough checking of the
$pgp_decrypt_command status output for GnuPG result codes.

Ticket #39 revealed that GnuPG (currently) does not protect against
messages that have been manipulated to contain an empty encryption
packet followed by a plaintext packet.

A huge thanks to Marcus Brinkmann for researching this issue, taking
the time to report it to us (and the GnuPG team), and taking even more
time to clarify exactly what needed to be checked for.   

6 years agoAdd new timeout functions to work with inotify monitors.
Kevin McCarthy [Mon, 4 Jun 2018 01:34:21 +0000 (18:34 -0700)]
Add new timeout functions to work with inotify monitors.

The ncurses timeout() function doesn't affect the new poll inside
mutt_monitor_poll().  This meant that $imap_keepalive and $timeout
were not being respected when the monitor was used.

Create mutt_getch_timeout(), which delegates to timeout() and sets a
timeout value mutt_monitor_poll() uses too.

6 years agoMerge branch 'stable'
Kevin McCarthy [Sun, 3 Jun 2018 21:54:41 +0000 (14:54 -0700)]
Merge branch 'stable'

6 years agoRevert showing real size for small files in mutt_pretty_size().
Kevin McCarthy [Sun, 3 Jun 2018 21:52:37 +0000 (14:52 -0700)]
Revert showing real size for small files in mutt_pretty_size().

I thought the change made in 0fa64ba9 was small enough not to matter,
but at least one long-time user took the time to track down the change
and request it be reverted.

6 years agoMerge branch 'stable'
Kevin McCarthy [Sun, 3 Jun 2018 21:42:41 +0000 (14:42 -0700)]
Merge branch 'stable'

6 years agoSwitch build scripts to use `` instead of $()
Kevin McCarthy [Sun, 3 Jun 2018 21:40:31 +0000 (14:40 -0700)]
Switch build scripts to use `` instead of $()

This is for older systems running Bourne shell as /bin/sh.

6 years agoChange direct mutt_getch() callers to handle new mail event.
Kevin McCarthy [Sun, 3 Jun 2018 21:05:13 +0000 (14:05 -0700)]
Change direct mutt_getch() callers to handle new mail event.

The inotify handler now returns -2 (timeout) on a new mail event.
Change the direct callers to ignore, so prompts aren't strangely
aborted.

Also, fix mutt_change_flag() to call mutt_refresh() before the
prompt.  Apparently ncurses getch() was doing this for us, but now
that we are polling STDIN instead, the prompt wasn't displaying.

6 years agoadd feature file monitoring with Linux inotify
GT [Sun, 3 Jun 2018 20:23:57 +0000 (20:23 +0000)]
add feature file monitoring with Linux inotify

6 years agoCorrect spelling mistakes.
Edward Betts [Fri, 1 Jun 2018 09:46:34 +0000 (10:46 +0100)]
Correct spelling mistakes.

6 years agoMerge branch 'stable'
Kevin McCarthy [Mon, 28 May 2018 21:29:45 +0000 (14:29 -0700)]
Merge branch 'stable'

6 years agofix inappropriate use of FREE() in ssl init error path
Oswald Buddenhagen [Sun, 6 Jan 2013 18:24:18 +0000 (19:24 +0100)]
fix inappropriate use of FREE() in ssl init error path

OpenSSL structures need to be freed with dedicated functions.

6 years agoRemove mutt_buffer_new() NULL retval checks.
Kevin McCarthy [Mon, 21 May 2018 22:12:47 +0000 (15:12 -0700)]
Remove mutt_buffer_new() NULL retval checks.

It will fail, rather than return NULL.

Further clean up imap_new_data() since it also had NULL checks for
safe_calloc() that shouldn't happen.

6 years agoFix mutt_strncmp size comparison for 'uncolor header'.
Kevin McCarthy [Mon, 21 May 2018 20:33:14 +0000 (13:33 -0700)]
Fix mutt_strncmp size comparison for 'uncolor header'.

Thanks to Fabian Groffen for pointing out the discrepancy.

mutt_extract_token() null-terminates the token,, so actually there is
no need to use "strncmp" for the comparison in this case.

However, since the token is being checked against Fields there is no
potential harm of a prefix match, so we should fix the number to be
consistent with the other token comparisons.

6 years agoautomatic post-release commit for mutt-1.10.0 mutt-1-10-rel
Kevin McCarthy [Sat, 19 May 2018 17:57:10 +0000 (10:57 -0700)]
automatic post-release commit for mutt-1.10.0

6 years agoUpdated Catalan translation.
Ivan Vilata i Balaguer [Thu, 17 May 2018 19:24:31 +0000 (12:24 -0700)]
Updated Catalan translation.

6 years agoUpdated Japanese translation.
TAKAHASHI Tamotsu [Thu, 17 May 2018 17:10:52 +0000 (10:10 -0700)]
Updated Japanese translation.

6 years agofr.po: updated Project-Id-Version and removed old translations.
Vincent Lefevre [Thu, 17 May 2018 10:45:39 +0000 (12:45 +0200)]
fr.po: updated Project-Id-Version and removed old translations.

6 years agoUpdated German translation.
Olaf Hering [Mon, 14 May 2018 07:12:11 +0000 (09:12 +0200)]
Updated German translation.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
6 years agoNote that $pgp/smime_self_encrypt now default to set.
Kevin McCarthy [Thu, 10 May 2018 16:12:19 +0000 (09:12 -0700)]
Note that $pgp/smime_self_encrypt now default to set.

6 years agoAdd note about libidn2 v2.0.0 or greater to UPDATING file.
Kevin McCarthy [Thu, 10 May 2018 16:00:21 +0000 (09:00 -0700)]
Add note about libidn2 v2.0.0 or greater to UPDATING file.

6 years agoUpdated Russian translation.
Vsevolod Volkov [Wed, 9 May 2018 16:32:48 +0000 (09:32 -0700)]
Updated Russian translation.

6 years agoUpdated Ukrainian translation.
Vsevolod Volkov [Wed, 9 May 2018 16:30:55 +0000 (09:30 -0700)]
Updated Ukrainian translation.

6 years agoAdd declaration checks for libidn2.
Kevin McCarthy [Wed, 9 May 2018 02:32:12 +0000 (19:32 -0700)]
Add declaration checks for libidn2.

The libidn compatibilty layer was only added in version
2.0.0 (2017-03-29).  idn2.h defines macros, so use AC_CHECK_DECL
instead of AC_CHECK_FUNC.

$with_idn2 doesn't have an "auto" state, so remove a few unneeded
copy/paste checks from idn.

6 years agoUpdated Czech translation.
Petr Pisar [Tue, 8 May 2018 17:11:17 +0000 (10:11 -0700)]
Updated Czech translation.

6 years agoUpdate the UPDATING file for 1.10.0.
Kevin McCarthy [Sat, 5 May 2018 14:35:59 +0000 (07:35 -0700)]
Update the UPDATING file for 1.10.0.

6 years agoUpdated Danish translation.
Morten Bo Johansen [Sun, 6 May 2018 16:43:25 +0000 (09:43 -0700)]
Updated Danish translation.

6 years agoUpdated Simplified Chinese translation.
lilydjwg [Sat, 5 May 2018 14:39:36 +0000 (07:39 -0700)]
Updated Simplified Chinese translation.

6 years agoUpdated French translation.
Vincent Lefevre [Fri, 4 May 2018 00:43:56 +0000 (02:43 +0200)]
Updated French translation.

6 years agoAdd echo command.
Kevin McCarthy [Sun, 29 Apr 2018 22:10:21 +0000 (15:10 -0700)]
Add echo command.

Prints messages using mutt_message().  Sets OPTFORCEREFRESH to allow
updates in the middle of a macro.

Calls mutt_sleep(0) to pause for $sleep_time seconds after displaying
the message.

6 years agoMissing comma.
Vincent Lefevre [Thu, 3 May 2018 10:24:55 +0000 (12:24 +0200)]
Missing comma.

6 years agoUpdate copyright notices.
Kevin McCarthy [Tue, 1 May 2018 22:13:51 +0000 (15:13 -0700)]
Update copyright notices.

6 years agoUpdate pattern documentation.
Kevin McCarthy [Sat, 28 Apr 2018 20:21:42 +0000 (13:21 -0700)]
Update pattern documentation.

Note that ~b, ~B, ~h, ~M, and ~X read the message in, and that this
can be much slower.

Change =b, =B, =h table rows to document just the IMAP behavior.  The
"=" simple string behavior is already covered below, and makes it less
obvious whether "***)" should be added to those entries in the table.

Break up the simple string and imap server-side matching explanation
into two paragraphs.

Add ~M to the list of patterns you can't use message scoring with.

Add equivalent, if briefer, explanations to the muttrc.man page.

6 years agoAdd ~M pattern to match mime Content-Types.
Ammon Riley [Fri, 27 Apr 2018 01:00:00 +0000 (18:00 -0700)]
Add ~M pattern to match mime Content-Types.

6 years agoAdd more explanation of known vs subscribed lists to manual.
Kevin McCarthy [Mon, 30 Apr 2018 23:17:52 +0000 (16:17 -0700)]
Add more explanation of known vs subscribed lists to manual.

Mention in both the "Mailing Lists" and "Handling Mailing Lists"
sections the difference between known and subscribed mailing lists.

Note that the Mail-Followup-To header is generated if any of the
recipients are known mailing lists.  If any of those are subscribed
mailing lists, the sender's address will not be in the header.  If all
of them are known (but not subscribed), the sender's address will be
added to the header.

6 years agoUpdated French translation.
Vincent Lefevre [Mon, 23 Apr 2018 21:48:33 +0000 (23:48 +0200)]
Updated French translation.

6 years agoAdd Error History function and config var.
Kevin McCarthy [Sun, 22 Apr 2018 20:02:06 +0000 (13:02 -0700)]
Add Error History function and config var.

<error-history>, by default unbound, shows a list of the recent error
messages displayed by Mutt via mutt_message() or mutt_error().

$error_history sets the size of the history ring.

For now, I've decided to include mutt_message() messages too.  If this
is too chatty, we can restrict it to mutt_error() easily in the
future.

6 years agoUpdated French translation.
Vincent Lefevre [Fri, 20 Apr 2018 15:28:47 +0000 (17:28 +0200)]
Updated French translation.

6 years agoAdd $sort_browser options for count and unread.
Kevin McCarthy [Thu, 19 Apr 2018 22:40:35 +0000 (15:40 -0700)]
Add $sort_browser options for count and unread.

6 years agoAdd $browser_abbreviate_mailboxes.
Kevin McCarthy [Thu, 19 Apr 2018 20:51:07 +0000 (13:51 -0700)]
Add $browser_abbreviate_mailboxes.

This allows '=' and '~' mailboxes shortcuts to be turned off in the
browser mailbox list.

The default $sort_browser value of "alpha" uses strcoll(3), which
ignores some punctuation.  When using multiple accounts with
dynamically changing values of $folder, this can lead to an
unintuitive sorting order.  (See issue #22 for an example.)

This problem came about because of commit 8328ce68, which enabled
mutt_pretty_mailbox() calls for IMAP and POP mailboxes too.  The
commit had a valid point about consistency and too-wide mailbox
listings, so I don't really want to revert it.

This option provides an alternative to completely enable/disable the
shortcuts for those who run into an issue.

6 years agoFix mkreldate.sh in master to use [-r] test too.
Kevin McCarthy [Mon, 16 Apr 2018 23:32:33 +0000 (16:32 -0700)]
Fix mkreldate.sh in master to use [-r] test too.

6 years agoMerge branch 'stable'
Kevin McCarthy [Mon, 16 Apr 2018 23:31:08 +0000 (16:31 -0700)]
Merge branch 'stable'

6 years agoSwitch to using [ -r ] in version.sh for Bourne shell compatibility.
Kevin McCarthy [Mon, 16 Apr 2018 23:29:08 +0000 (16:29 -0700)]
Switch to using [ -r ] in version.sh for Bourne shell compatibility.

Thanks to Paul Keusemann for pointing out the issue.

6 years agoAdd a comment in auth_gss about RFCs and null-termination.
Kevin McCarthy [Sun, 15 Apr 2018 22:57:28 +0000 (15:57 -0700)]
Add a comment in auth_gss about RFCs and null-termination.

6 years agoAdd libidn2 support
Matej Muzila [Mon, 9 Apr 2018 11:46:42 +0000 (13:46 +0200)]
Add libidn2 support

6 years agoMerge branch 'stable'
Kevin McCarthy [Sat, 14 Apr 2018 20:28:11 +0000 (13:28 -0700)]
Merge branch 'stable'

6 years agoautomatic post-release commit for mutt-1.9.5 mutt-1-9-5-rel
Kevin McCarthy [Sat, 14 Apr 2018 20:22:48 +0000 (13:22 -0700)]
automatic post-release commit for mutt-1.9.5

6 years agoMerge branch 'stable'
Kevin McCarthy [Sat, 14 Apr 2018 03:48:28 +0000 (20:48 -0700)]
Merge branch 'stable'

6 years agoImprove gss debug printing of status_string.
Kevin McCarthy [Sat, 14 Apr 2018 03:39:35 +0000 (20:39 -0700)]
Improve gss debug printing of status_string.

Commit f52ee2f7 ensured the debug strings were properly '\0'
terminated.  However, it did not prevent the strncpy from reading past
the end of the status_string.value data; it simply capped it
afterwards.  Improve the code so it only reads up to
status_string.length without overwriting the buffer.

6 years agoMerge branch 'stable'
Kevin McCarthy [Sat, 14 Apr 2018 02:17:24 +0000 (19:17 -0700)]
Merge branch 'stable'