1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-02 22:46:30 +02:00

New gpgsm server option no-encrypt-to.

Add caching for symkey encryption.
Minor cleanups.
This commit is contained in:
Werner Koch 2009-05-18 17:38:34 +00:00
parent f61e15670a
commit 387a51f951
12 changed files with 70 additions and 30 deletions

View file

@ -1,3 +1,10 @@
2009-05-18 Werner Koch <wk@g10code.com>
* server.c (option_handler): New option "no-encrypt-to".
(cmd_encrypt): Make use of it.
* gpgsm.c: Remove not implemented --verify-files.
2009-04-02 Werner Koch <wk@g10code.com>
* keylist.c (list_cert_std): Print card serial number.

View file

@ -66,7 +66,6 @@ enum cmd_and_opt_values {
aDeleteKey,
aImport,
aVerify,
aVerifyFiles,
aListExternalKeys,
aListChain,
aSendKeys,
@ -191,7 +190,6 @@ static ARGPARSE_OPTS opts[] = {
ARGPARSE_c (aSym, "symmetric", N_("encryption only with symmetric cipher")),
ARGPARSE_c (aDecrypt, "decrypt", N_("decrypt data (default)")),
ARGPARSE_c (aVerify, "verify", N_("verify a signature")),
ARGPARSE_c (aVerifyFiles, "verify-files", "@"),
ARGPARSE_c (aListKeys, "list-keys", N_("list keys")),
ARGPARSE_c (aListExternalKeys, "list-external-keys",
N_("list external keys")),
@ -1711,10 +1709,6 @@ main ( int argc, char **argv)
}
break;
case aVerifyFiles:
log_error (_("this command has not yet been implemented\n"));
break;
case aDecrypt:
{
FILE *fp = open_fwrite (opt.outfile?opt.outfile:"-");

View file

@ -51,6 +51,7 @@ struct server_local_s {
certlist_t default_recplist; /* As set by main() - don't release. */
int allow_pinentry_notify; /* Set if pinentry notifications should
be passed back to the client. */
int no_encrypt_to; /* Local version of option. */
};
@ -301,6 +302,10 @@ option_handler (assuan_context_t ctx, const char *key, const char *value)
int i = *value? atoi (value) : 0;
ctrl->with_ephemeral_keys = i;
}
else if (!strcmp (key, "no-encrypt-to"))
{
ctrl->server_local->no_encrypt_to = 1;
}
else
return gpg_error (GPG_ERR_UNKNOWN_OPTION);
@ -486,7 +491,7 @@ cmd_encrypt (assuan_context_t ctx, char *line)
/* Now add all encrypt-to marked recipients from the default
list. */
rc = 0;
if (!opt.no_encrypt_to)
if (!opt.no_encrypt_to && !ctrl->server_local->no_encrypt_to)
{
for (cl=ctrl->server_local->default_recplist; !rc && cl; cl = cl->next)
if (cl->is_encrypt_to)