Typo fixes.

Made --default-key work for gpgsm
Add --default-key and --encrypt-to to gpgconf.
This commit is contained in:
Werner Koch 2007-07-17 18:11:24 +00:00
parent 2d4e157d85
commit 11573b09c4
13 changed files with 70 additions and 14 deletions

4
NEWS
View File

@ -1,6 +1,10 @@
Noteworthy changes in version 2.0.6 Noteworthy changes in version 2.0.6
------------------------------------------------ ------------------------------------------------
* gpgsm does now grok --default-key.
* gpgconf is now aware of --default-key and --encrypt-to.
Noteworthy changes in version 2.0.5 (2007-07-05) Noteworthy changes in version 2.0.5 (2007-07-05)
------------------------------------------------ ------------------------------------------------

2
TODO
View File

@ -59,7 +59,7 @@
* scd * scd
** Application context vs. reader slot ** Application context vs. reader slot
We have 2 concurrent method of tracking whether a read is in use: We have 2 concurrent method of tracking whether a reader is in use:
Using the session_list in command.c and the lock_table in app.c. IT Using the session_list in command.c and the lock_table in app.c. IT
would be better to do this just at one place. First we need to see would be better to do this just at one place. First we need to see
how we can support cards with multiple applications. how we can support cards with multiple applications.

View File

@ -1,4 +1,4 @@
/* call-pinnetry.c - fork of the pinentry to query stuff from the user /* call-pinentry.c - fork of the pinentry to query stuff from the user
* Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. * Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
* *
* This file is part of GnuPG. * This file is part of GnuPG.

View File

@ -1,3 +1,7 @@
2007-07-17 Werner Koch <wk@g10code.com>
* gpgsm.texi (Input and Output): Document --default-key.
2007-07-04 Werner Koch <wk@g10code.com> 2007-07-04 Werner Koch <wk@g10code.com>
* gpl.texi: Updated to GPLv3. * gpl.texi: Updated to GPLv3.

View File

@ -457,6 +457,14 @@ that @command{gpgsm} itself automagically imports any file with a
passphrase encoded to the most commonly used encodings. passphrase encoded to the most commonly used encodings.
@item --default-key @var{user_id}
@opindex default-key
Use @var{user_id} as the standard key for signing. This key is used if
no other key has been defined as a signing key. Note, that the first
@option{--local-users} option also sets this key if it has not yet been
set; however @option{--default-key} always overrides this.
@item --local-user @var{user_id} @item --local-user @var{user_id}
@item -u @var{user_id} @item -u @var{user_id}
@opindex local-user @opindex local-user

View File

@ -1,3 +1,9 @@
2007-07-17 Werner Koch <wk@g10code.com>
* gpg.c (gpgconf_list): Declare --encrypt-to and --default-key.
* card-util.c (get_manufacturer): Add the unmanaged S/N range.
2007-07-12 Werner Koch <wk@g10code.com> 2007-07-12 Werner Koch <wk@g10code.com>
* gpg.c (main): Use translate_sys2libc_fd_int when passing an int * gpg.c (main): Use translate_sys2libc_fd_int when passing an int

View File

@ -153,12 +153,15 @@ get_manufacturer (unsigned int no)
/* Note: Make sure that there is no colon or linefeed in the string. */ /* Note: Make sure that there is no colon or linefeed in the string. */
switch (no) switch (no)
{ {
case 0:
case 0xffff: return "test card";
case 0x0001: return "PPC Card Systems"; case 0x0001: return "PPC Card Systems";
case 0x0002: return "Prism"; case 0x0002: return "Prism";
case 0x0003: return "OpenFortress"; case 0x0003: return "OpenFortress";
default: return "unknown"; /* 0x00000 and 0xFFFF are defined as test cards per spec,
0xFFF00 to 0xFFFE are assigned for use with randomly created
serial numbers. */
case 0x0000:
case 0xffff: return "test card";
default: return (no & 0xff00) == 0xff00? "unmanaged S/N range":"unknown";
} }
} }

