From: Michael Tremer Date: Wed, 31 Aug 2022 16:01:29 +0000 (+0000) Subject: archive: Re-use function to compute digests wherever we need them X-Git-Tag: 0.9.28~346 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=77ffe7a8f3701044c1eb64313f4ecd82ff2c2180;p=pakfire.git archive: Re-use function to compute digests wherever we need them Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/archive.c b/src/libpakfire/archive.c index 103017843..b5b7b7198 100644 --- a/src/libpakfire/archive.c +++ b/src/libpakfire/archive.c @@ -882,16 +882,12 @@ int pakfire_archive_check_digest(struct pakfire_archive* archive, static int pakfire_archive_make_package_from_json(struct pakfire_archive* archive, struct pakfire_repo* repo, struct pakfire_package** package) { - struct pakfire_digests digests; int r; // Calculate digest - r = pakfire_digests_compute_from_file(archive->pakfire, &digests, - PAKFIRE_ARCHIVE_CHECKSUM, archive->f); - if (r) { - ERROR(archive->pakfire, "Could not calculate digest of %s: %m\n", archive->path); + r = pakfire_archive_compute_digests(archive); + if (r) return r; - } // Fetch the most basic package information const char* name = pakfire_archive_metadata_get(archive, "name", NULL); @@ -916,11 +912,11 @@ static int pakfire_archive_make_package_from_json(struct pakfire_archive* archiv // Set digest switch (PAKFIRE_ARCHIVE_CHECKSUM) { case PAKFIRE_DIGEST_SHA2_512: - pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, digests.sha2_512); + pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, archive->digests.sha2_512); break; case PAKFIRE_DIGEST_SHA2_256: - pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, digests.sha2_256); + pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, archive->digests.sha2_256); break; case PAKFIRE_DIGEST_UNDEFINED: @@ -1069,16 +1065,12 @@ ERROR: static int pakfire_archive_make_legacy_package(struct pakfire_archive* archive, struct pakfire_repo* repo, struct pakfire_package** package) { - struct pakfire_digests digests; int r; // Calculate digest - r = pakfire_digests_compute_from_file(archive->pakfire, &digests, - PAKFIRE_ARCHIVE_CHECKSUM, archive->f); - if (r) { - ERROR(archive->pakfire, "Could not calculate digest of %s: %m\n", archive->path); + r = pakfire_archive_compute_digests(archive); + if (r) return r; - } char* name = pakfire_archive_get(archive, "package", "name"); char* arch = pakfire_archive_get(archive, "package", "arch"); @@ -1255,11 +1247,11 @@ static int pakfire_archive_make_legacy_package(struct pakfire_archive* archive, // Set digest switch (PAKFIRE_ARCHIVE_CHECKSUM) { case PAKFIRE_DIGEST_SHA2_512: - pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, digests.sha2_512); + pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, archive->digests.sha2_512); break; case PAKFIRE_DIGEST_SHA2_256: - pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, digests.sha2_256); + pakfire_package_set_digest(pkg, PAKFIRE_ARCHIVE_CHECKSUM, archive->digests.sha2_256); break; case PAKFIRE_DIGEST_UNDEFINED: