aboutsummaryrefslogtreecommitdiffstats
path: root/g10/parse-packet.c
diff options
context:
space:
mode:
authorDavid Shaw <[email protected]>2002-10-30 03:11:57 +0000
committerDavid Shaw <[email protected]>2002-10-30 03:11:57 +0000
commit09158d1e990cbd27e676f07c2381a1a586637d19 (patch)
tree3ff2290c91240f1bceb488679d2a82eeecbdd865 /g10/parse-packet.c
parent* configure.ac: Add --disable-regex in case some platform just can't (diff)
downloadgnupg-09158d1e990cbd27e676f07c2381a1a586637d19.tar.gz
gnupg-09158d1e990cbd27e676f07c2381a1a586637d19.zip
* packet.h, trustdb.h, trustdb.c (trust_string): New. Return a string
like "fully trusted", "marginally trusted", etc. (get_min_ownertrust): New. Return minimum ownertrust. (update_min_ownertrust): New. Set minimum ownertrust. (check_regexp): New. Check a regular epression against a user ID. (ask_ownertrust): Allow specifying a minimum value. (get_ownertrust_info): Follow the minimum ownertrust when returning a letter. (clear_validity): Remove minimum ownertrust when a key becomes invalid. (release_key_items): Release regexp along with the rest of the info. (validate_one_keyblock, validate_keys): Build a trust sig chain while validating. Call check_regexp for regexps. Use the minimum ownertrust if the user does not specify a genuine ownertrust. * pkclist.c (do_edit_ownertrust): Only allow user to select a trust level greater than the minimum value. * parse-packet.c (can_handle_critical): Can handle critical trust and regexp subpackets. * trustdb.h, trustdb.c (clear_ownertrusts), delkey.c (do_delete_key), import.c (import_one): Rename clear_ownertrust to clear_ownertrusts and have it clear the min_ownertrust value as well. * keylist.c (list_keyblock_print): Indent uid to match pub and sig.
Diffstat (limited to '')
-rw-r--r--g10/parse-packet.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/g10/parse-packet.c b/g10/parse-packet.c
index f15f412ef..ee7091ecc 100644
--- a/g10/parse-packet.c
+++ b/g10/parse-packet.c
@@ -780,7 +780,7 @@ dump_sig_subpkt( int hashed, int type, int critical,
if(length!=2)
p="[invalid trust subpacket]";
else
- printf("trust signature of depth %d, amount %d",buffer[0],buffer[1]);
+ printf("trust signature of depth %d, value %d",buffer[0],buffer[1]);
break;
case SIGSUBPKT_REGEXP:
if(!length)
@@ -1002,6 +1002,8 @@ can_handle_critical( const byte *buffer, size_t n, int type )
case SIGSUBPKT_PRIMARY_UID:
case SIGSUBPKT_FEATURES:
case SIGSUBPKT_POLICY: /* Is it enough to show the policy? */
+ case SIGSUBPKT_TRUST:
+ case SIGSUBPKT_REGEXP:
return 1;
default:
@@ -1300,6 +1302,8 @@ parse_signature( IOBUF inp, int pkttype, unsigned long pktlen,
sig->trust_depth=p[0];
sig->trust_value=p[1];
+ /* Only look for a regexp if there is also a trust
+ subpacket. */
sig->trust_regexp=
parse_sig_subpkt(sig->hashed,SIGSUBPKT_REGEXP,&len);