View File

@ -1467,6 +1467,8 @@ gpgconf_list (const char *configfile)
printf ("quiet:%lu:\n", GC_OPT_FLAG_NONE); printf ("quiet:%lu:\n", GC_OPT_FLAG_NONE);
printf ("keyserver:%lu:\n", GC_OPT_FLAG_NONE); printf ("keyserver:%lu:\n", GC_OPT_FLAG_NONE);
printf ("reader-port:%lu:\n", GC_OPT_FLAG_NONE); printf ("reader-port:%lu:\n", GC_OPT_FLAG_NONE);
printf ("default-key:%lu:\n", GC_OPT_FLAG_NONE);
printf ("encrypt-to:%lu:\n", GC_OPT_FLAG_NONE);
xfree (configfile_esc); xfree (configfile_esc);
} }

View File

@ -1,3 +1,8 @@
2007-07-17 Werner Koch <wk@g10code.com>
* gpgsm.c (main): Implement --default-key.
(main) <gpgconf-list>: Declare --default-key and --encrypt-to.
2007-07-16 Werner Koch <wk@g10code.com> 2007-07-16 Werner Koch <wk@g10code.com>
* server.c (cmd_message): Use gnupg_fd_t to avoid dependecy on * server.c (cmd_message): Use gnupg_fd_t to avoid dependecy on

View File

@ -1101,8 +1101,11 @@ main ( int argc, char **argv)
case oNoGreeting: nogreeting = 1; break; case oNoGreeting: nogreeting = 1; break;
case oDefaultKey: case oDefaultKey:
/* fixme:opt.def_secret_key = pargs.r.ret_str;*/ if (*pargs.r.ret_str)
log_info ("WARNING: --default-key has not yet been implemented\n"); {
xfree (opt.local_user);
opt.local_user = xstrdup (pargs.r.ret_str);
}
break; break;
case oDefRecipient: case oDefRecipient:
if (*pargs.r.ret_str) if (*pargs.r.ret_str)
@ -1139,9 +1142,9 @@ main ( int argc, char **argv)
case oTextmodeShort: /*fixme:opt.textmode = 2;*/ break; case oTextmodeShort: /*fixme:opt.textmode = 2;*/ break;
case oTextmode: /*fixme:opt.textmode=1;*/ break; case oTextmode: /*fixme:opt.textmode=1;*/ break;
case oUser: /* store the local users, the first one is the default */ case oUser: /* Store the local users, the first one is the default */
if (!opt.local_user) if (!opt.local_user)
opt.local_user = pargs.r.ret_str; opt.local_user = xstrdup (pargs.r.ret_str);
add_to_strlist (&locusr, pargs.r.ret_str); add_to_strlist (&locusr, pargs.r.ret_str);
break; break;
@ -1424,6 +1427,10 @@ main ( int argc, char **argv)
GC_OPT_FLAG_DEFAULT ); GC_OPT_FLAG_DEFAULT );
printf ("p12-charset:%lu:\n", printf ("p12-charset:%lu:\n",
GC_OPT_FLAG_DEFAULT ); GC_OPT_FLAG_DEFAULT );
printf ("default-key:%lu:\n",
GC_OPT_FLAG_DEFAULT );
printf ("encrypt-to:%lu:\n",
GC_OPT_FLAG_DEFAULT );
} }
break; break;

View File

@ -122,8 +122,9 @@ hash_and_copy_data (int fd, gcry_md_hd_t md, ksba_writer_t writer)
} }
/* Get the default certificate which is defined as the first cabable /* Get the default certificate which is defined as the first
of signing our keyDB returns and has a secret key available. */ certificate capable of signing returned by the keyDB and has a
secret key available. */
int int
gpgsm_get_default_cert (ctrl_t ctrl, ksba_cert_t *r_cert) gpgsm_get_default_cert (ctrl_t ctrl, ksba_cert_t *r_cert)
{ {
@ -364,7 +365,7 @@ gpgsm_sign (ctrl_t ctrl, certlist_t signerlist,
goto leave; goto leave;
} }
/* If no list of signers is given, use a default one. */ /* If no list of signers is given, use the default certificate. */
if (!signerlist) if (!signerlist)
{ {
ksba_cert_t cert = get_default_signer (ctrl); ksba_cert_t cert = get_default_signer (ctrl);
@ -376,8 +377,7 @@ gpgsm_sign (ctrl_t ctrl, certlist_t signerlist,
} }
/* Although we don't check for ambigious specification we will /* Although we don't check for ambigious specification we will
check that the signer's certificate is is usable and check that the signer's certificate is usable and valid. */
valid. */
rc = gpgsm_cert_use_sign_p (cert); rc = gpgsm_cert_use_sign_p (cert);
if (!rc) if (!rc)
rc = gpgsm_validate_chain (ctrl, cert, NULL, 0, NULL, 0); rc = gpgsm_validate_chain (ctrl, cert, NULL, 0, NULL, 0);

View File

@ -1,3 +1,8 @@
2007-07-17 Werner Koch <wk@g10code.com>
* gpgconf-comp.c: Add --encrypt-to and --default-key to gpg and
gpgsm.
2007-07-16 Marcus Brinkmann <marcus@g10code.de> 2007-07-16 Marcus Brinkmann <marcus@g10code.de>
* gpg-connect-agent.c (main): Bail out if write fails. * gpg-connect-agent.c (main): Bail out if write fails.

View File

@ -616,6 +616,12 @@ static gc_option_t gc_options_gpg[] =
{ "Configuration", { "Configuration",
GC_OPT_FLAG_GROUP, GC_LEVEL_EXPERT, GC_OPT_FLAG_GROUP, GC_LEVEL_EXPERT,
"gnupg", N_("Options controlling the configuration") }, "gnupg", N_("Options controlling the configuration") },
{ "default-key", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC,
"gnupg", N_("|NAME|use NAME as default secret key"),
GC_ARG_TYPE_STRING, GC_BACKEND_GPG },
{ "encrypt-to", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC,
"gnupg", N_("|NAME|encrypt to user ID NAME as well"),
GC_ARG_TYPE_STRING, GC_BACKEND_GPG },
{ "options", GC_OPT_FLAG_NONE, GC_LEVEL_EXPERT, { "options", GC_OPT_FLAG_NONE, GC_LEVEL_EXPERT,
"gnupg", "|FILE|read options from FILE", "gnupg", "|FILE|read options from FILE",
GC_ARG_TYPE_PATHNAME, GC_BACKEND_GPG }, GC_ARG_TYPE_PATHNAME, GC_BACKEND_GPG },
@ -672,6 +678,12 @@ static gc_option_t gc_options_gpgsm[] =
{ "Configuration", { "Configuration",
GC_OPT_FLAG_GROUP, GC_LEVEL_EXPERT, GC_OPT_FLAG_GROUP, GC_LEVEL_EXPERT,
"gnupg", N_("Options controlling the configuration") }, "gnupg", N_("Options controlling the configuration") },
{ "default-key", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC,
"gnupg", N_("|NAME|use NAME as default secret key"),
GC_ARG_TYPE_STRING, GC_BACKEND_GPGSM },
{ "encrypt-to", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC,
"gnupg", N_("|NAME|encrypt to user ID NAME as well"),
GC_ARG_TYPE_STRING, GC_BACKEND_GPGSM },
{ "options", GC_OPT_FLAG_NONE, GC_LEVEL_EXPERT, { "options", GC_OPT_FLAG_NONE, GC_LEVEL_EXPERT,
"gnupg", "|FILE|read options from FILE", "gnupg", "|FILE|read options from FILE",
GC_ARG_TYPE_PATHNAME, GC_BACKEND_GPGSM }, GC_ARG_TYPE_PATHNAME, GC_BACKEND_GPGSM },