mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
See ChangeLog: Mon May 17 21:54:43 CEST 1999 Werner Koch
This commit is contained in:
parent
a1dcec76c1
commit
3983f30bd2
24 changed files with 378 additions and 182 deletions
|
@ -43,6 +43,7 @@ static int do_pubkey_enc( IOBUF out, int ctb, PKT_pubkey_enc *enc );
|
|||
static u32 calc_plaintext( PKT_plaintext *pt );
|
||||
static int do_plaintext( IOBUF out, int ctb, PKT_plaintext *pt );
|
||||
static int do_encrypted( IOBUF out, int ctb, PKT_encrypted *ed );
|
||||
static int do_encrypted_mdc( IOBUF out, int ctb, PKT_encrypted *ed );
|
||||
static int do_compressed( IOBUF out, int ctb, PKT_compressed *cd );
|
||||
static int do_signature( IOBUF out, int ctb, PKT_signature *sig );
|
||||
static int do_onepass_sig( IOBUF out, int ctb, PKT_onepass_sig *ops );
|
||||
|
@ -74,7 +75,8 @@ build_packet( IOBUF out, PACKET *pkt )
|
|||
switch( pkt->pkttype ) {
|
||||
case PKT_OLD_COMMENT: pkt->pkttype = PKT_COMMENT; break;
|
||||
case PKT_PLAINTEXT: new_ctb = pkt->pkt.plaintext->new_ctb; break;
|
||||
case PKT_ENCRYPTED: new_ctb = pkt->pkt.encrypted->new_ctb; break;
|
||||
case PKT_ENCRYPTED:
|
||||
case PKT_ENCRYPTED_MDC: new_ctb = pkt->pkt.encrypted->new_ctb; break;
|
||||
case PKT_COMPRESSED:new_ctb = pkt->pkt.compressed->new_ctb; break;
|
||||
default: break;
|
||||
}
|
||||
|
@ -110,6 +112,9 @@ build_packet( IOBUF out, PACKET *pkt )
|
|||
case PKT_ENCRYPTED:
|
||||
rc = do_encrypted( out, ctb, pkt->pkt.encrypted );
|
||||
break;
|
||||
case PKT_ENCRYPTED_MDC:
|
||||
rc = do_encrypted_mdc( out, ctb, pkt->pkt.encrypted );
|
||||
break;
|
||||
case PKT_COMPRESSED:
|
||||
rc = do_compressed( out, ctb, pkt->pkt.compressed );
|
||||
break;
|
||||
|
@ -171,7 +176,7 @@ write_fake_data( IOBUF out, MPI a )
|
|||
void *p;
|
||||
|
||||
p = mpi_get_opaque( a, &i );
|
||||
iobuf_write( a, p, i );
|
||||
iobuf_write( out, p, i );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -508,6 +513,24 @@ do_encrypted( IOBUF out, int ctb, PKT_encrypted *ed )
|
|||
return rc;
|
||||
}
|
||||
|
||||
static int
|
||||
do_encrypted_mdc( IOBUF out, int ctb, PKT_encrypted *ed )
|
||||
{
|
||||
int rc = 0;
|
||||
u32 n;
|
||||
|
||||
assert( ed->mdc_method );
|
||||
|
||||
n = ed->len ? (ed->len + 10) : 0;
|
||||
write_header(out, ctb, n );
|
||||
iobuf_put(out, 1 ); /* version */
|
||||
iobuf_put(out, ed->mdc_method );
|
||||
|
||||
/* This is all. The caller has to write the real data */
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
static int
|
||||
do_compressed( IOBUF out, int ctb, PKT_compressed *cd )
|
||||
{
|
||||
|
@ -560,6 +583,7 @@ find_subpkt( byte *buffer, sigsubpkttype_t reqtype,
|
|||
if( buflen < 2 )
|
||||
break;
|
||||
n = (( n - 192 ) << 8) + *buffer + 192;
|
||||
buffer++;
|
||||
buflen--;
|
||||
}
|
||||
if( buflen < n )
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue