1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-11-04 20:38:50 +01:00
Commit Graph

152 Commits

Author SHA1 Message Date
Neal H. Walfield
026feff4a8 Add documentation for g10/parse-packet.c.
* g10/packet.h: Add documentation for functions defined in
parse-packet.c.
* g10/parse-packet.c: Improve comments for many functions.

--
Signed-off-by: Neal H. Walfield <neal@g10code.com>.
2015-08-20 14:16:29 +02:00
Neal H. Walfield
c46e8bfe9a g10/packet.h: Remove unused argument from enum_sig_subpkt.
* g10/packet.h (enum_sig_subpkt): Remove argument RET_N.  Update
callers.
* g10/parse-packet.c (enum_sig_subpkt): Remove argument RET_N.

--
Remove the RET_N argument, because it is unused and because it is
meaningless: it's not clear whether it is an offset into SIG->HASHED
or SIG->UNHASHED.

Signed-off-by: Neal H. Walfield <neal@g10code.com>.
2015-08-20 14:16:29 +02:00
Werner Koch
64e809b791
gpg: New command --quick-adduid.
* g10/keygen.c (ask_user_id): Factor some code out to ...
(uid_already_in_keyblock): new.
(generate_user_id): Add arg UIDSTR.  Fix leaked P.
* g10/keyedit.c (menu_adduid): Add new arg uidstring.  Adjust caller.
(keyedit_quick_adduid): New.
* g10/gpg.c (aQuickAddUid): New.
(opts):  Add command --quick-adduid.
(main): Implement that.
--

GnuPG-bug-id: 1956
Signed-off-by: Werner Koch <wk@gnupg.org>
2015-05-08 16:08:57 +02:00
Werner Koch
8fd150b05b gpg: Remove all support for v3 keys and always create v4-signatures.
* g10/build-packet.c (do_key): Remove support for building v3 keys.
* g10/parse-packet.c (read_protected_v3_mpi): Remove.
(parse_key): Remove support for v3-keys.  Add dedicated warnings for
v3-key packets.
* g10/keyid.c (hash_public_key): Remove v3-key support.
(keyid_from_pk): Ditto.
(fingerprint_from_pk): Ditto.

* g10/options.h (opt): Remove fields force_v3_sigs and force_v4_certs.
* g10/gpg.c (cmd_and_opt_values): Remove oForceV3Sigs, oNoForceV3Sigs,
oForceV4Certs, oNoForceV4Certs.
(opts): Turn --force-v3-sigs, --no-force-v3-sigs, --force-v4-certs,
--no-force-v4-certs int dummy options.
(main): Remove setting of the force_v3_sigs force_v4_certs flags.
* g10/revoke.c (gen_revoke, create_revocation): Always create v4 certs.
* g10/sign.c (hash_uid): Remove support for v3-signatures
(hash_sigversion_to_magic): Ditto.
(only_old_style): Remove this v3-key function.
(write_signature_packets): Remove support for creating v3-signatures.
(sign_file): Ditto.
(sign_symencrypt_file): Ditto.
(clearsign_file): Ditto.  Remove code to emit no Hash armor line if
only v3-keys are used.
(make_keysig_packet): Remove arg SIGVERSION and force using
v4-signatures.  Change all callers to not pass a value for this arg.
Remove all v3-key related code.
(update_keysig_packet): Remove v3-signature support.
* g10/keyedit.c (sign_uids): Always create v4-signatures.

* g10/textfilter.c (copy_clearsig_text): Remove arg pgp2mode and
change caller.
--

v3 keys are deprecated for about 15 years and due the severe
weaknesses of MD5 it does not make any sense to keep code around to
use these old and broken keys.  Users who need to decrypt old messages
should use gpg 1.4 and best re-encrypt them to modern standards.
verification of old (i.e. PGP2) created signatures is thus also not
anymore possible but such signatures have no values anyway - MD5 is
just too broken.

We have also kept support for v3 signatures until now.  With the
removal of support for v3 keys it is questionable whether it makes any
sense to keep support for v3-signatures.  What we do now is to keep
support for verification of v3-signatures but we force the use of
v4-signatures.  The latter makes the --pgp6 and --pgp7 switch a bit
obsolete because those PGP versions require v3-signatures for
messages.  These versions of PGP are also really old and not anymore
maintained so they have not received any bug fixes and should not be
used anyway.

