X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=lib%2Findexopts.c;h=ca6bf6c962ccddbe37e595e4c1d630ef8b302bd8;hb=d3964e81ac98825a025a6120c488ebd73de2a281;hp=2f9b841b3c90d210a9e8f35c5da2a26e395dc916;hpb=eb232ee0aba8f031fe4f0cb509682a321d85e06e;p=notmuch diff --git a/lib/indexopts.c b/lib/indexopts.c index 2f9b841b..ca6bf6c9 100644 --- a/lib/indexopts.c +++ b/lib/indexopts.c @@ -21,9 +21,43 @@ #include "notmuch-private.h" notmuch_indexopts_t * -notmuch_database_get_default_indexopts (notmuch_database_t unused (*db)) +notmuch_database_get_default_indexopts (notmuch_database_t *db) { - return NULL; + notmuch_indexopts_t *ret = talloc_zero (db, notmuch_indexopts_t); + if (!ret) + return ret; + + char * decrypt; + notmuch_status_t err = notmuch_database_get_config (db, "index.decrypt", &decrypt); + if (err) + return ret; + + if (decrypt && + ((!(strcasecmp(decrypt, "true"))) || + (!(strcasecmp(decrypt, "yes"))) || + (!(strcasecmp(decrypt, "1"))))) + notmuch_indexopts_set_try_decrypt (ret, true); + + free (decrypt); + return ret; +} + +notmuch_status_t +notmuch_indexopts_set_try_decrypt (notmuch_indexopts_t *indexopts, + notmuch_bool_t try_decrypt) +{ + if (!indexopts) + return NOTMUCH_STATUS_NULL_POINTER; + indexopts->crypto.decrypt = try_decrypt; + return NOTMUCH_STATUS_SUCCESS; +} + +notmuch_bool_t +notmuch_indexopts_get_try_decrypt (const notmuch_indexopts_t *indexopts) +{ + if (!indexopts) + return false; + return indexopts->crypto.decrypt; } void