mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-08 12:44:23 +01:00
* getkey.c (premerge_public_with_secret): Made "no secret subkey for"
warning a verbose item and translatable. (From wk on stable branch) * sig-check.c (check_key_signature2): Made "no subkey for subkey binding packet" a verbose item instead of a !quiet one. There are too many garbled keys out in the wild. (From wk on stable branch) * filter.h: Remove const from WHAT. (From wk on stable branch) * progress.c (handle_progress): Store a copy of NAME. (progress_filter): Release WHAT, make sure not to print a NULL WHAT. (From wk on stable branch) * openfile.c (open_sigfile): Adjust free for new progress semantics. (From wk on stable branch) * plaintext.c (ask_for_detached_datafile): Don't dealloc pfx->WHAT. (From wk on stable branch) * seckey-cert.c (do_check): Issue the RSA_OR_IDEA status when the cipher algo is IDEA to make it easier to track down the problem. (From twoaday on stable branch)
This commit is contained in:
parent
951f7d9eca
commit
ad9f6ae4b5
@ -1,3 +1,29 @@
|
||||
2003-05-26 David Shaw <dshaw@jabberwocky.com>
|
||||
|
||||
* getkey.c (premerge_public_with_secret): Made "no secret subkey
|
||||
for" warning a verbose item and translatable. (From wk on stable
|
||||
branch)
|
||||
|
||||
* sig-check.c (check_key_signature2): Made "no subkey for subkey
|
||||
binding packet" a verbose item instead of a !quiet one. There are
|
||||
too many garbled keys out in the wild. (From wk on stable branch)
|
||||
|
||||
* filter.h: Remove const from WHAT. (From wk on stable branch)
|
||||
|
||||
* progress.c (handle_progress): Store a copy of
|
||||
NAME. (progress_filter): Release WHAT, make sure not to print a
|
||||
NULL WHAT. (From wk on stable branch)
|
||||
|
||||
* openfile.c (open_sigfile): Adjust free for new progress
|
||||
semantics. (From wk on stable branch)
|
||||
|
||||
* plaintext.c (ask_for_detached_datafile): Don't dealloc
|
||||
pfx->WHAT. (From wk on stable branch)
|
||||
|
||||
* seckey-cert.c (do_check): Issue the RSA_OR_IDEA status when the
|
||||
cipher algo is IDEA to make it easier to track down the
|
||||
problem. (From twoaday on stable branch)
|
||||
|
||||
2003-05-24 David Shaw <dshaw@jabberwocky.com>
|
||||
|
||||
* armor.c, g10.c, kbnode.c, misc.c, pkclist.c, sign.c,
|
||||
|
@ -110,7 +110,7 @@ typedef struct {
|
||||
|
||||
|
||||
typedef struct {
|
||||
const char *what; /* description */
|
||||
char *what; /* description */
|
||||
u32 last_time; /* last time reported */
|
||||
unsigned long last; /* last amount reported */
|
||||
unsigned long offset; /* current amount */
|
||||
|
@ -2068,8 +2068,9 @@ premerge_public_with_secret ( KBNODE pubblock, KBNODE secblock )
|
||||
if ( !sec ) {
|
||||
KBNODE next, ll;
|
||||
|
||||
log_info ( "no secret subkey "
|
||||
"for public subkey %08lX - ignoring\n",
|
||||
if (opt.verbose)
|
||||
log_info ( _("no secret subkey "
|
||||
"for public subkey %08lX - ignoring\n"),
|
||||
(ulong)keyid_from_pk (pk,NULL) );
|
||||
/* we have to remove the subkey in this case */
|
||||
assert ( last );
|
||||
|
@ -282,8 +282,7 @@ open_sigfile( const char *iname, progress_filter_context_t *pfx )
|
||||
log_info(_("assuming signed data in `%s'\n"), buf );
|
||||
if (a && pfx)
|
||||
handle_progress (pfx, a, buf);
|
||||
else
|
||||
m_free(buf);
|
||||
m_free(buf);
|
||||
}
|
||||
}
|
||||
return a;
|
||||
|
@ -358,14 +358,11 @@ ask_for_detached_datafile( MD_HANDLE md, MD_HANDLE md2,
|
||||
const char *inname, int textmode )
|
||||
{
|
||||
progress_filter_context_t pfx;
|
||||
int dealloc_pfx_name = 1;
|
||||
char *answer = NULL;
|
||||
IOBUF fp;
|
||||
int rc = 0;
|
||||
|
||||
fp = open_sigfile( inname, &pfx ); /* open default file */
|
||||
if (!fp)
|
||||
dealloc_pfx_name = 0;
|
||||
|
||||
if( !fp && !opt.batch ) {
|
||||
int any=0;
|
||||
@ -400,8 +397,6 @@ ask_for_detached_datafile( MD_HANDLE md, MD_HANDLE md2,
|
||||
}
|
||||
do_hash( md, md2, fp, textmode );
|
||||
iobuf_close(fp);
|
||||
if (dealloc_pfx_name)
|
||||
m_free ((void *)pfx.what);
|
||||
|
||||
leave:
|
||||
m_free(answer);
|
||||
@ -428,7 +423,6 @@ hash_datafiles( MD_HANDLE md, MD_HANDLE md2, STRLIST files,
|
||||
if( fp ) {
|
||||
do_hash( md, md2, fp, textmode );
|
||||
iobuf_close(fp);
|
||||
m_free ((void *)pfx.what);
|
||||
return 0;
|
||||
}
|
||||
log_error (_("no signed data\n"));
|
||||
|
@ -45,7 +45,9 @@ progress_filter (void *opaque, int control,
|
||||
pfx->offset = 0;
|
||||
pfx->last_time = make_timestamp ();
|
||||
|
||||
sprintf (buffer, "%.20s ? %lu %lu", pfx->what, pfx->offset,
|
||||
sprintf (buffer, "%.20s ? %lu %lu",
|
||||
pfx->what? pfx->what : "?",
|
||||
pfx->offset,
|
||||
pfx->total);
|
||||
write_status_text (STATUS_PROGRESS, buffer);
|
||||
}
|
||||
@ -69,7 +71,9 @@ progress_filter (void *opaque, int control,
|
||||
{
|
||||
char buffer[50];
|
||||
|
||||
sprintf (buffer, "%.20s ? %lu %lu", pfx->what, pfx->offset,
|
||||
sprintf (buffer, "%.20s ? %lu %lu",
|
||||
pfx->what? pfx->what : "?",
|
||||
pfx->offset,
|
||||
pfx->total);
|
||||
write_status_text (STATUS_PROGRESS, buffer);
|
||||
|
||||
@ -77,6 +81,14 @@ progress_filter (void *opaque, int control,
|
||||
pfx->last_time = timestamp;
|
||||
}
|
||||
}
|
||||
else if (control == IOBUFCTRL_FREE)
|
||||
{
|
||||
/* Note, that we must always dealloc resources of a filter
|
||||
within the filter handler and not anywhere else. (We set it
|
||||
to NULL and check all uses just in case.) */
|
||||
m_free (pfx->what);
|
||||
pfx->what = NULL;
|
||||
}
|
||||
else if (control == IOBUFCTRL_DESC)
|
||||
*(char**)buf = "progress_filter";
|
||||
return rc;
|
||||
@ -99,7 +111,7 @@ handle_progress (progress_filter_context_t *pfx, IOBUF inp, const char *name)
|
||||
filesize = opt.set_filesize;
|
||||
|
||||
/* register the progress filter */
|
||||
pfx->what = name ? name : "stdin";
|
||||
pfx->what = m_strdup (name ? name : "stdin");
|
||||
pfx->total = filesize;
|
||||
iobuf_push_filter (inp, progress_filter, pfx);
|
||||
}
|
||||
|
@ -59,8 +59,11 @@ do_check( PKT_secret_key *sk, const char *tryagain_text, int mode,
|
||||
if( check_cipher_algo( sk->protect.algo ) ) {
|
||||
log_info(_("protection algorithm %d%s is not supported\n"),
|
||||
sk->protect.algo,sk->protect.algo==1?" (IDEA)":"" );
|
||||
if(sk->protect.algo==CIPHER_ALGO_IDEA)
|
||||
idea_cipher_warn(0);
|
||||
if (sk->protect.algo==CIPHER_ALGO_IDEA)
|
||||
{
|
||||
write_status (STATUS_RSA_OR_IDEA);
|
||||
idea_cipher_warn (0);
|
||||
}
|
||||
return G10ERR_CIPHER_ALGO;
|
||||
}
|
||||
keyid_from_sk( sk, keyid );
|
||||
|
@ -574,9 +574,9 @@ check_key_signature2( KBNODE root, KBNODE node, PKT_public_key *check_pk,
|
||||
md_close(md);
|
||||
}
|
||||
else {
|
||||
if (!opt.quiet)
|
||||
log_info ("key %08lX: no subkey for subkey "
|
||||
"binding signature\n",(ulong)keyid_from_pk(pk,NULL));
|
||||
if (opt.verbose)
|
||||
log_info ("key %08lX: no subkey for subkey binding packet\n",
|
||||
(ulong)keyid_from_pk (pk, NULL));
|
||||
rc = G10ERR_SIG_CLASS;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user