aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Kerr <jeremy.kerr@canonical.com>2012-05-12 10:47:21 -0700
committerJeremy Kerr <jeremy.kerr@canonical.com>2012-05-12 10:47:21 -0700
commitb929aaa655739f54c496b4c5f46b2b6af14f6636 (patch)
treefefe97c43d4e48a39e8744d0ca8dd71925da33de
parent7c256bc4077e56bc0bcb8199748ccab6c3bd25c7 (diff)
downloadsbsigntools-b929aaa655739f54c496b4c5f46b2b6af14f6636.tar.gz
sbverify: check for presence of signature table
Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com>
-rw-r--r--sbverify.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sbverify.c b/sbverify.c
index 5e4399c..c72888f 100644
--- a/sbverify.c
+++ b/sbverify.c
@@ -46,6 +46,12 @@ int main(int argc, char **argv)
image = image_load(argv[1]);
image_pecoff_parse(image);
+ if (!image->data_dir_sigtable->addr
+ || !image->data_dir_sigtable->size) {
+ fprintf(stderr, "No signature table present\n");
+ return EXIT_FAILURE;
+ }
+
header = image->buf + image->data_dir_sigtable->addr;
ERR_load_crypto_strings();