1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-03 22:56:33 +02:00

More fixes to the multiple sig problem.

This commit is contained in:
Werner Koch 2000-10-14 16:45:20 +00:00
parent 3670933210
commit d94440db99
5 changed files with 38 additions and 7 deletions

View file

@ -1,3 +1,12 @@
2000-10-14 Werner Koch <wk@gnupg.org>
* mainproc.c (add_onepass_sig): There is an easier solution to the
error fixed yesterday; just check that we only have onepass
packets. However, the other solution provides an cleaner
interface and opens the path to get access to other information
from the armore headers.
(release_list): Reset some more variables.
2000-10-13 Werner Koch <wk@gnupg.org>
* mainproc.c (add_gpg_control): New.

View file

@ -95,6 +95,9 @@ release_list( CTX c )
}
c->failed_pkenc = NULL;
c->list = NULL;
c->have_data = 0;
c->last_was_session_key = 0;
m_free(c->dek); c->dek = NULL;
}
@ -104,8 +107,14 @@ add_onepass_sig( CTX c, PACKET *pkt )
KBNODE node;
if( c->list ) { /* add another packet */
if( c->list->pkt->pkttype != PKT_ONEPASS_SIG ) {
log_error("add_onepass_sig: another packet is in the way\n");
/* We can only append another onepass packet if the list
* does contain only onepass packets */
for( node=c->list; node && node->pkt->pkttype == PKT_ONEPASS_SIG;
node = node->next )
;
if( node ) {
/* this is not the case, so we flush the current thing and
* allow this packet to start a new verification thing */
release_list( c );
c->list = new_kbnode( pkt );
}