aboutsummaryrefslogtreecommitdiffstats
path: root/kbx/keybox-dump.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2013-11-15 14:54:31 +0000
committerWerner Koch <[email protected]>2013-11-15 14:54:31 +0000
commit5499942571a88a1223a7318992605c6d29858866 (patch)
tree6ee1f5c177484beed5e6142bb11d7ac7179fc0a9 /kbx/keybox-dump.c
parentFix minor compiler warnings. (diff)
downloadgnupg-5499942571a88a1223a7318992605c6d29858866.tar.gz
gnupg-5499942571a88a1223a7318992605c6d29858866.zip
kbx: Implement update operation for OpenPGP keyblocks.
* kbx/keybox-update.c (keybox_update_keyblock): Implement. * kbx/keybox-search.c (get_blob_flags): Move to ... * kbx/keybox-defs.h (blob_get_type): here. * kbx/keybox-file.c (_keybox_read_blob2): Fix calling without R_BLOB. * g10/keydb.c (build_keyblock_image): Allow calling without R_SIGSTATUS. (keydb_update_keyblock): Implement for keybox. * kbx/keybox-dump.c (_keybox_dump_blob): Fix printing of the unhashed size. Print "does not expire" also on 64 bit platforms. Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'kbx/keybox-dump.c')
-rw-r--r--kbx/keybox-dump.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kbx/keybox-dump.c b/kbx/keybox-dump.c
index 1af6a9cba..af9052d69 100644
--- a/kbx/keybox-dump.c
+++ b/kbx/keybox-dump.c
@@ -245,7 +245,7 @@ _keybox_dump_blob (KEYBOXBLOB blob, FILE *fp)
|| rawdata_len + 4 > length
|| rawdata_off+rawdata_len + 4 > length)
fprintf (fp, "[Error: raw data larger than blob]\n");
- unhashed = get32 (buffer + rawdata_off + rawdata_len);
+ unhashed = length - rawdata_off - rawdata_len;
fprintf (fp, "Unhashed: %lu\n", unhashed);
nkeys = get16 (buffer + 16);
@@ -378,7 +378,7 @@ _keybox_dump_blob (KEYBOXBLOB blob, FILE *fp)
fputs ("[bad signature]", fp);
else if (sflags < 0x10000000)
fprintf (fp, "[bad flag %0lx]", sflags);
- else if (sflags == 0xffffffff)
+ else if (sflags == (ulong)(-1))
fputs ("[good - does not expire]", fp );
else
fprintf (fp, "[good - expires at %lu]", sflags);