]> git.ipfire.org Git - people/ms/libloc.git/commitdiff
Log blocks that are being fed into the signature
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 12 Dec 2019 13:13:31 +0000 (13:13 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 12 Dec 2019 13:13:31 +0000 (13:13 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/database.c
src/writer.c

index 8c85d28d10ef326659704b19b1c91f3893b3f062..fc97a2f8a12fc4d456fc0a5685b9b5b2b319230a 100644 (file)
@@ -470,6 +470,8 @@ LOC_EXPORT int loc_database_verify(struct loc_database* db, FILE* f) {
        struct loc_database_magic magic;
        fread(&magic, 1, sizeof(magic), db->f);
 
+       hexdump(db->ctx, &magic, sizeof(magic));
+
        // Feed magic into the hash
        r = EVP_DigestVerifyUpdate(mdctx, &magic, sizeof(magic));
        if (r != 1) {
@@ -491,8 +493,10 @@ LOC_EXPORT int loc_database_verify(struct loc_database* db, FILE* f) {
                                header_v0.signature[i] = '\0';
                        }
 
+                       hexdump(db->ctx, &header_v0, sizeof(header_v0));
+
                        // Feed header into the hash
-                       EVP_DigestVerifyUpdate(mdctx, &header_v0, sizeof(header_v0));
+                       r = EVP_DigestVerifyUpdate(mdctx, &header_v0, sizeof(header_v0));
                        if (r != 1) {
                                ERROR(db->ctx, "%s\n", ERR_error_string(ERR_get_error(), NULL));
                                r = 1;
@@ -514,6 +518,8 @@ LOC_EXPORT int loc_database_verify(struct loc_database* db, FILE* f) {
        while (!feof(db->f)) {
                size_t bytes_read = fread(buffer, 1, sizeof(buffer), db->f);
 
+               hexdump(db->ctx, buffer, bytes_read);
+
                r = EVP_DigestVerifyUpdate(mdctx, buffer, bytes_read);
                if (r != 1) {
                        ERROR(db->ctx, "%s\n", ERR_error_string(ERR_get_error(), NULL));
index 6c748058bd5cadd6264548866cd1af8de139ef67..cf0ae328237400da67890dcd92ccb8f810dd9b51 100644 (file)
@@ -530,6 +530,8 @@ static int loc_writer_create_signature(struct loc_writer* writer,
        struct loc_database_magic magic;
        fread(&magic, 1, sizeof(magic), f);
 
+       hexdump(writer->ctx, &magic, sizeof(magic));
+
        // Feed magic into the signature
        r = EVP_DigestSignUpdate(mdctx, &magic, sizeof(magic));
        if (r != 1) {
@@ -537,6 +539,8 @@ static int loc_writer_create_signature(struct loc_writer* writer,
                goto END;
        }
 
+       hexdump(writer->ctx, header, sizeof(*header));
+
        // Feed the header into the signature
        r = EVP_DigestSignUpdate(mdctx, header, sizeof(*header));
        if (r != 1) {
@@ -558,6 +562,8 @@ static int loc_writer_create_signature(struct loc_writer* writer,
                        goto END;
                }
 
+               hexdump(writer->ctx, buffer, bytes_read);
+
                r = EVP_DigestSignUpdate(mdctx, buffer, bytes_read);
                if (r != 1) {
                        ERROR(writer->ctx, "%s\n", ERR_error_string(ERR_get_error(), NULL));