Signed-off-by: Werner Koch <wk@gnupg.org>
2014-10-17 13:32:16 +02:00
Werner Koch
ea8a1685f7 gpg: Remove cipher.h and put algo ids into a common file.
* common/openpgpdefs.h (cipher_algo_t, pubkey_algo_t, digest_algo_t)
(compress_algo_t): New.
* agent/gpg-agent.c: Remove ../g10/cipher.h. Add openpgpdefs.h.
* g10/cipher.h (DEK): Move to ...
* g10/dek.h: new file.
* g10/cipher.h (is_RSA, is_ELGAMAL, is_DSA)
(PUBKEY_MAX_NPKEY, PUBKEY_MAX_NSKEY, PUBKEY_MAX_NSIG, PUBKEY_MAX_NENC)
(PUBKEY_USAGE_SIG, PUBKEY_USAGE_ENC, PUBKEY_USAGE_CERT)
(PUBKEY_USAGE_AUTH, PUBKEY_USAGE_NONE): Move to
* g10/packet.h: here.
* g10/cipher.h: Remove.  Remove from all files.
* g10/filter.h, g10/packet.h:  Include dek.h.
* g10/Makefile.am (common_source): Remove cipher.h.  Add dek.h.

Signed-off-by: Werner Koch <wk@gnupg.org>
2014-01-29 20:35:05 +01:00
Werner Koch
402aa0f948 gpg: Rework ECC support and add experimental support for Ed25519.
* agent/findkey.c (key_parms_from_sexp): Add algo name "ecc".
(agent_is_dsa_key): Ditto.
(agent_is_eddsa_key): New.  Not finished, though.
* agent/pksign.c (do_encode_eddsa): New.
(agent_pksign_do): Use gcry_log_debug functions.
* agent/protect.c (agent_protect): Parse a flags parameter.
* g10/keygen.c (gpg_curve_to_oid): Move to ...
* common/openpgp-oid.c (openpgp_curve_to_oid): here and rename.
(oid_ed25519): New.
(openpgp_oid_is_ed25519): New.
(openpgp_oid_to_curve): New.
* common/t-openpgp-oid.c (test_openpgp_oid_is_ed25519): New.
* g10/build-packet.c (gpg_mpi_write): Write the length header also for
opaque MPIs.
(gpg_mpi_write_nohdr): New.
(do_key): Use gpg_mpi_write_nohdr depending on algorithm.
(do_pubkey_enc): Ditto.
* g10/ecdh.c (pk_ecdh_encrypt_with_shared_point): Use
gpg_mpi_write_nohdr.
* g10/export.c (transfer_format_to_openpgp):
* g10/keygen.c (ecckey_from_sexp): Return the error.
(gen_ecc): Repalce arg NBITS by CURVE.
(read_parameter_file): Add keywords "Key-Curve" and "Subkey-Curve".
(ask_curve): New.
(generate_keypair, generate_subkeypair): Use ask_curve.
(do_generate_keypair): Also pass curve name.
* g10/keylist.c (list_keyblock_print, list_keyblock_colon): Print
curve name.
* g10/parse-packet.c (mpi_read): Remove workaround for
Libcgrypt < 1.5.
(parse_key): Fix ECC case.  Print the curve name.
* g10/pkglue.c (mpi_from_sexp): Rename to get_mpi_from_sexp.
(pk_verify, pk_check_secret_key): Add special case for Ed25519.
* g10/seskey.c (encode_md_value): Ditto.
* g10/sign.c (do_sign, hash_for, sign_file): Ditto.
--

Be warned that this code is subject to further changes and that the
format will very likely change before a release.  There are also known
bugs and missing code.

Signed-off-by: Werner Koch <wk@gnupg.org>
2013-11-15 09:01:11 +01:00
Werner Koch
b008274afd Nuked almost all trailing white space.
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.
2011-02-04 12:57:53 +01:00
Werner Koch
328a642aa5 Fixed the ECC interface to Libgcrypt to be ABI compatible with the previous version.
Quite some changes were needed but in the end we have less code than
before.  Instead of trying to do everything with MPIs and pass them
back and forth between Libgcrypt and GnuPG, we know use the
S-expression based interface and make heavy use of our opaque MPI
feature.

Encryption, decryption, signing and verification work with
self-generared keys.

Import and export does not yet work; thus it was not possible to check
the test keys at https://sites.google.com/site/brainhub/pgpecckeys .
2011-01-31 15:44:24 +01:00
Werner Koch
358afc0dc8 Function name cleanups
Also nuked some trailing spaces.
2011-01-26 17:17:43 +01:00
Werner Koch
c212133918 Remove cruft.
Make --gen-revoke work
2010-10-21 10:25:03 +00:00
Werner Koch
cc99c37549 Make public key data structure easier to read.
Check vor v1 card while signing.
2010-10-20 11:33:50 +00:00
Werner Koch
bfbd80feb9 Exporting secret keys via gpg-agent is now basically supported.
A couple of forward ported changes.
Doc updates.
2010-10-01 20:33:53 +00:00
Werner Koch
299ed4c9e2 Removed more secret key related code.
It builds fine and passes some of the tests but there are quite some
features which don't work yet.
2010-09-06 19:57:42 +00:00
Werner Koch
a0b9ebfb7d Even less prompts for a new key now. 2010-09-01 12:49:05 +00:00
Werner Koch
ac823ac671 Re-indent and changed return type. 2010-04-21 17:30:07 +00:00
Werner Koch
21b0a955be Generating an OpenPGP key cia gpg-agent basically works. 2010-04-20 17:57:50 +00:00
Werner Koch
d8b1099d01 Merged jnlib into common. 2010-03-10 12:24:58 +00:00
Werner Koch
8459bcf95a Various changes to eventually support openpgp keys in pgp-agent.
Comment fixes.
Minor chnages in preparation of a W32CE port.
2010-02-02 14:06:19 +00:00
Werner Koch
9a96043be4 Unification of the search descriptor usage. 2009-12-08 16:30:33 +00:00
Werner Koch
71625f56fd Implement the server comamnd DECRYPT.
Use int instead of gnupg_fd_t in the server.
Comment fixes.
Rename encr-data.c -> decrypt-data.c
2009-10-02 14:57:55 +00:00
Werner Koch
35ab964c86 Fix bug#1122.
Note that msgmerge 0.17 is completely broken as it always
prepends a fuzzy null entry to all po files.
2009-09-03 20:51:55 +00:00
Werner Koch
93d3811abc Changed to GPLv3.
Removed intl/.
2007-07-04 19:49:40 +00:00
David Shaw
3bcccb1666 * packet.h, mainproc.c (reset_literals_seen): New function to reset
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-05-03 04:44:12 +00:00
Werner Koch
12ca74c836 Started to code a --server mode.
It is far from being ready!
2006-12-21 19:40:00 +00:00
Werner Koch
4b48bcacc9 Fix for bug 537 2006-10-02 11:54:35 +00:00
Werner Koch
0ebd23fa76 Migrated more stuff to doc/
Migrated the gpg regression tests.
Some changes tp the gpg code to fix bugs and
for the use in testing. 
make distcheck works now with gpg enabled.
2006-08-21 20:20:23 +00:00
Werner Koch
29b23dea97 Merged with gpg 1.4.3 code.
The gpg part does not yet build.
2006-04-19 11:26:11 +00:00
Werner Koch
4c66e94ff9 Merged most of David Shaw's changes in 1.3 since 2003-06-03. 2003-09-23 17:48:33 +00:00
Werner Koch
39046ea7ec * app-openpgp.c (store_fpr): Fixed fingerprint calculation.
* keygen.c (gen_card_key): Obviously we should use the creation
date received from SCDAEMON, so that the fingerprints will match.
* sign.c (do_sign): Pass the serialno to the sign code.
* keyid.c (serialno_and_fpr_from_sk): New.
2003-07-01 08:34:45 +00:00
Werner Koch
c0c2c58054 Finished the bulk of changes for gnupg 1.9. This included switching
to libgcrypt functions, using shared error codes from libgpg-error,
replacing the old functions we used to have in ../util by those in
../jnlib and ../common, renaming the malloc functions and a couple of
types.  Note, that not all changes are listed below becuause they are
too similar and done at far too many places.  As of today the code
builds using the current libgcrypt from CVS but it is very unlikely
that it actually works.
2003-06-18 19:56:13 +00:00
Repo Admin
7250331472 This commit was manufactured by cvs2svn to create branch
'GNUPG-1-9-BRANCH'.
2003-06-05 07:14:21 +00:00
Repo Admin
82a17c9fb3 This commit was manufactured by cvs2svn to create branch
'GNUPG-1-9-BRANCH'.
2002-10-19 07:55:27 +00:00
David Shaw
fcefffcb00 * keylist.c (print_capabilities): Secret-parts-missing keys should show
that fact in the capabilities, and only primary signing keys can certify
other keys.

