Age | Commit message (Collapse) | Author |
|
The exact-address compile-time option takes an exact copy of an
address when it is parsed, and prints that out when outputting the
address. The idea is to preserve older "user@host (Name)" syntax.
Unfortunately, when code tries to "update" the personal/name field, it
needs to clear the exact-address copy for it to have any effect.
An object-oriented design encapsulating the setting would help prevent
this problem. It might be desirable to create a C function instead,
but callers would have to remember it, and such a thing isn't common
in the Mutt codebase.
Another patch (I'm still debating applying) changes the address parser
to discard the exact-address copy when it exactly matches the
mailbox. However, that still won't fix every case (and it makes the
parser even more difficult to follow.)
So this commit (to stable) takes the straightforward approach.
It fixes bugs in:
* Alias creation. The "personal name" prompt was ignored.
* Autocrypt initialization from address setting with $realname.
* $pgp_getkeys_command handling.
* Query menu results.
* "unset $reverse_realname" handling.
* $from handling of $realname.
* Bounce Resent-From handling of $realname.
|
|
enter_filename() api:
* Rename enter_fname() to _enter_fname()
* Rename mutt_buffer_enter_mailbox() to mutt_enter_mailbox()
* Rename mutt_buffer_enter_filenames() to mutt_enter_filenames()
* Remove 'multiple' and 'fname buffer' parameters from
mutt_enter_filenames(). Create a temp buffer, and enable multiple
automatically. This removes the possibility of mistakenly looking
at an unpopulated 'fname' parameter for the result.
* Create mutt_enter_filename(). This isn't used currently, but it
makes sense to have a "single filename" api already set up with
correct parameters.
get_field() api:
* Rename _mutt_buffer_get_field() to a static _get_field() function.
* Remove _mutt_get_field() and make mutt_get_field() an actual
function.
* Remove the multiple/files/numfiles parameters, since this
should only be done through mutt_enter_filenames().
_mutt_enter_string() api:
Add comments to mutt_enter_string() and _mutt_enter_string() headers.
Noting that they should generally not be called directly. List the
functions that should be used inside Mutt. Note the behavior of the
multiple parameter.
|
|
If the account doesn't exist, or isn't enabled, display a message back
in the compose menu.
|
|
Create mutt_buffer_enter_mailbox(), which turns on the MUTT_MAILBOX
flag (renamed from MUTT_EFILE). This uses the mailbox history file
category, and turns on MUTT_SEL_FOLDER in the select_file browser.
Add a do_incoming paramter and a new separate flag MUTT_INCOMING, so
that buffy-completion can be enabled optionally for mailboxes. It
only makes sense for the change-folder operation, so disable it in
other contexts (such as saving/copying a message, prompting for an Fcc
mailbox, or an autocrypt scan mailbox).
Change saving/copying a message to use the mailbox function, so that
it shares the history file with other mailbox operations. It would
previously use the "file" history category.
Create mutt_buffer_enter_filenames() to replace the enter_fname()
prompt for files.
Since nothing directly uses the _mutt_buffer_enter_fname() function
anymore, rename and make it static.
|
|
|
|
All invocations pass a pointer parameter. Perhaps at one point this
was like the init.h combined usage. But as with that, using an
unsigned long is incorrect, and we've been lucky to get away with it.
Since we don't need a union, just change it to void * to properly size
the parameter.
|
|
This will hold the send context, so we may as well pull the prototypes
into the header file too.
|
|
The auto-clearing code was added in commit 01bc088c, for autocrypt
initial prompting. It removed having to keep track of every place a
browser or other menu might be displayed and having to remember to
clear it out.
However, clearing when mutt exits is a change of behavior for those
who have turned off alternative screens.
|
|
Make the abbreviation a bit clearer, that it means Encryption instead
of Encoding.
Thanks to Morten Bo Johansen for the suggestion.
|
|
Most of these were already commented. Change a few of them to
a format gcc will recognize. In the future, we'll want to change to
whatever is standardized.
|
|
|
|
The muttrc can push events into the macro buffer, with the assumption
that mailbox will be opened next. This will interfere with the
prompts uses during first run. The only issue is that macros won't
work inside the folder browser, if invoked.
|
|
This removes the need to manually clear the screen during pre-menu
operations, such as autocrypt first run initialization.
|
|
This is useful when adding accounts, or for users who want to use an
existing key from the keyring during initial account creation.
|
|
|
|
The scanner will disable the header cache, allowing scanning all
messages in the mailbox.
|
|
|
|
Provide ability to create, delete, and toggle the prefer-encrypt and
enabled flag for an account.
Hook into the index via 'A' <autocrypt-acct-menu>.
|
|
Unlike get and insert, there is no need for an addres parameter that
needs to be normalized, since the address is already in the peer
object.
|
|
Add to ui recommendation, keylist generator, and autocrypt header
writing routines.
|
|
|
|
|
|
|
|
Don't set an empty peer.gossip_keydata with a value that matches the
current peer.keydata. This just wastes space.
|
|
|
|
Change crypt_get_keys() to query autocrypt.
When oppenc_mode is set, we still query the original keyring
regardless, because the compose menu can still run oppenc even if
autocrypt is on.
Since mutt_autocrypt_ui_recommendation() checks each key as part of
making the recommendation, add a keylist parameter and use that
function.
Add gpgme changes to use the autocrypt context for encryption.
Postpone work:
* Change mutt_protect() to have a postpone parameter. Remove the
manual toggling of the SIGN bit outside the call when postponing.
* Since autocrypt doesn't set the SIGN bit, this allows us to turn off
signing inside mutt_protect() for both normal and autocrypt mode.
* Set the autocrypt postpone key in AutocryptDefaultKey.
Write autocrypt and gossip headers in outgoing emails.
|
|
Remove the hardcoded HDR_ATTACH offset calcuation, and add an explicit
enum for the "-- Attachments" line to make loops and padding array
sizes easier.
Add security and recommendataion fields on the line.
Add mutt_autocrypt_ui_recommendation, following the autocrypt spec
guidelines.
|
|
|
|
This makes reusing the code in autocrypt.c easier.
|
|
|
|
The documentation suggests the SQLITE_PREPARE_PERSISTENT flag is
helpful for long-lived prepared statements, and Mutt is using.
|
|
Create/update peer database accounts and gpg keys based on the headers.
|
|
Generate gpg key and add account record to the database.
|
|
Add a basic init function.
Bump up the required gpgme version to 1.8.0 if autocrypt is enabled.
|
|
Add mutt_mkdir() library function supporting recursive mkdir.
|
|
|