From: Michael Tremer Date: Thu, 19 Aug 2021 19:08:55 +0000 (+0000) Subject: repo: Remove write/read_solv functions that take paths X-Git-Tag: 0.9.28~988 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7c0facac46c82bc7b4951003640e958d12226941;p=pakfire.git repo: Remove write/read_solv functions that take paths Signed-off-by: Michael Tremer --- diff --git a/src/_pakfire/repo.c b/src/_pakfire/repo.c index 4d8b94370..431571b63 100644 --- a/src/_pakfire/repo.c +++ b/src/_pakfire/repo.c @@ -249,36 +249,6 @@ static PyObject* Repo_get_config(RepoObject* self) { Py_RETURN_NONE; } -static PyObject* Repo_read_solv(RepoObject* self, PyObject* args) { - const char* filename = NULL; - - if (!PyArg_ParseTuple(args, "s", &filename)) - return NULL; - - int r = pakfire_repo_read_solv(self->repo, filename, 0); - if (r) { - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - - Py_RETURN_NONE; -} - -static PyObject* Repo_write_solv(RepoObject* self, PyObject* args) { - const char* filename = NULL; - - if (!PyArg_ParseTuple(args, "s", &filename)) - return NULL; - - int r = pakfire_repo_write_solv(self->repo, filename, 0); - if (r) { - PyErr_SetFromErrno(PyExc_OSError); - return NULL; - } - - Py_RETURN_NONE; -} - static PyObject* Repo__add_package(RepoObject* self, PyObject* args) { const char* name; const char* evr; @@ -393,12 +363,6 @@ static struct PyMethodDef Repo_methods[] = { METH_NOARGS, NULL, }, - { - "read_solv", - (PyCFunction)Repo_read_solv, - METH_VARARGS, - NULL - }, { "refresh", (PyCFunction)Repo_refresh, @@ -411,12 +375,6 @@ static struct PyMethodDef Repo_methods[] = { METH_VARARGS, NULL }, - { - "write_solv", - (PyCFunction)Repo_write_solv, - METH_VARARGS, - NULL - }, { "_add_package", (PyCFunction)Repo__add_package, diff --git a/src/libpakfire/include/pakfire/repo.h b/src/libpakfire/include/pakfire/repo.h index 40ccb8e27..60b4babf2 100644 --- a/src/libpakfire/include/pakfire/repo.h +++ b/src/libpakfire/include/pakfire/repo.h @@ -68,11 +68,8 @@ char* pakfire_repo_get_config(struct pakfire_repo* repo); int pakfire_repo_is_installed_repo(struct pakfire_repo* repo); -int pakfire_repo_read_solv(struct pakfire_repo* repo, const char* filename, int flags); -int pakfire_repo_read_solv_fp(struct pakfire_repo* repo, FILE *f, int flags); - -int pakfire_repo_write_solv(struct pakfire_repo* repo, const char* filename, int flags); -int pakfire_repo_write_solv_fp(struct pakfire_repo* repo, FILE *f, int flags); +int pakfire_repo_read_solv(struct pakfire_repo* repo, FILE *f, int flags); +int pakfire_repo_write_solv(struct pakfire_repo* repo, FILE *f, int flags); struct pakfire_package* pakfire_repo_add_archive(struct pakfire_repo* repo, struct pakfire_archive* archive); diff --git a/src/libpakfire/libpakfire.sym b/src/libpakfire/libpakfire.sym index bea7c2bd2..146663f2f 100644 --- a/src/libpakfire/libpakfire.sym +++ b/src/libpakfire/libpakfire.sym @@ -251,7 +251,6 @@ global: pakfire_repo_identical; pakfire_repo_is_installed_repo; pakfire_repo_read_solv; - pakfire_repo_read_solv_fp; pakfire_repo_ref; pakfire_repo_refresh; pakfire_repo_scan; @@ -262,7 +261,6 @@ global: pakfire_repo_set_mirrorlist_url; pakfire_repo_set_priority; pakfire_repo_write_solv; - pakfire_repo_write_solv_fp; pakfire_repo_unref; # repolist diff --git a/src/libpakfire/repo.c b/src/libpakfire/repo.c index 96d67344d..f594fa08b 100644 --- a/src/libpakfire/repo.c +++ b/src/libpakfire/repo.c @@ -318,8 +318,14 @@ static int pakfire_repo_read_metadata(struct pakfire_repo* repo, const char* pat if (r) goto ERROR; + // Open database file + FILE* f = fopen(database_cache_path, "r"); + if (!f) + goto ERROR; + // Read database - r = pakfire_repo_read_solv(repo, database_cache_path, 0); + r = pakfire_repo_read_solv(repo, f, 0); + fclose(f); if (r) { if (!refresh && errno == ENOENT) goto NOERROR; @@ -785,18 +791,7 @@ PAKFIRE_EXPORT int pakfire_repo_is_installed_repo(struct pakfire_repo* repo) { return r; } -PAKFIRE_EXPORT int pakfire_repo_read_solv(struct pakfire_repo* repo, const char* filename, int flags) { - FILE* f = fopen(filename, "rb"); - if (!f) - return 1; - - int ret = pakfire_repo_read_solv_fp(repo, f, flags); - fclose(f); - - return ret; -} - -PAKFIRE_EXPORT int pakfire_repo_read_solv_fp(struct pakfire_repo* repo, FILE *f, int flags) { +PAKFIRE_EXPORT int pakfire_repo_read_solv(struct pakfire_repo* repo, FILE *f, int flags) { f = pakfire_xfopen(f, "r"); if (!f) return 1; @@ -833,18 +828,7 @@ PAKFIRE_EXPORT int pakfire_repo_read_solv_fp(struct pakfire_repo* repo, FILE *f, return 0; } -PAKFIRE_EXPORT int pakfire_repo_write_solv(struct pakfire_repo* repo, const char* filename, int flags) { - FILE* f = fopen(filename, "wb"); - if (!f) - return 1; - - int ret = pakfire_repo_write_solv_fp(repo, f, flags); - fclose(f); - - return ret; -} - -PAKFIRE_EXPORT int pakfire_repo_write_solv_fp(struct pakfire_repo* repo, FILE *f, int flags) { +PAKFIRE_EXPORT int pakfire_repo_write_solv(struct pakfire_repo* repo, FILE *f, int flags) { pakfire_repo_internalize(repo); return repo_write(repo->repo, f); @@ -1040,7 +1024,7 @@ static int pakfire_repo_write_database(struct pakfire_repo* repo, const char* pa } // Write the SOLV database to the temporary file - r = pakfire_repo_write_solv_fp(repo, f, 0); + r = pakfire_repo_write_solv(repo, f, 0); if (r) { ERROR(repo->pakfire, "Could not write SOLV data: %m\n"); goto ERROR;