pakfire_package_set_uuid(self->package, uuid);
}
-static PyObject* Package_get_hexdigest(PackageObject* self, enum pakfire_package_digests type) {
- enum pakfire_package_digests digest = PAKFIRE_PACKAGE_DIGEST_NONE;
+static PyObject* Package_get_hexdigest(PackageObject* self, enum pakfire_digests type) {
+ enum pakfire_digests digest = PAKFIRE_DIGEST_NONE;
const char* hexdigest = pakfire_package_get_hexdigest(self->package, &digest);
if (!hexdigest)
}
static PyObject* Package_get_hexdigest_sha256(PackageObject* self) {
- return Package_get_hexdigest(self, PAKFIRE_PACKAGE_DIGEST_SHA256);
+ return Package_get_hexdigest(self, PAKFIRE_DIGEST_SHA256);
}
static PyObject* Package_get_hexdigest_sha512(PackageObject* self) {
- return Package_get_hexdigest(self, PAKFIRE_PACKAGE_DIGEST_SHA512);
+ return Package_get_hexdigest(self, PAKFIRE_DIGEST_SHA512);
}
static int Package_set_hexdigest(PackageObject* self,
- enum pakfire_package_digests type, PyObject* value) {
+ enum pakfire_digests type, PyObject* value) {
const char* hexdigest = PyUnicode_FromValue(value);
return pakfire_package_set_hexdigest(self->package, type, hexdigest);
}
static int Package_set_hexdigest_sha256(PackageObject* self, PyObject* value) {
- return Package_set_hexdigest(self, PAKFIRE_PACKAGE_DIGEST_SHA256, value);
+ return Package_set_hexdigest(self, PAKFIRE_DIGEST_SHA256, value);
}
static int Package_set_hexdigest_sha512(PackageObject* self, PyObject* value) {
- return Package_set_hexdigest(self, PAKFIRE_PACKAGE_DIGEST_SHA512, value);
+ return Package_set_hexdigest(self, PAKFIRE_DIGEST_SHA512, value);
}
static PyObject* Package_get_summary(PackageObject* self) {
}
static int pakfire_archive_calculate_digest(struct pakfire_archive* archive,
- enum pakfire_package_digests digest, unsigned char* output, size_t* length) {
+ enum pakfire_digests digest, unsigned char* output, size_t* length) {
int r = 1;
const EVP_MD* md = NULL;
// Select hash function
switch (digest) {
- case PAKFIRE_PACKAGE_DIGEST_SHA512:
+ case PAKFIRE_DIGEST_SHA512:
md = EVP_sha512();
break;
- case PAKFIRE_PACKAGE_DIGEST_SHA256:
+ case PAKFIRE_DIGEST_SHA256:
md = EVP_sha256();
break;
int r;
// Calculate digest
- r = pakfire_archive_calculate_digest(archive, PAKFIRE_PACKAGE_DIGEST_SHA512,
+ r = pakfire_archive_calculate_digest(archive, PAKFIRE_DIGEST_SHA512,
digest, &digest_length);
if (r)
return r;
}
// Set digests
- pakfire_package_set_digest(pkg, PAKFIRE_PACKAGE_DIGEST_SHA512, digest);
+ pakfire_package_set_digest(pkg, PAKFIRE_DIGEST_SHA512, digest);
*package = pkg;
goto ROLLBACK;
}
- enum pakfire_package_digests digest = PAKFIRE_PACKAGE_DIGEST_NONE;
+ enum pakfire_digests digest = PAKFIRE_DIGEST_NONE;
const char* hexdigest = pakfire_package_get_hexdigest(pkg, &digest);
switch (digest) {
- case PAKFIRE_PACKAGE_DIGEST_SHA512:
+ case PAKFIRE_DIGEST_SHA512:
r = sqlite3_bind_text(stmt, 8, hexdigest, -1, NULL);
if (r) {
ERROR(db->pakfire, "Could not bind digest_sha512: %s\n", sqlite3_errmsg(db->handle));
}
break;
- case PAKFIRE_PACKAGE_DIGEST_SHA256:
+ case PAKFIRE_DIGEST_SHA256:
r = sqlite3_bind_text(stmt, 9, hexdigest, -1, NULL);
if (r) {
ERROR(db->pakfire, "Could not bind digest_sha256: %s\n", sqlite3_errmsg(db->handle));
goto ROLLBACK;
}
- case PAKFIRE_PACKAGE_DIGEST_NONE:
+ case PAKFIRE_DIGEST_NONE:
break;
}
// Digest SHA512
const char* digest_sha512 = (const char*)sqlite3_column_text(stmt, 8);
if (digest_sha512) {
- pakfire_package_set_hexdigest(pkg, PAKFIRE_PACKAGE_DIGEST_SHA512, digest_sha512);
+ pakfire_package_set_hexdigest(pkg, PAKFIRE_DIGEST_SHA512, digest_sha512);
}
// Digest SHA256
const char* digest_sha256 = (const char*)sqlite3_column_text(stmt, 9);
if (digest_sha256) {
- pakfire_package_set_hexdigest(pkg, PAKFIRE_PACKAGE_DIGEST_SHA256, digest_sha256);
+ pakfire_package_set_hexdigest(pkg, PAKFIRE_DIGEST_SHA256, digest_sha256);
}
// License
// Download the file if it does not exist in the cache
if (access(cache_path, R_OK) != 0) {
r = pakfire_downloader_retrieve(downloader, BASEURL, mirrorlist,
- NULL, filename, cache_path, PAKFIRE_DOWNLOADER_MD_NONE, NULL, 0, 0);
+ NULL, filename, cache_path, PAKFIRE_DIGEST_NONE, NULL, 0, 0);
if (r)
return r;
}
static struct pakfire_transfer* pakfire_downloader_create_transfer(
struct pakfire_downloader* downloader, const char* baseurl, struct pakfire_mirrorlist* mirrors,
const char* title, const char* url, const char* path,
- enum pakfire_downloader_message_digest md, const char* expected_digest, const size_t expected_digest_length,
+ enum pakfire_digests md, const char* expected_digest, const size_t expected_digest_length,
enum pakfire_transfer_flags flags) {
struct pakfire_config* config = NULL;
// Check if expected digest is set
switch (md) {
- case PAKFIRE_DOWNLOADER_MD_NONE:
+ case PAKFIRE_DIGEST_NONE:
break;
default:
// Set message digest
switch (md) {
- case PAKFIRE_DOWNLOADER_MD_SHA512:
+ case PAKFIRE_DIGEST_SHA512:
transfer->md = EVP_sha512();
break;
- case PAKFIRE_DOWNLOADER_MD_SHA256:
+ case PAKFIRE_DIGEST_SHA256:
transfer->md = EVP_sha256();
break;
- case PAKFIRE_DOWNLOADER_MD_NONE:
+ case PAKFIRE_DIGEST_NONE:
break;
}
int pakfire_downloader_add_transfer(struct pakfire_downloader* downloader,
const char* baseurl, struct pakfire_mirrorlist* mirrors, const char* title,
- const char* url, const char* path, enum pakfire_downloader_message_digest md,
+ const char* url, const char* path, enum pakfire_digests md,
const char* expected_digest, const size_t expected_digest_length,
enum pakfire_transfer_flags flags) {
struct pakfire_transfer* transfer = pakfire_downloader_create_transfer(
int pakfire_downloader_retrieve(struct pakfire_downloader* downloader,
const char* baseurl, struct pakfire_mirrorlist* mirrors, const char* title,
- const char* url, const char* path, enum pakfire_downloader_message_digest md,
+ const char* url, const char* path, enum pakfire_digests md,
const char* expected_digest, const size_t expected_digest_length,
enum pakfire_transfer_flags flags) {
struct pakfire_transfer* transfer = pakfire_downloader_create_transfer(
PAKFIRE_TRANSFER_NOTEMP = (1 << 1),
};
-enum pakfire_downloader_message_digest {
- PAKFIRE_DOWNLOADER_MD_NONE = 0,
- PAKFIRE_DOWNLOADER_MD_SHA256,
- PAKFIRE_DOWNLOADER_MD_SHA512,
-};
-
int pakfire_downloader_create(struct pakfire_downloader** downloader, struct pakfire* pakfire);
struct pakfire_downloader* pakfire_downloader_ref(struct pakfire_downloader* downloader);
int pakfire_downloader_retrieve(struct pakfire_downloader* downloader,
const char* baseurl, struct pakfire_mirrorlist* mirrors, const char* title,
- const char* url, const char* path, enum pakfire_downloader_message_digest md,
+ const char* url, const char* path, enum pakfire_digests md,
const char* expected_digest, const size_t expected_digest_length,
enum pakfire_transfer_flags flags);
int pakfire_downloader_add_transfer(struct pakfire_downloader* downloader,
const char* baseurl, struct pakfire_mirrorlist* mirrors, const char* title,
- const char* url, const char* path, enum pakfire_downloader_message_digest md,
+ const char* url, const char* path, enum pakfire_digests md,
const char* expected_digest, const size_t expected_digest_length,
enum pakfire_transfer_flags flags);
#include <pakfire/pakfire.h>
#include <pakfire/repo.h>
-enum pakfire_package_digests {
- PAKFIRE_PACKAGE_DIGEST_NONE = 0,
- PAKFIRE_PACKAGE_DIGEST_SHA256 = 1 << 0,
- PAKFIRE_PACKAGE_DIGEST_SHA512 = 1 << 1,
-};
-
struct pakfire_package* pakfire_package_create(struct pakfire* pakfire, struct pakfire_repo* repo,
const char* name, const char* evr, const char* arch);
const char* pakfire_package_get_uuid(struct pakfire_package* pkg);
void pakfire_package_set_uuid(struct pakfire_package* pkg, const char* uuid);
const unsigned char* pakfire_package_get_digest(struct pakfire_package* pkg,
- enum pakfire_package_digests* type);
+ enum pakfire_digests* type);
const char* pakfire_package_get_hexdigest(struct pakfire_package* pkg,
- enum pakfire_package_digests* type);
+ enum pakfire_digests* type);
int pakfire_package_set_digest(struct pakfire_package* pkg,
- enum pakfire_package_digests type, const unsigned char* digest);
+ enum pakfire_digests type, const unsigned char* digest);
int pakfire_package_set_hexdigest(struct pakfire_package* pkg,
- enum pakfire_package_digests type, const char* hexdigest);
+ enum pakfire_digests type, const char* hexdigest);
const char* pakfire_package_get_summary(struct pakfire_package* pkg);
void pakfire_package_set_summary(struct pakfire_package* pkg, const char* summary);
const char* pakfire_package_get_description(struct pakfire_package* pkg);
struct pakfire;
+enum pakfire_digests {
+ PAKFIRE_DIGEST_NONE = 0,
+ PAKFIRE_DIGEST_SHA256 = 1 << 0,
+ PAKFIRE_DIGEST_SHA512 = 1 << 1,
+};
+
#include <pakfire/key.h>
#include <pakfire/packagelist.h>
#include <pakfire/parser.h>
pakfire_package_set_string(pkg, SOLVABLE_PKGID, uuid);
}
-static enum pakfire_package_digests pakfire_package_id2digest(Id id) {
+static enum pakfire_digests pakfire_package_id2digest(Id id) {
switch (id) {
case REPOKEY_TYPE_SHA512:
- return PAKFIRE_PACKAGE_DIGEST_SHA512;
+ return PAKFIRE_DIGEST_SHA512;
case REPOKEY_TYPE_SHA256:
- return PAKFIRE_PACKAGE_DIGEST_SHA256;
+ return PAKFIRE_DIGEST_SHA256;
}
- return PAKFIRE_PACKAGE_DIGEST_NONE;
+ return PAKFIRE_DIGEST_NONE;
}
PAKFIRE_EXPORT const unsigned char* pakfire_package_get_digest(
- struct pakfire_package* pkg, enum pakfire_package_digests* type) {
+ struct pakfire_package* pkg, enum pakfire_digests* type) {
Solvable* s = get_solvable(pkg);
Id id;
}
PAKFIRE_EXPORT const char* pakfire_package_get_hexdigest(
- struct pakfire_package* pkg, enum pakfire_package_digests* type) {
+ struct pakfire_package* pkg, enum pakfire_digests* type) {
Solvable* s = get_solvable(pkg);
Id id;
}
PAKFIRE_EXPORT int pakfire_package_set_digest(struct pakfire_package* pkg,
- enum pakfire_package_digests type, const unsigned char* digest) {
+ enum pakfire_digests type, const unsigned char* digest) {
Solvable* s = get_solvable(pkg);
Pool* pool = s->repo->pool;
Id id;
int r = 1;
switch (type) {
- case PAKFIRE_PACKAGE_DIGEST_SHA256:
+ case PAKFIRE_DIGEST_SHA256:
id = REPOKEY_TYPE_SHA256;
break;
- case PAKFIRE_PACKAGE_DIGEST_SHA512:
+ case PAKFIRE_DIGEST_SHA512:
id = REPOKEY_TYPE_SHA512;
break;
return r;
}
-static size_t pakfire_package_digest_length(enum pakfire_package_digests digest) {
+static size_t pakfire_digest_length(enum pakfire_digests digest) {
switch (digest) {
- case PAKFIRE_PACKAGE_DIGEST_SHA512:
+ case PAKFIRE_DIGEST_SHA512:
return 64;
- case PAKFIRE_PACKAGE_DIGEST_SHA256:
+ case PAKFIRE_DIGEST_SHA256:
return 32;
- case PAKFIRE_PACKAGE_DIGEST_NONE:
+ case PAKFIRE_DIGEST_NONE:
return 0;
}
}
PAKFIRE_EXPORT int pakfire_package_set_hexdigest(struct pakfire_package* pkg,
- enum pakfire_package_digests type, const char* hexdigest) {
- size_t digest_length = pakfire_package_digest_length(type);
+ enum pakfire_digests type, const char* hexdigest) {
+ const size_t digest_length = pakfire_digest_length(type);
if (!digest_length) {
errno = EINVAL;
static int pakfire_package_make_cache_path(struct pakfire_package* pkg) {
const char* filename = pakfire_package_get_filename(pkg);
- enum pakfire_package_digests digest = PAKFIRE_PACKAGE_DIGEST_NONE;
+ enum pakfire_digests digest = PAKFIRE_DIGEST_NONE;
const char* hexdigest = pakfire_package_get_hexdigest(pkg, &digest);
if (!hexdigest || strlen(hexdigest) < 3)
if (build_id)
pakfire_package_dump_add_line(&string, _("Build ID"), build_id);
- enum pakfire_package_digests digest = PAKFIRE_PACKAGE_DIGEST_NONE;
+ enum pakfire_digests digest = PAKFIRE_DIGEST_NONE;
// Digest
const char* hexdigest = pakfire_package_get_hexdigest(pkg, &digest);
switch (digest) {
- case PAKFIRE_PACKAGE_DIGEST_SHA512:
+ case PAKFIRE_DIGEST_SHA512:
pakfire_package_dump_add_line(&string, _("SHA512 Digest"), hexdigest);
break;
- case PAKFIRE_PACKAGE_DIGEST_SHA256:
+ case PAKFIRE_DIGEST_SHA256:
pakfire_package_dump_add_line(&string, _("SHA256 Digest"), hexdigest);
break;
- case PAKFIRE_PACKAGE_DIGEST_NONE:
+ case PAKFIRE_DIGEST_NONE:
break;
}
}
static int pakfire_repo_retrieve(struct pakfire_repo* repo, const char* title,
- const char* url, const char* path, enum pakfire_downloader_message_digest md,
+ const char* url, const char* path, enum pakfire_digests md,
const char* expected_digest, const size_t expected_digest_length,
enum pakfire_transfer_flags flags) {
struct pakfire_downloader* downloader;
// Try to download the key
int r = pakfire_repo_retrieve(repo, NULL, url, path,
- PAKFIRE_DOWNLOADER_MD_NONE, NULL, 0, PAKFIRE_TRANSFER_NOTEMP|PAKFIRE_TRANSFER_NOPROGRESS);
+ PAKFIRE_DIGEST_NONE, NULL, 0, PAKFIRE_TRANSFER_NOTEMP|PAKFIRE_TRANSFER_NOPROGRESS);
if (r)
goto ERROR;
pakfire_string_format(database_url, "repodata/%s", database);
return pakfire_repo_retrieve(repo, title, database_url, cache_path,
- PAKFIRE_DOWNLOADER_MD_NONE, NULL, 0, 0);
+ PAKFIRE_DIGEST_NONE, NULL, 0, 0);
}
static int pakfire_repo_read_metadata(struct pakfire_repo* repo, const char* path, int refresh) {
return pakfire_repo_retrieve(repo, NULL,
repo->appdata->mirrorlist_url, repo->appdata->mirrorlist,
- PAKFIRE_DOWNLOADER_MD_NONE, NULL, 0, PAKFIRE_TRANSFER_NOPROGRESS);
+ PAKFIRE_DIGEST_NONE, NULL, 0, PAKFIRE_TRANSFER_NOPROGRESS);
}
static int pakfire_repo_refresh_metadata(struct pakfire_repo* repo, const int force) {
}
int r = pakfire_repo_retrieve(repo, NULL,
- "repodata/repomd.json", repo->appdata->metadata, PAKFIRE_DOWNLOADER_MD_NONE,
+ "repodata/repomd.json", repo->appdata->metadata, PAKFIRE_DIGEST_NONE,
NULL, 0, PAKFIRE_TRANSFER_NOPROGRESS);
if (r)
return r;
// Download the file
r = pakfire_downloader_retrieve(downloader, NULL, NULL, NULL,
- url, path, PAKFIRE_DOWNLOADER_MD_NONE, NULL, 0, PAKFIRE_TRANSFER_NOTEMP);
+ url, path, PAKFIRE_DIGEST_NONE, NULL, 0, PAKFIRE_TRANSFER_NOTEMP);
if (r)
goto ERROR;
// Add transfer to downloader
r = pakfire_downloader_add_transfer(downloader, baseurl, mirrorlist,
- nevra, filename, path, PAKFIRE_DOWNLOADER_MD_NONE, NULL, 0, 0);
+ nevra, filename, path, PAKFIRE_DIGEST_NONE, NULL, 0, 0);
ERROR:
if (mirrorlist)