diff --git a/ChangeLog b/ChangeLog index 837bd04cd..ddcab78cd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Wed Aug 23 19:52:51 CEST 2000 Werner Koch + + * acinclude.m4 (GNUPG_CHECK_MLOCK): Removed that silly mkdir(). + Wed Jul 19 11:26:43 CEST 2000 Werner Koch * configure.in (mingw32): Changes to allow for mingw32msvc diff --git a/PROJECTS b/PROJECTS index 85b45765d..6b4aa6efb 100644 --- a/PROJECTS +++ b/PROJECTS @@ -15,8 +15,9 @@ * add an option to re-create a public key from a secret key; we can do this in trustdb.c:verify_own_keys. (special tool?) - - * rewrite --list-packets or put it into another tool. + Hmmm, we better drop the duplication of the public part and just keep + the secrets in the "secring" - this has the additional that we can + put those secrets on a hardware token. * write a tool to extract selected keys from a file. diff --git a/THANKS b/THANKS index 2995b065f..e95713c92 100644 --- a/THANKS +++ b/THANKS @@ -63,6 +63,7 @@ James Troup james@nocrew.org Jean-loup Gailly gzip@prep.ai.mit.edu Jeff Long long@kestrel.cc.ukans.edu Jens Bachem bachem@rrz.uni-koeln.de +Jeroen C. van Gelderen jeroen@vangelderen.org J Horacio MG homega@ciberia.es Joachim Backes backes@rhrk.uni-kl.de John A. Martin jam@jamux.com diff --git a/TODO b/TODO index bf37cecc6..b94894a61 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,7 @@ - * setmode(BINARY) is missing + * configure option to set EGD entropy socket name + + * handle --output /dev/null * Don't get the ultimately trusted keys from the secring but store it permanently in the trustdb. This way we don't need a secring at all. diff --git a/acinclude.m4 b/acinclude.m4 index 0e4bee762..259a3703e 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -333,7 +333,7 @@ define(GNUPG_CHECK_MLOCK, #endif ], [ int i; - mkdir ("foo", 0); + /* glibc defines this for functions which it implements * to always fail with ENOSYS. Some functions are actually * named something starting with __ and the normal name diff --git a/doc/gpg.sgml b/doc/gpg.sgml index 5142ff871..1b70b65d0 100644 --- a/doc/gpg.sgml +++ b/doc/gpg.sgml @@ -1189,6 +1189,14 @@ needed for some German keys generated with pgp 2.6.3in. You should really avoid using it, because OpenPGP has better mechanics to do separate signing and encryption keys. + + +--allow-freeform-uid + +Disable all checks on the form of the user ID while generating a new +one. This option should only be used in very special environments as +it does not ensure the de-facto standard format of user IDs. + diff --git a/g10/ChangeLog b/g10/ChangeLog index 54f8420de..31d777ad7 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,8 @@ +Wed Aug 23 19:52:51 CEST 2000 Werner Koch + + * g10.c: New option --allow-freeform-uid. By Jeroen C. van Gelderen. + * keygen.c (ask_user_id): Implemented here. + Fri Aug 4 14:23:05 CEST 2000 Werner Koch * status.c (do_get_from_fd): Ooops, we used fd instead of opt.command_fd. diff --git a/g10/g10.c b/g10/g10.c index 49bd67ffc..7b1dfaf9c 100644 --- a/g10/g10.c +++ b/g10/g10.c @@ -182,6 +182,7 @@ enum cmd_and_opt_values { aNull = 0, oDisableCipherAlgo, oDisablePubkeyAlgo, oAllowNonSelfsignedUID, + oAllowFreeformUID, oNoLiteral, oSetFilesize, oHonorHttpProxy, @@ -368,6 +369,7 @@ static ARGPARSE_OPTS opts[] = { { oDisableCipherAlgo, "disable-cipher-algo", 2, "@" }, { oDisablePubkeyAlgo, "disable-pubkey-algo", 2, "@" }, { oAllowNonSelfsignedUID, "allow-non-selfsigned-uid", 0, "@" }, + { oAllowFreeformUID, "allow-freeform-uid", 0, "@" }, { oNoLiteral, "no-literal", 0, "@" }, { oSetFilesize, "set-filesize", 20, "@" }, { oHonorHttpProxy,"honor-http-proxy", 0, "@" }, @@ -920,6 +922,7 @@ main( int argc, char **argv ) disable_pubkey_algo( string_to_pubkey_algo(pargs.r.ret_str) ); break; case oAllowNonSelfsignedUID: opt.allow_non_selfsigned_uid = 1; break; + case oAllowFreeformUID: opt.allow_freeform_uid = 1; break; case oNoLiteral: opt.no_literal = 1; break; case oSetFilesize: opt.set_filesize = pargs.r.ret_ulong; break; case oHonorHttpProxy: opt.honor_http_proxy = 1; break; diff --git a/g10/keygen.c b/g10/keygen.c index 58642e103..a98ec53f2 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -793,7 +793,11 @@ ask_user_id( int mode ) aname = cpr_get("keygen.name",_("Real name: ")); trim_spaces(aname); cpr_kill_prompt(); - if( strpbrk( aname, "<([])>" ) ) + + if( opt.allow_freeform_uid ) + break; + + if( strpbrk( aname, "<>" ) ) tty_printf(_("Invalid character in name\n")); else if( isdigit(*aname) ) tty_printf(_("Name may not start with a digit\n")); diff --git a/g10/options.h b/g10/options.h index 95881092a..18abd7ce4 100644 --- a/g10/options.h +++ b/g10/options.h @@ -84,6 +84,7 @@ struct { const char *set_policy_url; int use_embedded_filename; int allow_non_selfsigned_uid; + int allow_freeform_uid; int no_literal; ulong set_filesize; int honor_http_proxy;