]>
granicus.if.org Git - neomutt/log
Pietro Cerutti [Thu, 16 May 2019 16:42:05 +0000 (16:42 +0000)]
Remove "next" pointer from struct Address: conversion to TAILQ is complete
Pietro Cerutti [Thu, 16 May 2019 16:34:59 +0000 (16:34 +0000)]
Cleanup Address API: mutt_addrlist_to_(intl|local) -> mutt_addresslist_to_(intl|local)
Pietro Cerutti [Thu, 16 May 2019 15:44:11 +0000 (15:44 +0000)]
Cleanup Address API: mutt_addrlist_dedupe -> mutt_addresslist_dedupe
Pietro Cerutti [Thu, 16 May 2019 15:23:45 +0000 (15:23 +0000)]
Cleanup Address API: unexpose mutt_addr_set_(intl|local)
Pietro Cerutti [Thu, 16 May 2019 15:14:56 +0000 (15:14 +0000)]
Cleanup Address API: mutt_addr_remove_xrefs -> mutt_addresslist_remove_xrefs
Pietro Cerutti [Thu, 16 May 2019 14:52:33 +0000 (14:52 +0000)]
Cleanup Address API: mutt_addr_remove_from_list -> mutt_addresslist_remove
Pietro Cerutti [Thu, 16 May 2019 14:35:04 +0000 (14:35 +0000)]
Cleanup Address API: unexpose mutt_addr_mbox_to_udomain
Pietro Cerutti [Thu, 16 May 2019 14:28:21 +0000 (14:28 +0000)]
Cleanup Address API: unexpose mutt_addr_is_(intl|local)
Pietro Cerutti [Thu, 16 May 2019 14:06:18 +0000 (14:06 +0000)]
Fix match_user
Pietro Cerutti [Thu, 16 May 2019 13:29:38 +0000 (13:29 +0000)]
Fix and refactor mutt_is_list_recipient and mutt_is_subscribed_list_recipient
Pietro Cerutti [Thu, 16 May 2019 13:17:31 +0000 (13:17 +0000)]
Cleanup Address API: mutt_addr_write
Pietro Cerutti [Thu, 16 May 2019 12:07:25 +0000 (12:07 +0000)]
Cleanup Address API: mutt_addresslist_qualify
Pietro Cerutti [Thu, 16 May 2019 11:57:25 +0000 (11:57 +0000)]
Cleanup Address API: parse and free
Pietro Cerutti [Thu, 16 May 2019 11:30:10 +0000 (11:30 +0000)]
Cleanup Address API: mutt_addr_cmp_strict -> mutt_addresslist_equal
Pietro Cerutti [Thu, 16 May 2019 11:08:39 +0000 (11:08 +0000)]
Fix recursive alias lookup
Pietro Cerutti [Thu, 16 May 2019 09:23:46 +0000 (09:23 +0000)]
Fix variadic function
Pietro Cerutti [Wed, 15 May 2019 16:17:07 +0000 (16:17 +0000)]
Convert Envelope addresses to AddressList
Pietro Cerutti [Tue, 14 May 2019 11:53:21 +0000 (11:53 +0000)]
Convert Alias to use AddressList
Pietro Cerutti [Mon, 13 May 2019 13:14:57 +0000 (13:14 +0000)]
Convert mutt_addr_remove_from_list and mutt_addr_remove_xrefs API to AddressList
Pietro Cerutti [Mon, 13 May 2019 12:14:20 +0000 (12:14 +0000)]
Use AddressList in mutt_addrlist_to_intl and mutt_addrlist_to_local
Pietro Cerutti [Mon, 13 May 2019 12:13:56 +0000 (12:13 +0000)]
Use AddressList in mutt_addr_write
Pietro Cerutti [Mon, 13 May 2019 12:13:22 +0000 (12:13 +0000)]
Tidy Address free'ing functions
Pietro Cerutti [Mon, 13 May 2019 12:12:07 +0000 (12:12 +0000)]
Use AddressList in mutt_addr_remove_xrefs
Pietro Cerutti [Mon, 13 May 2019 12:26:06 +0000 (12:26 +0000)]
Use AddressList in mutt_addr_search
Pietro Cerutti [Mon, 13 May 2019 12:25:48 +0000 (12:25 +0000)]
Use AddressList in mutt_addr_has_recips
Pietro Cerutti [Mon, 13 May 2019 12:25:29 +0000 (12:25 +0000)]
Use AddressList in mutt_addr_cmp_strict
Pietro Cerutti [Mon, 13 May 2019 12:25:00 +0000 (12:25 +0000)]
Use AddressList in mutt_addr_append
Pietro Cerutti [Mon, 13 May 2019 12:24:39 +0000 (12:24 +0000)]
Use AddressList in mutt_addr_qualify
Pietro Cerutti [Mon, 13 May 2019 12:24:15 +0000 (12:24 +0000)]
Use AddressList in mutt_addr_remove_from_list
Pietro Cerutti [Mon, 13 May 2019 12:22:34 +0000 (12:22 +0000)]
Use AddressList in mutt_addr_free, implement mutt_addresslist_free_one
Pietro Cerutti [Mon, 13 May 2019 12:21:09 +0000 (12:21 +0000)]
Use AddressList in mutt_addr_copy_list
Pietro Cerutti [Mon, 13 May 2019 12:23:52 +0000 (12:23 +0000)]
Implement mutt_addresslist_new
Pietro Cerutti [Mon, 13 May 2019 12:18:11 +0000 (12:18 +0000)]
Const'ify parameter to mutt_addr_copy
Pietro Cerutti [Fri, 10 May 2019 16:21:57 +0000 (16:21 +0000)]
Use AddressList in mutt_addr_parse_list
Pietro Cerutti [Mon, 13 May 2019 08:44:11 +0000 (08:44 +0000)]
Use AddressList in mutt_addrlist_dedupe
Pietro Cerutti [Fri, 10 May 2019 15:52:53 +0000 (15:52 +0000)]
Add functions to convert to/from Address/AddressList
Pietro Cerutti [Fri, 10 May 2019 15:51:13 +0000 (15:51 +0000)]
Define an AddressList structure using TAILQ
Andres Freund [Tue, 21 May 2019 23:50:54 +0000 (16:50 -0700)]
Avoid redundant sort in entire-thread.
918885f added, indirectly, a mutt_sort_headers() call to
nm_read_entire_thread() (via mutt_mailbox_changed() ->
ctx_mailbox_changed() -> ctx_update()), but didn't remove the sort
after nm_read_entire_thread() in mutt_index_menu().
Remove the now superfluous sort.
Andres Freund [Tue, 21 May 2019 23:13:10 +0000 (16:13 -0700)]
entire-thread: determine current position before resorting.
Previously oldcur was determined after nm_read_entire_thread(),
leading to entire-thread unintentionally jumping to the first message
in the thread.
Before
918885f32db41 that used to work, because mutt_sort_headers()
wasn't called from within nm_read_entire_thread().
Fix by moving determination of pre nm_read_entire_thread() count a few
lines up. Also reuse existing oldcount variable, rather than
'oc' (which could also be oldcur).
Fixes: #1714
Andres Freund [Tue, 21 May 2019 13:29:07 +0000 (14:29 +0100)]
fix: reverse_name / alternates
Fixes: #1581
Richard Russon [Thu, 16 May 2019 14:43:07 +0000 (15:43 +0100)]
merge: minor tidying
* clang-format
* readme: split out contributors
* rename fd parameters
* increase buffer sizes to avoid truncation
* test: add missing #include guards
* unify char buffer inititialisation
* boolify: locals, params, args
* rename mailbox functions
* light tidying
* don't check for empty config strings
* rename struct Event and Mailbox.notify
* move el_free() to email
* tidy maildir_mbox_check()
* config: rename listener to observer
* tidy ternary operators
* tidy char pointers
* initialise pointers
* tidy pointer definitions
Richard Russon [Thu, 16 May 2019 14:18:28 +0000 (15:18 +0100)]
tidy pointer definitions
Separate multiple variable definitions which differ in type, e.g.
char buf[16], *p = NULL, **pp = NULL;
becomes
char buf[16];
char *p = NULL;
char **pp = NULL;
Richard Russon [Thu, 16 May 2019 13:53:31 +0000 (14:53 +0100)]
initialise pointers
Richard Russon [Wed, 15 May 2019 19:01:38 +0000 (20:01 +0100)]
tidy char pointers
Make char-pointer dereferencing more consistent.
Any functions that used both `*ptr` and `ptr[0]` notation have been tidied.
Richard Russon [Wed, 15 May 2019 22:53:37 +0000 (23:53 +0100)]
tidy ternary operators
- insert ()s
- expand checks against 0 or '\0'
Richard Russon [Wed, 15 May 2019 11:25:37 +0000 (12:25 +0100)]
config: rename listener to observer
This fits in with the GoF's subject/observer pattern.
Richard Russon [Wed, 15 May 2019 10:52:12 +0000 (11:52 +0100)]
tidy maildir_mbox_check()
Factor out a common pointer.
Richard Russon [Wed, 15 May 2019 10:50:02 +0000 (11:50 +0100)]
move el_free() to email
This function will be used elsewhere, soon.
Richard Russon [Tue, 12 Mar 2019 16:01:15 +0000 (16:01 +0000)]
rename struct Event and Mailbox.notify
Rename things out of the way of future work.
These names will be used by a general notifications system.
Richard Russon [Thu, 16 May 2019 11:55:40 +0000 (12:55 +0100)]
don't check for empty config strings
The config system stores empty strings as NULL.
Config variables must not be set directly, but using the config system
(this gives us validation and notifications).
Richard Russon [Tue, 30 Apr 2019 12:41:04 +0000 (13:41 +0100)]
light tidying
Lots of minor fixes, many inspired by cppcheck.
- reduce scope of variables
- return early
- NULL pointers after free
- fix typos
- correct retval type
Richard Russon [Wed, 15 May 2019 23:31:46 +0000 (00:31 +0100)]
rename mailbox functions
Fix mailbox function naming for consistency
Richard Russon [Sun, 12 May 2019 22:40:08 +0000 (23:40 +0100)]
boolify: locals, params, args
Richard Russon [Wed, 15 May 2019 21:52:26 +0000 (22:52 +0100)]
unify char buffer inititialisation
For consistency, use the format:
`char buf[16] = { 0 };`
Richard Russon [Sun, 12 May 2019 22:44:19 +0000 (23:44 +0100)]
test: add missing #include guards
Richard Russon [Wed, 15 May 2019 20:24:41 +0000 (21:24 +0100)]
increase buffer sizes to avoid truncation
This is just to hide a compiler warning.
Richard Russon [Wed, 15 May 2019 19:26:29 +0000 (20:26 +0100)]
rename fd parameters
Rename parameters to match other functions.
Richard Russon [Thu, 11 Apr 2019 10:38:08 +0000 (11:38 +0100)]
readme: split out contributors
Richard Russon [Thu, 16 May 2019 12:54:13 +0000 (13:54 +0100)]
clang-format
Richard Russon [Thu, 16 May 2019 11:14:49 +0000 (12:14 +0100)]
merge: split up Buffer and the Pool
* split out pool
* don't use pool in libraries
* test: tidy config tests
Richard Russon [Thu, 16 May 2019 00:10:46 +0000 (01:10 +0100)]
test: tidy config tests
The config tests don't use the buffer pool any more.
Richard Russon [Tue, 14 May 2019 18:09:51 +0000 (19:09 +0100)]
don't use pool in libraries
Richard Russon [Tue, 14 May 2019 18:07:58 +0000 (19:07 +0100)]
split out pool
Richard Russon [Tue, 14 May 2019 13:49:24 +0000 (14:49 +0100)]
fix leaks in mutt_pattern_comp()
Richard Russon [Mon, 13 May 2019 21:54:23 +0000 (22:54 +0100)]
test: fix leaks
Richard Russon [Thu, 16 May 2019 10:29:49 +0000 (11:29 +0100)]
merge: upstream fixes
* Fix sample neomuttrc to use better quoting practices.
* Add a "backticks in double quotes" example to the manual.
* Avoid undefined behaviour on huge integer in a RFC2231 header
* sync pgp_gpgme_invoke_import()
Richard Russon [Thu, 16 May 2019 10:28:20 +0000 (11:28 +0100)]
sync pgp_gpgme_invoke_import()
Vincent Lefevre [Wed, 15 May 2019 11:05:09 +0000 (13:05 +0200)]
Avoid undefined behaviour on huge integer in a RFC2231 header
The atoi() function was called on the index, which can potentially
be huge in an invalid message and can yield undefined behavior. The
mutt_atoi() function is now used for error detection.
Co-authored-by: Richard Russon <rich@flatcap.org>
Kevin McCarthy [Tue, 14 May 2019 16:26:38 +0000 (09:26 -0700)]
Add a "backticks in double quotes" example to the manual.
Co-authored-by: Richard Russon <rich@flatcap.org>
Kevin McCarthy [Tue, 14 May 2019 16:00:46 +0000 (09:00 -0700)]
Fix sample neomuttrc to use better quoting practices.
Use single quotes in the password encryption example.
For password decryption, put the backquotes inside double quotes to
avoid special characters being re-interpreted.
Co-authored-by: Richard Russon <rich@flatcap.org>
Pietro Cerutti [Mon, 13 May 2019 11:42:37 +0000 (11:42 +0000)]
Do not cache a compiled regex to avoid leaks
glibc's implementation of the regex engine is a DFA which creates nodes
on the fly under the regex_t object. This will cause leakes if we keep
the compiled regular expression around, as it was the case before.
See also https://sourceware.org/bugzilla/show_bug.cgi?id=12567
Richard Russon [Mon, 13 May 2019 09:44:32 +0000 (10:44 +0100)]
fix: counting of content-lines header
Richard Russon [Sun, 12 May 2019 22:37:21 +0000 (23:37 +0100)]
merge: fix most leaks in test code
* check library parameters more carefully
* test: fix leaks in config tests
* test: fix leaks in library tests
* clang-format test code
Richard Russon [Sun, 12 May 2019 22:29:13 +0000 (23:29 +0100)]
clang-format test code
Richard Russon [Sun, 12 May 2019 22:25:28 +0000 (23:25 +0100)]
test: fix leaks in library tests
Richard Russon [Sun, 12 May 2019 22:21:30 +0000 (23:21 +0100)]
test: fix leaks in config tests
Richard Russon [Sun, 12 May 2019 22:18:41 +0000 (23:18 +0100)]
check library parameters more carefully
Some test cases were causing library code to be run with invalid
parameters. Reject these cases.
Mehdi Abaakouk [Sun, 12 May 2019 19:34:42 +0000 (21:34 +0200)]
Fix next-unread-mailbox
e4133e5cd2 have introduced a small regression.
next-unread-mailbox does not automatically open the mailbox.
This change fixes it.
Richard Russon [Sat, 11 May 2019 10:05:18 +0000 (11:05 +0100)]
merge: update translations
* Update lt_LT translation
* update German translation
* fix command string
* fix 'too few/many' translations
* tidy OAUTHBEARER error message
* Update Ukrainian translation
* Update Russian translation
* Update Danish translation
* sync translations
Richard Russon [Sat, 11 May 2019 10:05:11 +0000 (11:05 +0100)]
sync translations
Morten Bo Johansen [Fri, 10 May 2019 20:18:46 +0000 (13:18 -0700)]
Update Danish translation
Co-authored-by: Richard Russon <rich@flatcap.org>
Vsevolod Volkov [Fri, 10 May 2019 18:09:45 +0000 (11:09 -0700)]
Update Russian translation
Co-authored-by: Richard Russon <rich@flatcap.org>
Vsevolod Volkov [Fri, 10 May 2019 18:07:41 +0000 (11:07 -0700)]
Update Ukrainian translation
Co-authored-by: Richard Russon <rich@flatcap.org>
Richard Russon [Sat, 11 May 2019 09:12:30 +0000 (10:12 +0100)]
tidy OAUTHBEARER error message
Richard Russon [Sat, 11 May 2019 09:07:13 +0000 (10:07 +0100)]
fix 'too few/many' translations
Richard Russon [Fri, 10 May 2019 22:31:31 +0000 (23:31 +0100)]
fix command string
Richard Russon [Fri, 10 May 2019 22:16:28 +0000 (23:16 +0100)]
update German translation
Marius Gedminas [Thu, 9 May 2019 11:31:56 +0000 (14:31 +0300)]
Update lt_LT translation
Fixes 6 fuzzy strings.
Austin Ray [Fri, 10 May 2019 00:05:22 +0000 (20:05 -0400)]
feat: use mailbox description for spoolfile
'spoolfile' is limited to mailboxes paths so if one wants to use a
'named-mailboxes' or 'virtual-mailboxes' as the spoolfile, its path must
be duplicated in the 'spoolfile' assignment. 'virtual-mailboxes' has a
helper variable, 'virtual_spoolfile', for selecting the first
'virtual-mailboxes' entry as the spoolfile.
This commit allows one to use a mailbox description for the 'spoolfile,
which removes the need to duplicate a 'named-mailboxes' or
'virtual-mailboxes' path and makes 'virtual_spoolfile' defunct. The
configuration syntax is now more consistent.
It is important to note that mailbox descriptions are preferred to
paths.
To reflect the change, documentation was updated:
- Add note to 'spoolfile' about using a string to specify a
'named-mailboxes' or 'virtual-mailboxes' description.
- Add a note to the 'virtual_spoolfile' documentation saying that it is no
longer necessary since 'spoolfile' supports descriptions now.
Richard Russon [Fri, 10 May 2019 14:16:58 +0000 (15:16 +0100)]
merge: upstream fixes
* Add a test for NULL parameter attribute too
* Add a quick-starter config section to the manual.
* Add sample starter muttrc to contrib.
* Change sample muttrc path to match other manual references.
* Add note about %r for the pgp_list_*_command vars.
Kevin McCarthy [Thu, 9 May 2019 20:48:44 +0000 (13:48 -0700)]
Add note about %r for the pgp_list_*_command vars.
In this case %r is the list of search strings.
Kevin McCarthy [Thu, 9 May 2019 20:25:25 +0000 (13:25 -0700)]
Change sample muttrc path to match other manual references.
The other parts of the manual refer to /usr/local/share/doc in their
examples. For consistency, change the starter muttrc and manual entry
to do the same.
In the future, we may wish to have a config variable instead, so users
don't have to worry about system vs locally installed paths when
sourcing the gpg.rc, for instance.
Kevin McCarthy [Thu, 9 May 2019 02:28:21 +0000 (19:28 -0700)]
Add sample starter muttrc to contrib.
Add a mini-section with a link to the manual instead, under
"Configuration".
Kevin McCarthy [Mon, 6 May 2019 22:35:38 +0000 (15:35 -0700)]
Add a quick-starter config section to the manual.
Co-authored-by: Richard Russon <rich@flatcap.org>
Kevin McCarthy [Mon, 6 May 2019 19:37:04 +0000 (12:37 -0700)]
Add a test for NULL parameter attribute too
Just to be sure we don't have any issues with the new continuation
code. The mutt_set_parameter() code doesn't actively prevent a null
attribute.
Co-authored-by: Richard Russon <rich@flatcap.org>
Richard Russon [Fri, 10 May 2019 13:20:52 +0000 (14:20 +0100)]
merge: fixes for bugs raised by automated testing
* check value of 'Content-Length' more carefully
* Replace atoi() to mutt_str_atoi()
* fix leaks during header parsing
Richard Russon [Thu, 9 May 2019 19:16:58 +0000 (20:16 +0100)]
fix leaks during header parsing
Credit to OSS-Fuzz
Richard Russon [Thu, 9 May 2019 15:23:24 +0000 (16:23 +0100)]
Replace atoi() to mutt_str_atoi()
mutt_str_atoi() has error checking.
Richard Russon [Thu, 9 May 2019 15:17:10 +0000 (16:17 +0100)]
check value of 'Content-Length' more carefully
Replace `atol()` with `mutt_str_atol()` which has error checking.
Cap the maximum size to 1GiB. If we exceed this your email to TOO BIG!
Richard Russon [Thu, 9 May 2019 00:07:45 +0000 (01:07 +0100)]
fix: config_dump()
Move a variable test so that config_dump() works again.
Fixes: #1705