diff options
author | Werner Koch <[email protected]> | 2015-10-20 15:32:23 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2015-10-20 15:32:23 +0000 |
commit | 734c61dc9d4915605816803182c9adcc1594e008 (patch) | |
tree | ffc41ebe8bbc43f131ccf78708d2ca24388a7f31 /g10/trustdb.c | |
parent | gpg: Don't die immediately if the TOFU DB is locked. (diff) | |
download | gnupg-734c61dc9d4915605816803182c9adcc1594e008.tar.gz gnupg-734c61dc9d4915605816803182c9adcc1594e008.zip |
build: Allow building without SQLlite support.
* configure.ac: Add option --dsiable-tofu and --disable-sqlite.
(NEED_SQLITE_VERSION): New var.
(USE_TOFU): New ac_define and am_conditional.
* autogen.sh (build-w32): Add PKG_CONFIG_LIBDIR to configure so that
pkg-config find the correct .pc file.
* g10/Makefile.am (tofu_source): New. Build only if enabled.
* g10/gpg.c (parse_trust_model)[!USE_TOFU]: Disable tofu models.
(parse_tofu_policy)[!USE_TOFU]: Disable all.
(parse_tofu_db_format)[!USE_TOFU]: Disable all.
(main) <aTOFUPolicy>[!USE_TOFU]: Skip.
* g10/keyedit.c (show_key_with_all_names_colon)[!USE_TOFU]: Do not
call tofu functions.
* g10/keylist.c (list_keyblock_colon)[!USE_TOFU]: Ditto.
* g10/trustdb.c (tdb_get_validity_core)[!USE_TOFU]: Skip tofu
processing.
--
This allows to build a minimal version of GnuPG. It is also currently
required to build for Windows.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to '')
-rw-r--r-- | g10/trustdb.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/g10/trustdb.c b/g10/trustdb.c index f58051a75..cadc7e96b 100644 --- a/g10/trustdb.c +++ b/g10/trustdb.c @@ -1001,6 +1001,7 @@ tdb_get_validity_core (PKT_public_key *pk, PKT_user_id *uid, goto leave; } +#ifdef USE_TOFU if (opt.trust_model == TM_TOFU || opt.trust_model == TM_TOFU_PGP) { kbnode_t user_id_node = NULL; /* Silence -Wmaybe-uninitialized. */ @@ -1078,6 +1079,7 @@ tdb_get_validity_core (PKT_public_key *pk, PKT_user_id *uid, break; } } +#endif /*USE_TOFU*/ if (opt.trust_model == TM_TOFU_PGP || opt.trust_model == TM_CLASSIC @@ -1137,7 +1139,18 @@ tdb_get_validity_core (PKT_public_key *pk, PKT_user_id *uid, } leave: +#ifdef USE_TOFU validity = tofu_wot_trust_combine (tofu_validity, validity); +#else /*!USE_TOFU*/ + validity &= TRUST_MASK; + + if (validity == TRUST_NEVER) + /* TRUST_NEVER trumps everything else. */ + validity |= TRUST_NEVER; + if (validity == TRUST_EXPIRED) + /* TRUST_EXPIRED trumps everything but TRUST_NEVER. */ + validity |= TRUST_EXPIRED; +#endif /*!USE_TOFU*/ if (opt.trust_model != TM_TOFU && pending_check_trustdb) |