aboutsummaryrefslogtreecommitdiffstats
path: root/g10/mainproc.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-06-08gpg: Sanitize diagnostic with the original file name.Werner Koch1-1/+5
* g10/mainproc.c (proc_plaintext): Sanitize verbose output. -- This fixes a forgotten sanitation of user supplied data in a verbose mode diagnostic. The mention CVE is about using this to inject status-fd lines into the stderr output. Other harm good as well be done. Note that GPGME based applications are not affected because GPGME does not fold status output into stderr. CVE-id: CVE-2018-12020 GnuPG-bug-id: 4012 (cherry picked from commit 13f135c7a252cc46cff96e75968d92b6dc8dce1b)
2016-06-28g10: Fix --list-packets.NIIBE Yutaka1-1/+1
* g10/gpg.c (main): Call set_packet_list_mode after assignment of opt.list_packets. * g10/mainproc.c (do_proc_packets): Don't stop processing with --list-packets as the comment says. * g10/options.h (list_packets): Fix the comment. * g10/parse-packet.c: Fix the condition for opt.list_packets. -- (backport from 2.0 commit 4f336ed780cc2783395f3ff2b12b3ebb8e097f7b which is backport of master commit 52f65281f9743c42a48bf5a3354c9ab0ecdb681a) Debian-bug-id: 828109 Signed-off-by: NIIBE Yutaka <[email protected]>
2015-05-19g10: detects public key encryption packet error properly.NIIBE Yutaka1-3/+3
g10/mainproc.c (proc_pubkey_enc): Only allow relevant algorithms for encryption. -- (backported from 2.1 commit c771963140cad7c1c25349bcde27e427effc0058)
2015-02-26Switch to a hash and CERT record based PKA system.Werner Koch1-1/+2
* util/pka.c: Rewrite. (get_pka_info): Add arg fprbuflen. Change callers to pass this. * util/strgutil.c (ascii_strlwr): New. * configure.ac: Remove option --disable-dns-pka. (USE_DNS_PKA): Remove ac_define. * g10/getkey.c (parse_auto_key_locate): Always include PKA. -- Note that although PKA is now always build, it will only work if support for looking up via DNS has not been disabled. The new PKA only works with the IPGP DNS certtype and shall be used only to retrieve the fingerprint and optional the key for the first time. Due to the security problems with DNSSEC the former assumption to validate the key using DNSSEC is not anymore justified. Instead an additional layer (e.g. Trust-On-First-Use) needs to be implemented to track change to the key. Having a solid way of getting a key matching a mail address is however a must have. More work needs to go into a redefinition of the --verify-options pka-lookups and pka-trust-increase. The auto-key-locate mechanism should also be able to continue key fetching with another method once the fingerprint has been retrieved with PKA. Signed-off-by: Werner Koch <[email protected]> This is a backport from master. (backported from commit 2fc27c8696f5cf2ddf3212397ea49bff115d617b)
2014-11-24gpg: Fix a NULL-deref for invalid input data.Werner Koch1-2/+8
* g10/mainproc.c (proc_encrypted): Take care of canceled passpharse entry. -- GnuPG-bug-id: 1761 Signed-off-by: Werner Koch <[email protected]> (backported from commit 32e85668b82f6fbcb824eea9548970804fb41d9e)
2014-11-14gpg: Make the use of "--verify FILE" for detached sigs harder.Werner Koch1-0/+38
* g10/openfile.c (open_sigfile): Factor some code out to ... (get_matching_datafile): new function. * g10/plaintext.c (hash_datafiles): Do not try to find matching file in batch mode. * g10/mainproc.c (check_sig_and_print): Print a warning if a possibly matching data file is not used by a standard signatures. -- Allowing to use the abbreviated form for detached signatures is a long standing bug which has only been noticed by the public with the release of 2.1.0. :-( What we do is to remove the ability to check detached signature in --batch using the one file abbreviated mode. This should exhibit problems in scripts which use this insecure practice. We also print a warning if a matching data file exists but was not considered because the detached signature was actually a standard signature: gpgv: Good signature from "Werner Koch (dist sig)" gpgv: WARNING: not a detached signature; \ file 'gnupg-2.1.0.tar.bz2' was NOT verified! We can only print a warning because it is possible that a standard signature is indeed to be verified but by coincidence a file with a matching name is stored alongside the standard signature. Reported-by: Simon Nicolussi (to gnupg-users on Nov 7) Signed-off-by: Werner Koch <[email protected]> (backported from commit 69384568f66a48eff3968bb1714aa13925580e9f) Updated doc/gpg.texi.
2014-08-20gpg: Allow compressed data with algorithm 0.Werner Koch1-4/+1
* g10/mainproc.c (proc_compressed): Remove superfluous check for an algorithm number of 0. -- (backport from commit 88633bf3d417aeb5ea0f75508aba8e32adc8acef) GnuPG-bug-id: 1326, 1684
2013-12-11Change --show-session-key to print the session key earlier.Werner Koch1-10/+1
* g10/mainproc.c (proc_encrypted): Move show_session_key code to ... * g10/decrypt-data.c (decrypt_data): here. -- This feature can be used to return the session key for just a part of a file. For example to downloading just the first 32k of a huge file, decrypting that incomplete part and while ignoring all the errors break out the session key. The session key may then be used on the server to decrypt the entire file without the need to have the private key on the server. This is the same feature as commit 101a54add351ff62793cbfbf3877787c4791f833 for 2.1 and commit 3ae90ff28c500967cb90b1176299d2ca01ef450f for 2.0. GnuPG-bug-id: 1389 Signed-off-by: Werner Koch <[email protected]>
2013-10-02gpg: Fix bug with deeply nested compressed packets.Werner Koch1-9/+43
* g10/mainproc.c (MAX_NESTING_DEPTH): New. (proc_compressed): Return an error code. (check_nesting): New. (do_proc_packets): Check packet nesting depth. Handle errors from check_compressed. Signed-off-by: Werner Koch <[email protected]>
2012-11-08Support the not anymore patented IDEA cipher algorithm.Werner Koch1-9/+0
* cipher/idea.c: New. Take from Libgcrypt master and adjust for direct use in GnuPG. * cipher/idea-stub.c: Remove. * cipher/Makefile.am: Add idea.c and remove idea-stub.c rules. * configure.ac: Remove idea-stub code. * g10/gpg.c (check_permissions): Remove code path for ITEM==2. (main): Make --load-extension a dummy option. * g10/keygen.c (keygen_set_std_prefs): Include IDEA only in PGP2 compatibility mode. * g10/misc.c (idea_cipher_warn): Remove. Also remove all callers. * g10/seckey-cert.c (do_check): Remove emitting of STATUS_RSA_OR_IDEA. * g10/status.c (get_status_string): Remove STATUS_RSA_OR_IDEA. * g10/status.h (STATUS_RSA_OR_IDEA): Remove. -- To keep the number of actually used algorithms low, we support IDEA only in a basically read-only way (unless --pgp2 is used during key generation). It does not make sense to suggest the use of this old 64 bit blocksize algorithm. However, there is old data available where it might be helpful to have IDEA available.
2011-07-01Add pubkey letters e and E for ECC.Werner Koch1-30/+32
This does not mean we have any kind of ECC support now. It is merely to avoid printing a question mark for the algorithm. Trailing white space changes as usual.
2010-08-31Minor fixesWerner Koch1-0/+8
2008-10-03* main.h, mainproc.c (check_sig_and_print), keylist.cDavid Shaw1-3/+4
(list_keyblock_print), pkclist.c (do_edit_ownertrust), keyedit.c (menu_showphoto), photoid.c (generate_photo_id, show_photos), misc.c (pct_expando): Add %v and %V expandos so that displaying photo IDs can show the attribute validity tag (%v) and string (%V). Originally by Daniel Gillmor.
2007-12-12Updated ZH po file.Werner Koch1-1/+1
Allow de/encryption using legacy type 20 keys. Updated config.{sub,guess}
2007-12-11Allow decryption using type 20 Elgamal keys.Werner Koch1-3/+10
2007-10-23Switched to GPLv3.Werner Koch1-4/+2
Updated gettext.
2007-04-17* packet.h, mainproc.c (reset_literals_seen): New function to resetDavid Shaw1-2/+8
the literals count. * verify.c (verify_one_file), decrypt.c (decrypt_messages): Call it here so we allow multiple literals in --multifile mode (in different files - not concatenated together).
2007-03-05Preparing 1.4.7gnupg-1.4.7Werner Koch1-15/+47
2006-04-08Fixed segvWerner Koch1-2/+4
2006-03-22* mainproc.c (get_pka_address): Fix bug introduced as part ofDavid Shaw1-1/+1
sig_to_notation conversion. Noted by Peter Palfradrer.
2006-03-09Preparing for an RC23Werner Koch1-2/+2
2006-03-09* mainproc.c (get_pka_address), keylist.c (show_notation): RemoveDavid Shaw1-35/+20
duplicate code by using notation functions.
2006-03-08* options.h, mainproc.c (check_sig_and_print), gpg.c (main):David Shaw1-1/+1
pka-lookups, not pka-lookup. * options.h, gpg.c (main), keyedit.c [cmds], sig-check.c (signature_check2): Rename "backsign" to "cross-certify" as a more accurate name.
2006-03-07* options.h, gpg.c (main, parse_trust_model), pkclist.cDavid Shaw1-2/+3
(check_signatures_trust), mainproc.c (check_sig_and_print, pka_uri_from_sig), trustdb.c (init_trustdb): Some tweaks to PKA so that it is a verify-option now.
2006-03-07More tests added; make distcheck worksWerner Koch1-3/+12
2006-03-06* mainproc.c (proc_compressed): "Uncompressed" is not a valid compressionDavid Shaw1-1/+3
algorithm.
2006-03-06Stricter test of allowed signature packet compositions.Werner Koch1-98/+111
There is still one problem to solve.
2006-03-06Fixed problem with PGP2 style signatures and mutilple plaintext dataWerner Koch1-33/+57
2006-03-05Replaced an assert and fixed batch mode issue in cardglue.Werner Koch1-1/+6
2006-02-22* options.h, gpg.c (main), mainproc.c (check_sig_and_print), keyserver.cDavid Shaw1-4/+3
(keyserver_opts): Rename auto-pka-retrieve to honor-pka-record to be consistent with honor-keyserver-url.
2006-02-14Fixed a wrong return code with gpg --verifyWerner Koch1-23/+39
2006-01-01* mainproc.c (check_sig_and_print), keyserver.cDavid Shaw1-1/+1
(keyserver_import_pka), card-util.c (fetch_url): Always require a scheme:// for keyserver URLs except when used as part of the --keyserver command for backwards compatibility.
2005-12-20Finished PKA featureWerner Koch1-1/+1
2005-12-08Made strings translatable. Minor fixes.Werner Koch1-1/+1
2005-09-20* mainproc.c (proc_symkey_enc): Take care of a canceled passphraseWerner Koch1-1/+16
prompt.
2005-08-05auto retrieve keys from PKA. Thsi allows to specify an email addressWerner Koch1-2/+5
so that gpg can get the key from DNS. This helps with opportunistic encryption. No integration with the trust modell yet.
2005-07-28Implemented PKA trust modelWerner Koch1-3/+112
2005-07-27Converted all m_free to xfree etc.Werner Koch1-32/+32
2005-05-31Updated FSF street address and preparations for a release candidate.Werner Koch1-1/+2
2005-04-22* mainproc.c (symkey_decrypt_seskey): There is no need to have anDavid Shaw1-33/+33
extra check for a bad passphrase and/or unknown cipher algorithm here. We'll fail quite happily later, and usually with a better error message to boot.
2005-04-01* mainproc.c (proc_plaintext): Properly handle SIG+LITERAL (old-style PGP)David Shaw1-19/+35
signatures that use hashes other than SHA-1, RIPEMD160, or MD5.
2005-02-10Disable the "quick check" bytes for PK decryptions. This is inDavid Shaw1-2/+4
regards to the Mister and Zuccherato attack on OpenPGP CFB mode.
2005-02-03Updated to match the switch to the NSIS installer.Werner Koch1-1/+1
2004-10-21* options.h, g10.c (main), mainproc.c (check_sig_and_print): RenameDavid Shaw1-2/+2
verify-option show-validity to show-uid-validity to match the similar list-option. * app-openpgp.c (verify_chv3): Fix typo.
2004-10-11* pkclist.c (do_edit_ownertrust): Use the same translated string forDavid Shaw1-6/+3
showing the user ID as mainproc.c:print_pkenc_list. * mainproc.c (print_pkenc_list): Allow translating the quotes around the user ID. * card-util.c, g10.c, photoid.c, trustdb.c: The last of the \"%s\" -> `%s' quoting for things that aren't user IDs. * keyserver.c (keyserver_spawn): If there is no keyserver host, print the whole URI since it is self-contained.
2004-10-07* pkclist.c (build_pk_list): Keystrify.David Shaw1-22/+41
* mainproc.c (check_sig_and_print), pkclist.c (do_edit_ownertrust): Improve translatability of user ID prompts.
2004-10-06* keyedit.c, keylist.c, keyserver.c, mainproc.c: TheDavid Shaw1-2/+10
revoked/expired/expires string change of 2004-09-29 was too simple. Use two styles for each tag.
2004-09-29* keyedit.c, keylist.c, keyserver.c, mainproc.c: Reduce the manyDavid Shaw1-2/+2
variations of "revoked" ("revoked", "[revoked]", " [revoked]", "[revoked] ") "and" expired down to two to simplify translation.
2004-09-22* mainproc.c (check_sig_and_print), keyedit.c (show_prefs,David Shaw1-1/+1
menu_set_keyserver_url): Make sure that keyserver URLs with control characters inside are printed properly. In fact, handle them as UTF8.
2004-07-15* keyedit.c (sign_uids): Properly handle remaking a self-sig on revoked orDavid Shaw1-0/+7
expired user IDs. Also, once we've established that a given uid cannot or will not be signed, don't continue to ask about each sig. * mainproc.c (proc_symkey_enc), seckey-cert.c (do_check): Check the S2K hash algorithm before we try to generate a passphrase using it. This prevents hitting BUG() when generating a passphrase using a hash that we don't have. * sign.c (sign_symencrypt_file): Allow using --force-mdc in --sign --symmetric messages.