// Payload
struct pakfire_filelist* filelist;
+ // Scriptlets
struct pakfire_scriptlet** scriptlets;
unsigned int num_scriptlets;
+
+ // Digests
+ unsigned int digests;
};
static void pakfire_packager_free(struct pakfire_packager* packager) {
// Store a reference to the package
p->pkg = pakfire_package_ref(pkg);
+ // Use the default digests
+ p->digests = PAKFIRE_PACKAGER_DIGESTS;
+
// Set build host
pakfire_package_set_build_host(pkg, pakfire_hostname());
goto ERROR;
// Add a requirement for the cryptographic algorithms we are using
- pakfire_package_add_requires(p->pkg, "pakfire(Digest-SHA512)");
- pakfire_package_add_requires(p->pkg, "pakfire(Digest-SHA256)");
+ if (p->digests & PAKFIRE_DIGEST_SHA3_512)
+ pakfire_package_add_requires(p->pkg, "pakfire(Digest-SHA3-512)");
+ if (p->digests & PAKFIRE_DIGEST_SHA3_256)
+ pakfire_package_add_requires(p->pkg, "pakfire(Digest-SHA3-256)");
+ if (p->digests & PAKFIRE_DIGEST_BLAKE2B512)
+ pakfire_package_add_requires(p->pkg, "pakfire(Digest-BLAKE2b512)");
+ if (p->digests & PAKFIRE_DIGEST_BLAKE2S256)
+ pakfire_package_add_requires(p->pkg, "pakfire(Digest-BLAKE2s256)");
+ if (p->digests & PAKFIRE_DIGEST_SHA2_512)
+ pakfire_package_add_requires(p->pkg, "pakfire(Digest-SHA2-512)");
+ if (p->digests & PAKFIRE_DIGEST_SHA2_256)
+ pakfire_package_add_requires(p->pkg, "pakfire(Digest-SHA2-256)");
*packager = p;