* packet.h, parse_packet.c (parse_key): Add is_primary flag for public
keys (it already exists for secret keys).
2002-10-03 19:20:37 +00:00
Werner Koch
b324a5d2d1 Cleanups and minor fixes. 2002-09-10 08:40:12 +00:00
David Shaw
b672df87d6 * packet.h, build-packet.c (build_attribute_subpkt), exec.c (expand_args),
mkdtemp.c (mkdtemp), photoid.c (parse_image_header): Fix some signedness
compiler warnings.
2002-07-01 16:40:52 +00:00
David Shaw
3f51f7db3d Update head to match stable 1.0 2002-06-29 13:46:34 +00:00
Werner Koch
c287a8d05b Add features packet and fixes MIPS3. 2000-10-11 17:26:49 +00:00
Werner Koch
14974bc5d7 See ChangeLog: Fri Oct 6 14:29:16 CEST 2000 Werner Koch 2000-10-06 12:28:44 +00:00
Werner Koch
986d928ce2 See ChangeLog: Mon Sep 18 16:35:45 CEST 2000 Werner Koch 2000-09-18 14:35:34 +00:00
Werner Koch
92cd255508 See ChangeLog: Fri Jul 14 19:38:23 CEST 2000 Werner Koch 2000-07-14 17:34:53 +00:00
Werner Koch
14a2e006bc See ChangeLog: Mon Mar 13 19:22:46 CET 2000 Werner Koch 2000-03-13 18:19:12 +00:00
Werner Koch
100fc8da59 See ChangeLog: Mon Jan 31 16:37:34 CET 2000 Werner Koch 2000-01-31 15:27:03 +00:00
Werner Koch
baa30ad117 See ChangeLog: Thu Jan 27 18:00:44 CET 2000 Werner Koch 2000-01-27 16:50:45 +00:00
Werner Koch
4555c0be94 See ChangeLog: Wed Dec 8 21:58:32 CET 1999 Werner Koch 1999-12-08 21:03:03 +00:00
Werner Koch
881e513237 See ChangeLog: Sat Nov 13 17:44:23 CET 1999 Werner Koch 1999-11-13 16:43:23 +00:00
Werner Koch
cf70ca8d68 See ChangeLog: Tue Oct 26 14:10:21 CEST 1999 Werner Koch 1999-10-26 12:14:37 +00:00
Werner Koch
88a916cdd4 See ChangeLog: Tue Aug 31 17:20:44 CEST 1999 Werner Koch 1999-08-31 15:30:12 +00:00
Werner Koch
c5ca275573 See ChangeLog: Thu Jul 8 16:21:27 CEST 1999 Werner Koch 1999-07-08 14:24:35 +00:00
Werner Koch
d5fd04e0ce See ChangeLog: Wed May 26 14:36:29 CEST 1999 Werner Koch 1999-05-26 12:41:46 +00:00
Werner Koch
3983f30bd2 See ChangeLog: Mon May 17 21:54:43 CEST 1999 Werner Koch 1999-05-17 20:03:24 +00:00
Werner Koch
a1dcec76c1 See ChangeLog: Sat May 8 19:28:33 CEST 1999 Werner Koch 1999-05-08 17:35:16 +00:00
Werner Koch
bbf86c6e59 See ChangeLog: Mon Apr 26 17:48:15 CEST 1999 Werner Koch 1999-04-26 15:53:01 +00:00
Werner Koch
1feae2011c See ChangeLog: Sun Apr 18 10:11:28 CEST 1999 Werner Koch 1999-04-18 08:18:52 +00:00
Werner Koch
7d0efec7cf See ChangeLog: Thu Jan 7 18:00:58 CET 1999 Werner Koch 1999-01-07 17:05:48 +00:00
Werner Koch
750d74333c See ChangeLog: Wed Dec 23 13:34:22 CET 1998 Werner Koch 1998-12-23 12:41:40 +00:00
Werner Koch
7a7a5630af See ChangeLog: Mon Dec 14 21:18:49 CET 1998 Werner Koch 1998-12-14 20:22:42 +00:00
Werner Koch
ab986970eb See ChangeLog: Tue Dec 8 13:15:16 CET 1998 Werner Koch 1998-12-08 12:20:53 +00:00
Werner Koch
6e16296864 Snapshot release 0.4.2 1998-10-18 15:21:22 +00:00
Werner Koch
e81e0970f7 last local commit 1998-10-16 16:00:17 +00:00
Werner Koch
6f73ec963a *** empty log message *** 1998-10-01 07:23:00 +00:00
Werner Koch
48da5f940b *** empty log message *** 1998-09-11 05:47:32 +00:00
Werner Koch
9b609091ab intermediate check in 1998-08-05 16:51:59 +00:00
Werner Koch
5ae562b41d edit-key is now complete 1998-07-29 19:35:05 +00:00
Werner Koch
0a76a4465b sync 1998-07-14 17:10:28 +00:00
Werner Koch
e143f23c23 fixed severe exploit 1998-07-09 13:37:17 +00:00
Werner Koch
5aed77d1db fixed clearsig stuff 1998-07-08 09:29:43 +00:00
Werner Koch
a9ec668cbe intermediate release 1998-07-06 10:23:57 +00:00
Werner Koch
97090f1293 partly added creation of OP partial length headers 1998-07-02 19:31:46 +00:00
Werner Koch
77a6af76d0 textual changes 1998-06-29 12:30:57 +00:00
Werner Koch
06fd61d081 nearly ready for 0.3.0 1998-06-25 10:19:08 +00:00
Werner Koch
37d2adfe61 a whole bunch of internal cleanups 1998-06-13 06:59:14 +00:00
Werner Koch
d9b3dc0000 update from tobold 1998-06-11 07:16:50 +00:00
Werner Koch
1ece02aa54 Sicherung 1998-06-09 15:14:06 +00:00
Werner Koch
eed2faab53 add-key works 1998-05-26 13:38:00 +00:00
Werner Koch
0e5a31d7be can create v4 signatures 1998-05-13 17:53:36 +00:00
Werner Koch
2cd12c5c8f fixed last passphrase bug 1998-05-03 19:35:33 +00:00
Werner Koch
823d39fd55 Aenderungen in der Eifel 1998-05-03 15:42:08 +00:00
Werner Koch
700c438def applied Mathews typo and grammar fixes 1998-04-14 17:51:16 +00:00
Werner Koch
8b10a87908 test release 1998-04-08 19:49:02 +00:00
Werner Koch
303b1084d5 release 0.2.14 1998-04-02 10:30:03 +00:00
Werner Koch
6b91e7762c some cleanups 1998-03-19 15:27:29 +00:00
Werner Koch
a6a8f1e706 partial DSA support 1998-03-09 21:44:06 +00:00
Werner Koch
5a05af2bca Renamed to GNUPG 1998-02-24 18:50:46 +00:00
Werner Koch
b758180325 added revcation stuff and fixed a couple of bugs 1998-02-18 13:58:46 +00:00
Werner Koch
c8bb57d05d import works 1998-02-17 20:48:52 +00:00
Werner Koch
4c0c155922 a couple of changes; but some parts are now broken 1998-02-11 03:25:44 +00:00
Werner Koch
4539178dae *** empty log message *** 1998-01-30 16:23:16 +00:00
Werner Koch
4ec1775f3e added some trust model stuff 1998-01-16 21:15:24 +00:00
Werner Koch
922e57dd57 *** empty log message *** 1998-01-13 19:04:23 +00:00
Werner Koch
ed36092588 started with trust stuff 1998-01-12 10:18:17 +00:00
Werner Koch
0d9ffec5ef Bug in blowfish behoben 1998-01-06 21:01:36 +00:00
Werner Koch
b7bdef0834 added more stuff 1998-01-02 20:40:10 +00:00
Werner Koch
c351df1dc5 changed configuration stuff, replaced some Makefile.am by distfiles. 1997-12-23 17:30:18 +00:00
Werner Koch
68ea0f4353 added option file handling 1997-12-12 12:03:58 +00:00
Werner Koch
935965049d fingerprints and self signatures added 1997-12-09 12:46:23 +00:00
Werner Koch
3b1b6f9d98 detached signatures are working 1997-12-03 10:20:03 +00:00
Werner Koch
cccf1efa4b Sicherung 1997-12-02 19:36:53 +00:00
Werner Koch
5c1cca042e List and check sigs works 1997-12-01 10:33:23 +00:00
Werner Koch
46900fbd43 ElGamal funktioniert und ist default 1997-11-24 22:24:04 +00:00
Werner Koch
a51cca90b6 IDEA removed, signing works 1997-11-24 11:04:11 +00:00