aboutsummaryrefslogtreecommitdiffstats
path: root/sm/verify.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Change all quotes in strings and comments to the new GNU standard.Werner Koch2012-06-051-2/+2
| | | | | | | | | | | | | | | | | | | The asymmetric quotes used by GNU in the past (`...') don't render nicely on modern systems. We now use two \x27 characters ('...'). The proper solution would be to use the correct Unicode symmetric quotes here. However this has the disadvantage that the system requires Unicode support. We don't want that today. If Unicode is available a generated po file can be used to output proper quotes. A simple sed script like the one used for en@quote is sufficient to change them. The changes have been done by applying sed -i "s/\`\([^'\`]*\)'/'\1'/g" to most files and fixing obvious problems by hand. The msgid strings in the po files were fixed with a similar command.
* gpgsm: Add new validation model "steed".Werner Koch2011-12-071-0/+2
| | | | | | | | | | | | | | | | | | | | * sm/gpgsm.h (VALIDATE_FLAG_STEED): New. * sm/gpgsm.c (gpgsm_parse_validation_model): Add model "steed". * sm/server.c (option_handler): Allow validation model "steed". * sm/certlist.c (gpgsm_cert_has_well_known_private_key): New. * sm/certchain.c (do_validate_chain): Handle the well-known-private-key attribute. Support the "steed" model. (gpgsm_validate_chain): Ditto. * sm/verify.c (gpgsm_verify): Return "steed" in the trust status line. * sm/keylist.c (list_cert_colon): Print the new 'w' flag. -- This is the first part of changes to implement the STEED proposal as described at http://g10code.com/steed.html . The idea for X.509 is not to use plain self-signed certificates but certificates signed by a dummy CA (i.e. one for which the private key is known). Having a single CA as an indication for the use of STEED might help other X.509 implementations to implement STEED.
* Replace gcry_md_start_debug by gcry_md_debug.Werner Koch2011-09-201-2/+2
| | | | | This is to allow building with Libgcrypt master (1.6) which has some cleanups in the API/ABI.
* Nuked almost all trailing white space.post-nuke-of-trailing-wsWerner Koch2011-02-041-28/+27
| | | | | | | | We better do this once and for all instead of cluttering all future commits with diffs of trailing white spaces. In the majority of cases blank or single lines are affected and thus this change won't disturb a git blame too much. For future commits the pre-commit scripts checks that this won't happen again.
* Remove superfluous parameter.Werner Koch2010-11-261-1/+1
| | | | | Make self-check interval larger
* Finished the bulk of changes to use estream in most places instead ofWerner Koch2010-03-151-1/+1
| | | | | stdio.
* Replace use stdio by estream functions.Werner Koch2010-03-081-17/+17
|
* More stuff for the audit-log.Werner Koch2009-12-021-1/+5
|
* Print NO_SECKEY status line in gpgsm.Werner Koch2009-03-251-1/+1
| | | | | This fixes bug#1020.
* Remove duplicated code.Werner Koch2009-03-161-1/+1
|
* Adjust for the changed Camellia draft.Werner Koch2008-04-181-2/+10
| | | | | | W32 gettext changes. Comment and typo fixes.
* Allow verification of some broken S-TRUST generated signatures.Werner Koch2007-12-131-9/+29
|
* More code for the audit log.Werner Koch2007-12-061-1/+5
|
* Started to implement the audit log feature.Werner Koch2007-11-191-13/+57
| | | | | | | | Pass PINENTRY_USER_DATA and XAUTHORITY to Pinentry. Improved support for the quality bar. Minor internal restructuring. Translation fixes.
* Implemented the chain model for X.509 validation.Werner Koch2007-08-101-10/+42
|
* Changed to GPLv3.Werner Koch2007-07-041-4/+2
| | | | | Removed intl/.
* Allow export to work on systems without funopen/fopencookie.Werner Koch2007-03-191-1/+1
|
* sm/Werner Koch2006-11-141-11/+14
| | | | | | | | | | | | | | * server.c (skip_options): Skip leading spaces. (has_option): Honor "--". (cmd_export): Add option --data to do an inline export. Skip all options. * certdump.c (gpgsm_fpr_and_name_for_status): New. * verify.c (gpgsm_verify): Use it to print correct status messages. doc/ * gpgsm.texi (GPGSM EXPORT): Document changes.
* The big Assuan error code removal.Werner Koch2006-09-061-1/+1
|
* Updated FSF's address.Werner Koch2006-06-201-1/+2
|
* Added qualified signature features.Werner Koch2005-11-131-2/+8
|
* * configure.ac: Require libksba 0.9.7.Werner Koch2004-06-061-47/+34
| | | | | | | | | | | | | | | | * certreqgen.c (get_parameter_uint, create_request): Create an extension for key usage when requested. * gpgsm.c (main): Install emergency_cleanup also as an atexit handler. * verify.c (gpgsm_verify): Removed the separate error code handling for KSBA. We use shared error codes anyway. * export.c (export_p12): Removed debugging code. * encrypt.c (gpgsm_encrypt): Put the session key in to secure memory.
* * verify.c (gpgsm_verify): Print STATUS_NEWSIG for each signature.Werner Koch2004-04-051-1/+4
| | | | | | | | | | | | | * certchain.c (gpgsm_validate_chain) <gpgsm_cert_use_cer_p>: Do not just warn if a cert is not suitable; bail out immediately. * call-dirmngr.c (isvalid_status_cb): New. (unhexify_fpr): New. Taken from ../g10/call-agent.c (gpgsm_dirmngr_isvalid): Add new arg CTRL, changed caller to pass it thru. Detect need to check the respondert cert and do that. * certchain.c (gpgsm_validate_chain): Add new arg FLAGS. Changed all callers.
* * gpgsm.c: New option --with-md5-fingerprint.Werner Koch2004-02-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | * keylist.c (list_cert_std): Print MD5 fpr. * gpgsm.c: New options --with-validation. * server.c (option_handler): New option "with-validation". * keylist.c (list_cert_std, list_internal_keys): New args CTRL and WITH_VALIDATION. Changed callers to set it. (list_external_cb, list_external_keys): Pass CTRL to the callback. (list_cert_colon): Add arg CTRL. Check validation if requested. * certchain.c (unknown_criticals, allowed_ca, check_cert_policy) (gpgsm_validate_chain): New args LISTMODE and FP. (do_list): New helper for info output. (find_up): New arg FIND_NEXT. (gpgsm_validate_chain): After a bad signature try again with other CA certificates. * import.c (print_imported_status): New arg NEW_CERT. Print additional STATUS_IMPORT_OK becuase that is what gpgme expects. (check_and_store): Always call above function after import. * server.c (get_status_string): Added STATUS_IMPORT_OK.
* * encrypt.c (init_dek): Check for too weak algorithms.Werner Koch2004-02-131-1/+1
| | | | | | | | | | | | * import.c (parse_p12, popen_protect_tool): New. * base64.c (gpgsm_create_reader): New arg ALLOW_MULTI_PEM. Changed all callers. (base64_reader_cb): Handle it here. (gpgsm_reader_eof_seen): New. (base64_reader_cb): Set a flag for EOF. (simple_reader_cb): Ditto.
* Replaced deprecated type names.Werner Koch2003-12-171-8/+8
| | | | | | | | * certdump.c (gpgsm_print_serial): Cleaned up cast use in strtoul. (gpgsm_dump_serial): Ditto. * decrypt.c (gpgsm_decrypt): Replaced ERR by RC.
* * gpgsm.c, gpgsm.h: New options --{enable,disable}-ocsp.Werner Koch2003-12-011-1/+2
| | | | | | | | (gpgsm_init_default_ctrl): Set USE_OCSP to the default value. * certchain.c (gpgsm_validate_chain): Handle USE_OCSP. * call-dirmngr.c (gpgsm_dirmngr_isvalid): Add arg USE_OCSP and proceed accordingly.
* * verify.c (gpgsm_verify): Fixed for changes API of gcry_md_info.Werner Koch2003-11-181-1/+6
| | | | | * certchain.c (unknown_criticals): Fixed an error code test.
* Mainly changes to adjust for the changed KSBA API.Werner Koch2003-11-121-15/+16
|
* * verify.c (strtimestamp_r, gpgsm_verify):Werner Koch2003-10-311-19/+12
| | | | | | | | | | | * sign.c (gpgsm_sign): * keylist.c (print_time, list_cert_std, list_cert_colon): * certdump.c (gpgsm_print_time, gpgsm_dump_time, gpgsm_dump_cert): * certchain.c (gpgsm_validate_chain): Changed to use ksba_isotime_t.
* This commit was manufactured by cvs2svn to create branchRepo Admin2003-08-051-0/+550
| | | | 'GNUPG-1-9-BRANCH'.
* This commit was manufactured by cvs2svn to create branchRepo Admin2002-10-191-510/+0
| | | | 'GNUPG-1-9-BRANCH'.
* * gpgsm.c (main): Use the log file only in server mode.Werner Koch2002-08-201-13/+22
| | | | | | | | | | * import.c (print_imported_summary): New. (check_and_store): Update the counters, take new argument. (import_one): Factored out core of gpgsm_import. (gpgsm_import): Print counters. (gpgsm_import_files): New. * gpgsm.c (main): Use the new function for import.
* Made it compile.Werner Koch2002-08-161-1/+1
|
* * call-agent.c (learn_cb): Special treatment when the issuerWerner Koch2002-08-161-3/+3
| | | | | certificate is missing.
* * keylist.c (list_cert_colon): Print the short fingerprint in theWerner Koch2002-08-101-7/+23
| | | | | | | | key ID field. * fingerprint.c (gpgsm_get_short_fingerprint): New. * verify.c (gpgsm_verify): Print more verbose info for a good signature.
* * gpgsm.c (emergency_cleanup): New.Werner Koch2002-08-091-3/+7
| | | | | | | | (main): Initialize the signal handler. * sign.c (gpgsm_sign): Reset the hash context for subsequent signers and release it at the end.
* * verify.c (gpgsm_verify): Extend the STATUS_BADSIG line withWerner Koch2002-07-021-2/+10
| | | | | the fingerprint.
* * keydb.c (keydb_store_cert): Add optional ar EXISTED and changedWerner Koch2002-07-021-1/+1
| | | | | | | | | | | | all callers. * call-agent.c (learn_cb): Print info message only for real imports. * import.c (gpgsm_import): Moved duplicated code to ... (check_and_store): new function. Added magic to import the entire chain. Print status only for real imports and moved printing code to .. (print_imported_status): New.
* * certlist.c (gpgsm_add_to_certlist): Fixed locating of aWerner Koch2002-06-201-2/+9
| | | | | | | | | | | | | | | | | | | | | | | certificate with the required key usage. * gpgsm.c (main): Fixed a segv when using --outfile without an argument. * keylist.c (print_capabilities): Also check for non-repudiation and data encipherment. * certlist.c (cert_usage_p): Test for signing and encryption was swapped. Add a case for certification usage, handle non-repudiation and data encipherment. (gpgsm_cert_use_cert_p): New. (gpgsm_add_to_certlist): Added a CTRL argument and changed all callers to pass it. * certpath.c (gpgsm_validate_path): Use it here to print a status message. Added a CTRL argument and changed all callers to pass it. * decrypt.c (gpgsm_decrypt): Print a status message for wrong key usage. * verify.c (gpgsm_verify): Ditto. * keydb.c (classify_user_id): Allow a colon delimited fingerprint.
* * call-agent.c (learn_cb): Use log_info instead of log_error onWerner Koch2002-06-191-1/+1
| | | | | | | | | | | | successful import. * keydb.c (keydb_set_ephemeral): New. (keydb_store_cert): New are ephemeral, changed all callers. * keylist.c (list_external_cb): Store cert as ephemeral. * export.c (gpgsm_export): Kludge to export epehmeral certificates. * gpgsm.c (main): New command --list-external-keys.
* * sign.c (hash_and_copy_data): New.Werner Koch2002-06-121-6/+25
| | | | | | | | | | | (gpgsm_sign): Implemented normal (non-detached) signatures. * gpgsm.c (main): Ditto. * certpath.c (gpgsm_validate_path): Special error handling for no policy match. * configure.ac (NEED_LIBKSBA_VERSION): We need 0.4.3 now.
* * certpath.c (gpgsm_validate_path): Added EXPTIME arg and changedWerner Koch2002-05-031-26/+41
| | | | | | | all callers. * verify.c (gpgsm_verify): Tweaked usage of log_debug and log_error. Return EXPSIG status and add expiretime to VALIDSIG.
* * certlist.c (cert_usable_p): New.Werner Koch2002-04-121-0/+1
| | | | | | | | | | | | (gpgsm_cert_use_sign_p,gpgsm_cert_use_encrypt_p): New. (gpgsm_cert_use_verify_p,gpgsm_cert_use_decrypt_p): New. (gpgsm_add_to_certlist): Check the key usage. * sign.c (gpgsm_sign): Ditto. * verify.c (gpgsm_verify): Print a message wehn an unsuitable certificate was used. * decrypt.c (gpgsm_decrypt): Ditto * keylist.c (print_capabilities): Determine values from the cert.
* * verify.c (gpgsm_verify): Detect certs-only message.Werner Koch2002-03-121-6/+11
|
* * gpgsm.c, gpgsm.h: Add local_user.Werner Koch2002-03-051-4/+2
| | | | | | | | | | | * sign.c (gpgsm_get_default_cert): New. (get_default_signer): Use the new function if local_user is not set otherwise used that value. * encrypt.c (get_default_recipient): Removed. (gpgsm_encrypt): Use gpgsm_get_default_cert. * verify.c (gpgsm_verify): Better error text for a bad signature found by comparing the hashs.
* * certlist.c (gpgsm_add_to_certlist): Check that the specifiedWerner Koch2002-02-071-1/+1
| | | | | | | | | | | | | | | | name identifies a certificate unambiguously. (gpgsm_find_cert): Ditto. * server.c (cmd_listkeys): Check that the data stream is available. (cmd_listsecretkeys): Ditto. (has_option): New. (cmd_sign): Fix ambiguousity in option recognition. * gpgsm.c (main): Enable --logger-fd. * encrypt.c (gpgsm_encrypt): Increased buffer size for better performance. * call-agent.c (gpgsm_agent_pksign): Check the S-Exp received from the agent. * keylist.c (list_cert_colon): Filter out control characters.
* * import.c (gpgsm_import): Just do a basic cert check beforeWerner Koch2002-01-151-30/+5
| | | | | | | | | | | | | | | | storing it. * certpath.c (gpgsm_basic_cert_check): New. * keydb.c (keydb_store_cert): New. * import.c (store_cert): Removed and change all caller to use the new function. * verify.c (store_cert): Ditto. * certlist.c (gpgsm_add_to_certlist): Validate the path * certpath.c (gpgsm_validate_path): Check the trust list. * call-agent.c (gpgsm_agent_istrusted): New.
* * verify.c (gpgsm_verify): Implemented non-detached signatureWerner Koch2001-12-201-12/+37
| | | | | | | verification. Add OUT_FP arg, initialize a writer and changed all callers. * server.c (cmd_verify): Pass an out_fp if one has been set.
* * base64.c (base64_reader_cb): Try to detect an S/MIME body part.Werner Koch2001-12-201-46/+3
| | | | | | | | | | | | | | * certdump.c (print_sexp): Renamed to gpgsm_dump_serial, made global. (print_time): Renamed to gpgsm_dump_time, made global. (gpgsm_dump_serial): Take a real S-Expression as argument and print the first item. * keylist.c (list_cert_colon): Ditto. * keydb.c (keydb_search_issuer_sn): Ditto. * decrypt.c (print_integer_sexp): Removed and made callers use gpgsm_dump_serial. * verify.c (print_time): Removed, made callers use gpgsm_dump_time.