diff options
author | Daniel Kahn Gillmor <dkg@fifthhorseman.net> | 2017-10-20 22:25:48 -0400 |
---|---|---|
committer | David Bremner <david@tethera.net> | 2017-10-21 19:58:52 -0300 |
commit | 81168917447a582aee186fc0edc09f5277ce565d (patch) | |
tree | 429ddec5b9f6e0a4928e47d4a657407f5954c559 /notmuch-reindex.c | |
parent | c5356b9ed56e42d36ca18206155b62c94cfbd79d (diff) |
cli/reindex: add --try-decrypt=(true|false)
Enable override of the index.try_decrypt setting on a per-run basis
when invoking "notmuch reindex". This allows the possibility of (for
example) an emacs keybinding that adds the cleartext of the currently
shown decrypted message to the index, making it searchable in the
future.
It also enables one-time indexing of all messages matching some query,
like so:
notmuch reindex tag:encrypted and\
not property:index.decryption=success and\
from:alice@example.org
We also update the documentation and tab completion, and add a few
more tests.
Diffstat (limited to 'notmuch-reindex.c')
-rw-r--r-- | notmuch-reindex.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/notmuch-reindex.c b/notmuch-reindex.c index 57ff5904..5d702510 100644 --- a/notmuch-reindex.c +++ b/notmuch-reindex.c @@ -89,7 +89,7 @@ notmuch_reindex_command (notmuch_config_t *config, int argc, char *argv[]) struct sigaction action; int opt_index; int ret; - notmuch_indexopts_t *indexopts = NULL; + notmuch_status_t status; /* Set up our handler for SIGINT */ memset (&action, 0, sizeof (struct sigaction)); @@ -99,6 +99,7 @@ notmuch_reindex_command (notmuch_config_t *config, int argc, char *argv[]) sigaction (SIGINT, &action, NULL); notmuch_opt_desc_t options[] = { + { .opt_inherit = notmuch_shared_indexing_options }, { .opt_inherit = notmuch_shared_options }, { } }; @@ -115,6 +116,13 @@ notmuch_reindex_command (notmuch_config_t *config, int argc, char *argv[]) notmuch_exit_if_unmatched_db_uuid (notmuch); + status = notmuch_process_shared_indexing_options (notmuch, config); + if (status != NOTMUCH_STATUS_SUCCESS) { + fprintf (stderr, "Error: Failed to process index options. (%s)\n", + notmuch_status_to_string (status)); + return EXIT_FAILURE; + } + query_string = query_string_from_args (config, argc-opt_index, argv+opt_index); if (query_string == NULL) { fprintf (stderr, "Out of memory\n"); @@ -126,7 +134,7 @@ notmuch_reindex_command (notmuch_config_t *config, int argc, char *argv[]) return EXIT_FAILURE; } - ret = reindex_query (notmuch, query_string, indexopts); + ret = reindex_query (notmuch, query_string, indexing_cli_choices.opts); notmuch_database_destroy (notmuch); |