X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=lib%2Findexopts.c;h=b78a57b6840996d524e1cdcc9fade0609876f5d2;hb=a59ef7d02cb229c2ec3569024918024003568aea;hp=0f65b97c9d1edbf8536a77863b23eab2e0d5b39c;hpb=b62045a18680720b407173140d79b459e45e6039;p=notmuch diff --git a/lib/indexopts.c b/lib/indexopts.c index 0f65b97c..b78a57b6 100644 --- a/lib/indexopts.c +++ b/lib/indexopts.c @@ -26,25 +26,33 @@ notmuch_database_get_default_indexopts (notmuch_database_t *db) notmuch_indexopts_t *ret = talloc_zero (db, notmuch_indexopts_t); if (!ret) return ret; + ret->crypto.decrypt = NOTMUCH_DECRYPT_AUTO; - char * decrypt; - notmuch_status_t err = notmuch_database_get_config (db, "index.decrypt", &decrypt); + char * decrypt_policy; + notmuch_status_t err = notmuch_database_get_config (db, "index.decrypt", &decrypt_policy); if (err) return ret; - if (decrypt && - ((!(strcasecmp(decrypt, "true"))) || - (!(strcasecmp(decrypt, "yes"))) || - (!(strcasecmp(decrypt, "1"))))) - notmuch_indexopts_set_decrypt_policy (ret, true); + if (decrypt_policy) { + if ((!(strcasecmp(decrypt_policy, "true"))) || + (!(strcasecmp(decrypt_policy, "yes"))) || + (!(strcasecmp(decrypt_policy, "1")))) + notmuch_indexopts_set_decrypt_policy (ret, NOTMUCH_DECRYPT_TRUE); + else if ((!(strcasecmp(decrypt_policy, "false"))) || + (!(strcasecmp(decrypt_policy, "no"))) || + (!(strcasecmp(decrypt_policy, "0")))) + notmuch_indexopts_set_decrypt_policy (ret, NOTMUCH_DECRYPT_FALSE); + else if (!strcasecmp(decrypt_policy, "nostash")) + notmuch_indexopts_set_decrypt_policy (ret, NOTMUCH_DECRYPT_NOSTASH); + } - free (decrypt); + free (decrypt_policy); return ret; } notmuch_status_t notmuch_indexopts_set_decrypt_policy (notmuch_indexopts_t *indexopts, - notmuch_bool_t decrypt_policy) + notmuch_decryption_policy_t decrypt_policy) { if (!indexopts) return NOTMUCH_STATUS_NULL_POINTER; @@ -52,7 +60,7 @@ notmuch_indexopts_set_decrypt_policy (notmuch_indexopts_t *indexopts, return NOTMUCH_STATUS_SUCCESS; } -notmuch_bool_t +notmuch_decryption_policy_t notmuch_indexopts_get_decrypt_policy (const notmuch_indexopts_t *indexopts) { if (!indexopts)