summaryrefslogtreecommitdiffstats
path: root/g10 (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* gpg: Avoid malloc failure due to no key signaturesWerner Koch2016-09-191-8/+19
| | | | | | | | | * g10/keyedit.c (check_all_keysigs): Check early for no key signatures. Use xtrycalloc. -- GnuPG-bug-id: 2690 Signed-off-by: Werner Koch <wk@gnupg.org>
* Fix more spellingDaniel Kahn Gillmor2016-09-176-7/+7
| | | | | | | | | | | | | | | | | | | * NEWS, acinclude.m4, agent/command-ssh.c, agent/command.c, agent/gpg-agent.c, agent/keyformat.txt, agent/protect-tool.c, common/asshelp.c, common/b64enc.c, common/recsel.c, doc/DETAILS, doc/HACKING, doc/Notes, doc/TRANSLATE, doc/dirmngr.texi, doc/faq.org, doc/gpg-agent.texi, doc/gpg.texi, doc/gpgsm.texi, doc/instguide.texi, g10/armor.c, g10/gpg.c, g10/keyedit.c, g10/mainproc.c, g10/pkclist.c, g10/tofu.c, g13/sh-cmd.c, g13/sh-dmcrypt.c, kbx/keybox-init.c, m4/pkg.m4, sm/call-dirmngr.c, sm/gpgsm.c, tests/Makefile.am, tests/gpgscm/Manual.txt, tests/gpgscm/scheme.c, tests/openpgp/gpgv-forged-keyring.scm, tests/openpgp/multisig.test, tests/openpgp/verify.scm, tests/pkits/README, tools/applygnupgdefaults, tools/gpg-connect-agent.c, tools/mime-maker.c, tools/mime-parser.c: minor spelling cleanup. Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
* g10: On failure, propagate the return code.Neal H. Walfield2016-09-161-0/+1
| | | | | | | * g10/tofu.c (tofu_register_encryption): If get_trust fails, set RC. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Improve some comments and a string.Neal H. Walfield2016-09-161-9/+13
| | | | | -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Don't ignore failure. On failure, rollback.Neal H. Walfield2016-09-161-3/+15
| | | | | | | | * g10/tofu.c (tofu_set_policy): If record_binding fails, fail. If the function fails, rollback the transaction. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Load the key block if the supplied user id list is NULL.Neal H. Walfield2016-09-161-1/+1
| | | | | | | | * g10/tofu.c (tofu_register_encryption): Load the key block if USER_ID_LIST is NULL. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Use the accessor functions for accessing and comparing key idsNeal H. Walfield2016-09-161-7/+8
| | | | | | | | | | * g10/tofu.c (get_trust): Use the pk_main_keyid accessor function. (tofu_register_signature): Likewise. (tofu_register_encryption): Likewise. (tofu_set_policy): Likewise and also use pk_keyid and keyid_cmp. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Add missing header.Justus Winter2016-09-151-0/+1
| | | | | | * g10/trustdb.c: Include 'mbox-util.h'. Signed-off-by: Justus Winter <justus@g10code.com>
* g10: Only consider bindings matching the signer's user id.Neal H. Walfield2016-09-151-11/+29
| | | | | | | | * g10/trustdb.c (tdb_get_validity_core): If the signer's user id subpacket is present, only consider matching user ids. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Don't include the signature when printing a binding's validity.Neal H. Walfield2016-09-151-2/+2
| | | | | | | | * g10/mainproc.c (check_sig_and_print): When printing information about a binding don't include the current signature. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Fix whitespace.Neal H. Walfield2016-09-141-1/+1
| | | | | | | * g10/tofu.c (show_statistics): Fix whitespace. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Correctly compute the euclidean distance.Neal H. Walfield2016-09-141-8/+10
| | | | | | | | | * g10/tofu.c (write_stats_status): Correctly compute the euclidean distance. (show_statistics): Likewise. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Change the default TOFU policy for UTKs to good.Neal H. Walfield2016-09-141-2/+2
| | | | | | | | * g10/tofu.c (get_trust): Change the default TOFU policy for UTKs to good. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Add missing static qualifier.Neal H. Walfield2016-09-141-1/+1
| | | | | | | * g10/tofu.c (cross_sigs): Add missing static qualifier. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Default to the "good" TOFU policy for keys signed by a UTK.Neal H. Walfield2016-09-141-0/+97
| | | | | | | | | * g10/tofu.c (signed_by_utk): New function. (get_trust): If a key is signed by an ultimately trusted key, then set any bindings to good. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* gpg: Emit a new error status line in --quick-adduid.Werner Koch2016-09-141-1/+4
| | | | | | | * g10/keyedit.c (menu_adduid): Emit an ERROR status for an existsing user id. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Allow use of "default" algo for--quick-addkey.Werner Koch2016-09-141-0/+3
| | | | | | | * g10/keygen.c (quick_generate_keypair): Write a status error. (parse_algo_usage_expire): Set a default curve. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Improve usability of --quick-gen-key.Werner Koch2016-09-132-24/+64
| | | | | | | | | | | | | | | * g10/keygen.c (FUTURE_STD_): New constants. (parse_expire_string): Handle special keywords. (parse_algo_usage_expire): Allow "future-default". Simplify call to parse_expire_string. (quick_generate_keypair): Always allow an expiration date. Replace former "test-default" by "future-default". -- Using an expiration date is pretty common, thus we now allow the creation of a standard key with expiration date. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Avoid mixing up status and colon line output.Werner Koch2016-09-121-36/+47
| | | | | | | | | | | | | | * g10/keylist.c (list_keyblock_colon): Avoid calling functions which trigger a status line output before having printed a LF. -- Status lines like KEY_CONSIDERED and KEYEPXIRED were messing up the colons output, like here: pub:[GNUPG:] KEY_CONSIDERED 94A5C9A03C2FE5CA3B095D8E1FDF723CF46[...] Reported-by: Andreas Stieger <astieger@suse.com> Signed-off-by: Werner Koch <wk@gnupg.org>
* Fix symbol conflict.Ben Kibbey2016-09-101-20/+20
| | | | | | | | | * g10/gpgcompose.c: Rename struct siginfo to signinfo. -- Fixes android-ndk and OpenIndiana (Solaris) builds. Signed-off-by: Ben Kibbey <bjk@luxsci.net>
* gpg: print fingerprint regardless of keyid-formatDaniel Kahn Gillmor2016-09-091-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * g10/keylist.c (print_fingerprint): use compact format independent of keyid-format; (print_key_line): always print the fingerprint -- The choice of fingerprint display should be independent of the keyid-format. Currently, the representation of the fingerprint changes depending on whether the user has specified --keyid-format to anything besides "none". (this is common, for example, if someone happens to have "keyid-format long" in their gpg.conf for interoperability with older versions of gpg) With this changeset, keyid-format governs only the format of the displayed keyID, while the fingerprint display is governed only by the fingerprint options: [default]:: compact fpr of pubkey only --with-fingerprint:: human-readable form of fpr of pubkey only --with-fingerprint --with-fingerprint:: human-readable form of pubkey and subkey --with-subkey-fingerprint: compact fpr for pubkey and subkeys Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
* gpg: Remove option --yes from gpgvWerner Koch2016-09-081-4/+1
| | | | | | | * g10/gpgv.c (opts): Remove --yes. (main): Always set opt.ANSWER_YES. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Add options --output and --yes to gpgv.Werner Koch2016-09-081-0/+7
| | | | | | | | * g10/gpgv.c (oOutput, oAnswerYes): New. (opts): Add --output and --yes. (main): Implement options. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Make --output work with --verify.Werner Koch2016-09-081-1/+6
| | | | | | * g10/mainproc.c (proc_plaintext): Handle opt.output. Signed-off-by: Werner Koch <wk@gnupg.org>
* g10: Use the time a signature was seen, not the embedded time, for statsNeal H. Walfield2016-09-071-4/+3
| | | | | | | | * g10/tofu.c (ask_about_binding): Use the time that a signature was seen, not allegedly generated, when generating statistics. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Check for a new binding a bit later.Neal H. Walfield2016-09-071-9/+9
| | | | | | | | | * g10/tofu.c (build_conflict_set): Check for the current key after looking for conflicts and removing any '!'. -- Signed-off-by: Neal H. Walfield <neal@g10code.com> Fixes-commit: 1f1f56e6
* g10: Change TOFU code to respect --faked-system-time.Neal H. Walfield2016-09-071-22/+36
| | | | | | | | | | | | | | | * g10/tofu.c (record_binding): New parameter now. Update callers. Don't use SQLite's strftime('%s','now') to get the current time, use NOW. (ask_about_binding): Likewise. (get_trust): New parameter now. Update callers. (show_statistics): Likewise. (tofu_register_signature): Don't use SQLite's strftime('%s','now') to get the current time, use gnupg_get_time(). (tofu_register_encryption): Likewise. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Use the correct conversion function.Neal H. Walfield2016-09-071-8/+8
| | | | | | | | | * g10/tofu.c (show_statistics): Use string_to_ulong, not string_to_long. -- Signed-off-by: Neal H. Walfield <neal@g10code.com> Fixes-commit: 875ac921
* g10: Add missing sqrtu32.h and sqrtu32.c.Neal H. Walfield2016-09-074-5/+260
| | | | | | -- Signed-off-by: Neal H. Walfield <neal@g10code.com> Fixes-commit: 875ac92.
* gpg: Fix format string issues in tofu.Werner Koch2016-09-071-21/+13
| | | | | | | * g10/tofu.c (write_stats_status): Use ulong for MESSSAGES. Fix format strings. Simplify by using the new write_status_printf. Signed-off-by: Werner Koch <wk@gnupg.org>
* g10: Temporary hack to repalce missing sqrtu32.Werner Koch2016-09-072-2/+5
| | | | | | -- Signed-off-by: Werner Koch <wk@gnupg.org>
* g10: Make sure some functions are passed a primary key.Neal H. Walfield2016-09-061-0/+4
| | | | | | | | * g10/tofu.c (get_trust): Make sure the caller provides a primary key. (tofu_register_signature): Likewise. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Tweak TOFU's verbosity.Neal H. Walfield2016-09-061-46/+32
| | | | | | | | * g10/tofu.c (time_ago_str): Only show the most significant unit. * g10/tofu.c (show_statistics): Tweak the output. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Only show the TOFU warning once per key.Neal H. Walfield2016-09-061-37/+55
| | | | | | | | | | | * g10/tofu.c (show_statistics): Return whether to call show_warning. Move the warning from here... (show_warning): ... to this new function. (tofu_get_validity): If show_statistics returns a non-zero value, call show_warning. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Record and show statistics for encrypted messages when using TOFUNeal H. Walfield2016-09-065-230/+471
| | | | | | | | | | | | | | | | | | | | | | * g10/tofu.c: Include "sqrtu32.h". (struct tofu_dbs_s.s): Rename get_trust_gather_other_keys to get_trust_gather_signature_stats. Add new field get_trust_gather_encryption_stats. (initdb): Create the encryptions table. (ask_about_binding): Show the encryption statistics too. (tofu_register): Rename from this... (tofu_register_signature): ... to this and update callers. (tofu_register_encryption): New function. (write_stats_status): Add parameters encryption_count, encryption_first_done and encryption_most_recent. Update callers. Compute the trust using the euclidean distance of the signature and signature count. Compare with twice the threshold. Include encryption count information in the TFS and TOFU_STATS lines. (show_statistics): Also get information about the encrypted messages. * g10/trustdb.c (tdb_get_validity_core): Use it. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Simplify the binding statistics shown for a TOFU conflict.Neal H. Walfield2016-09-061-76/+81
| | | | | | | * g10/tofu.c (ask_about_binding): Simplify binding statistics. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Don't add user attributes to the TOFU DB.Neal H. Walfield2016-09-051-0/+8
| | | | | | | * g10/trustdb.c (tdb_get_validity_core): Skip user attributes. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Refactor cross sig check code.Neal H. Walfield2016-09-051-309/+434
| | | | | | | | | | | | | | | | | | * g10/tofu.c (BINDING_NEW): New enum value. (BINDING_CONFLICT): Likewise. (BINDING_EXPIRED): Likewise. (BINDING_REVOKED): Likewise. (ask_about_binding): Move cross sig check from here... (get_trust): ... and the conflict set building from here... (build_conflict_set): ... to this new function. (format_conflict_msg_part1): Replace parameter conflict with conflict_set. Drop parameter fingerprint. Update callers. (ask_about_binding): Drop unused parameter conflict and redundant parameter bindings_with_this_email_count. Rename parameter bindings_with_this_email to conflict_set. Update callers. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* common: Add an assuan logging monitor.Werner Koch2016-09-051-1/+1
| | | | | | | | | * common/asshelp.c (my_log_monitor): New var. (my_libassuan_log_handler): Run that monitor. (setup_libassuan_logging): Add arg to set a log monitor and change all callers. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: New export filter drop-subkey.Werner Koch2016-09-052-0/+82
| | | | | | | | | | | * g10/import.c (impex_filter_getval): Add properties for key packets. * g10/export.c (export_drop_subkey): New var. (cleanup_export_globals): Release that var. (parse_and_set_export_filter): Add filter "drop-subkey". (apply_drop_subkey_filter): New. (do_export_stream): Run that filter. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Use a common filter_getval for import and export.Werner Koch2016-09-053-37/+7
| | | | | | | | | | * g10/import.c (filter_getval): Rename to ... (impex_filter_getval): this. Make global. (apply_keep_uid_filter, apply_drop_sig_filter): Adjust. * g10/export.c (filter_getval): Remove. (apply_drop_sig_filter): Use impex_filter_getval. Signed-off-by: Werner Koch <wk@gnupg.org>
* g10: End transaction earlier.Neal H. Walfield2016-09-011-2/+1
| | | | | | | * g10/tofu.c (ask_about_binding): End the transaction earlier. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Don't consider cross-signed keys to be in conflict.Neal H. Walfield2016-09-011-4/+158
| | | | | | | | | | | | | | | | * g10/tofu.c (cross_sigs): New function. (ask_about_binding): If apparently conflicting keys are cross signed, then don't mark them as conflicting. -- Signed-off-by: Neal H. Walfield <neal@g10code.com> If two keys are cross signed, then the same person (probably) controlled them both. In this case, don't raise a TOFU conflict. This usually occurs when someone transitions to a new key. When that person rotates to a third key, she will typically only cross sign it with the second key. As such, we check this transitively to avoid declaring a conflict between the 1st and 3rd key.
* gpg: Avoid homedir creation by --list-configWerner Koch2016-09-011-1/+8
| | | | | | | * g10/gpg.c (main): Do not register a key for the list config commands. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Simplify code to print VALIDSIG.Werner Koch2016-09-011-29/+20
| | | | | | | * g10/mainproc.c (check_sig_and_print): Use hexfingerprint and write_status_printf. Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Add new function write_status_printf.Werner Koch2016-09-012-0/+29
| | | | | | | * g10/cpr.c (write_status_printf): New. -- Signed-off-by: Werner Koch <wk@gnupg.org>
* gpg: Fix printing of pubkey algo in --verbose signature verify.Werner Koch2016-09-013-91/+111
| | | | | | | | | | | | | | | | | | | * g10/sig-check.c (check_signature2): Replace arg PK by R_PK and change the semantics. Also clear the other R_ args on function entry, use gpg_error() and change retturn type to gpg_error_t. * g10/mainproc.c (do_check_sig): Add arg R_PK. (list_node): Pass NULL for new arg. (check_sig_and_print): Rework to make use of the returned PK. -- The output gpg: textmode signature, digest algorithm SHA256, key algorithm rsa2048 showed the pubkey algo of the primary key which was surprising. Changed to print the algo of the subkey used for verification. Signed-off-by: Werner Koch <wk@gnupg.org>
* g10: Fix typo.Neal H. Walfield2016-09-011-1/+1
| | | | | -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: When asking about a TOFU binding conflict, default to unknown.Neal H. Walfield2016-09-011-1/+9
| | | | | | | * g10/tofu.c (ask_about_binding): Default to unknown. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>
* g10: Add support for TRUST_NEVER.Neal H. Walfield2016-09-011-5/+19
| | | | | | | | | | | * g10/pkclist.c (do_we_trust): Handle TRUST_NEVER, which can be returned by the TOFU trust model. (do_we_trust_pre): Print a different message if TRUSTLEVEL is TRUST_NEVER. (check_signatures_trust): Improve comment. -- Signed-off-by: Neal H. Walfield <neal@g10code.com>