aboutsummaryrefslogtreecommitdiffstats
path: root/g10/mainproc.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>1999-05-26 12:41:46 +0000
committerWerner Koch <[email protected]>1999-05-26 12:41:46 +0000
commitd5fd04e0ce438d3eaa951566982a0824e48eb1ef (patch)
treeadc1eca7d7eab0d3982ae388be4f592118bf5d7e /g10/mainproc.c
parentSee ChangeLog: Tue May 25 19:50:32 CEST 1999 Werner Koch (diff)
downloadgnupg-d5fd04e0ce438d3eaa951566982a0824e48eb1ef.tar.gz
gnupg-d5fd04e0ce438d3eaa951566982a0824e48eb1ef.zip
See ChangeLog: Wed May 26 14:36:29 CEST 1999 Werner Koch
Diffstat (limited to 'g10/mainproc.c')
-rw-r--r--g10/mainproc.c50
1 files changed, 30 insertions, 20 deletions
diff --git a/g10/mainproc.c b/g10/mainproc.c
index 6eb587fe9..3de95e61c 100644
--- a/g10/mainproc.c
+++ b/g10/mainproc.c
@@ -497,29 +497,39 @@ print_notation_data( PKT_signature *sig )
{
size_t n, n1, n2;
const byte *p;
+ int seq = 0;
- /* FIXME: we can not handle multiple notaion data packets yet */
- p = parse_sig_subpkt( sig->hashed_data, SIGSUBPKT_NOTATION, &n );
- if( !p )
- return;
- if( n < 8 ) {
- log_info(_("WARNING: invalid notation data found\n"));
- return;
+ while( (p = enum_sig_subpkt( sig->hashed_data, SIGSUBPKT_NOTATION,
+ &n, &seq )) ) {
+ if( n < 8 ) {
+ log_info(_("WARNING: invalid notation data found\n"));
+ return;
+ }
+ if( !(*p & 0x80) )
+ return; /* not human readable */
+ n1 = (p[4] << 8) | p[5];
+ n2 = (p[6] << 8) | p[7];
+ p += 8;
+ if( 8+n1+n2 != n ) {
+ log_info(_("WARNING: invalid notation data found\n"));
+ return;
+ }
+ log_info(_("Notation: ") );
+ print_string( log_stream(), p, n1, 0 );
+ putc( '=', log_stream() );
+ print_string( log_stream(), p+n1, n2, 0 );
+ putc( '\n', log_stream() );
}
- if( !(*p & 0x80) )
- return; /* not human readable */
- n1 = (p[4] << 8) | p[5];
- n2 = (p[6] << 8) | p[7];
- p += 8;
- if( 8+n1+n2 != n ) {
- log_info(_("WARNING: invalid notation data found\n"));
- return;
+ if( (p = parse_sig_subpkt( sig->hashed_data, SIGSUBPKT_POLICY, &n ) )) {
+ log_info(_("Policy: ") );
+ print_string( log_stream(), p, n, 0 );
+ putc( '\n', log_stream() );
}
- log_info(_("Notation: ") );
- print_string( log_stream(), p, n1, 0 );
- putc( '=', log_stream() );
- print_string( log_stream(), p+n1, n2, 0 );
- putc( '\n', log_stream() );
+
+ /* Now check wheter the key of this signature has some
+ * notation data */
+
+ /* TODO */
}
/****************