diff --git a/VERSION b/VERSION index 929fe7769..e86e8a37c 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1 @@ -1.0.3b - +1.0.3c diff --git a/doc/ChangeLog b/doc/ChangeLog index bca46abef..fcf681793 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2000-10-14 Werner Koch + + * faq.raw: Add an answer to the problem of multiple signatures. + Wed Oct 4 15:50:18 CEST 2000 Werner Koch * gpgv.sgml: New. @@ -10,11 +14,11 @@ Thu Sep 14 14:20:38 CEST 2000 Werner Koch Wed Jul 12 13:32:06 CEST 2000 Werner Koch - * gpg.sgml: Add a note about the availability of the GPH. + * gpg.sgml: Add a note about the availability of the GPH. 2000-07-03 13:59:24 Werner Koch (wk@habibti.openit.de) - * DETAILS, FAQ: Typo fixes by Yosiaki IIDA. + * DETAILS, FAQ: Typo fixes by Yosiaki IIDA. 2000-05-12 10:57:21 Werner Koch (wk@habibti.openit.de) diff --git a/doc/faq.raw b/doc/faq.raw index 59c4e1b7c..872a55419 100644 --- a/doc/faq.raw +++ b/doc/faq.raw @@ -14,7 +14,7 @@ The most recent version of the FAQ is available from [H pre] Version: 0.2 -Last-Modified: Oct 01, 2000 +Last-Modified: Oct 14, 2000 Maintained-by: [$maintainer] [H/pre] @@ -466,6 +466,16 @@ in it - why? Good mail clients remove those extra dashes when displaying such a message. + I have multiple signatures in a file and GnuPG says, the signatures are + bad. + + Due to different message formats GnuPG is not always able to split such a + file unambiguously into the it's parts. The result is that GnuPG claims + the signature(s) is bad. + + The only way to have multiple signatures in a file is by using the + OpenPGP format with one-pass-signature packets (which is GnuPG's + default) or the cleartext signed format. ADVANCED TOPICS diff --git a/g10/ChangeLog b/g10/ChangeLog index b3887cdae..757e6ff00 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,12 @@ +2000-10-14 Werner Koch + + * 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 * mainproc.c (add_gpg_control): New. diff --git a/g10/mainproc.c b/g10/mainproc.c index ac9aecc66..6917238c4 100644 --- a/g10/mainproc.c +++ b/g10/mainproc.c @@ -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 ); }