From 8be4db8caf8e534afe7ebea1eb913b34b2414a43 Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Tue, 7 Jun 2011 21:42:47 -0500 Subject: Add a helper method for retrieving the DB signature path Note that is a bit different than the normal _alpm_db_path() method; the caller is expected to free the result. Signed-off-by: Dan McGee --- lib/libalpm/db.c | 14 ++++++++++++++ lib/libalpm/db.h | 1 + 2 files changed, 15 insertions(+) (limited to 'lib') diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index 8ffd17ef..5b272eac 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -379,6 +379,20 @@ int _alpm_db_version(pmdb_t *db) return db->ops->version(db); } +char *_alpm_db_sig_path(pmdb_t *db) +{ + char *sigpath; + size_t len; + const char *dbfile = _alpm_db_path(db); + if(!db || !dbfile) { + return NULL; + } + len = strlen(dbfile) + strlen(".sig") + 1; + CALLOC(sigpath, len, sizeof(char), RET_ERR(db->handle, PM_ERR_MEMORY, NULL)); + sprintf(sigpath, "%s.sig", dbfile); + return sigpath; +} + int _alpm_db_cmp(const void *d1, const void *d2) { pmdb_t *db1 = (pmdb_t *)d1; diff --git a/lib/libalpm/db.h b/lib/libalpm/db.h index 9ecf31f7..e3faeeb4 100644 --- a/lib/libalpm/db.h +++ b/lib/libalpm/db.h @@ -72,6 +72,7 @@ struct __pmdb_t { pmdb_t *_alpm_db_new(const char *treename, int is_local); void _alpm_db_free(pmdb_t *db); const char *_alpm_db_path(pmdb_t *db); +char *_alpm_db_sig_path(pmdb_t *db); int _alpm_db_version(pmdb_t *db); int _alpm_db_cmp(const void *d1, const void *d2); alpm_list_t *_alpm_db_search(pmdb_t *db, const alpm_list_t *needles); -- cgit v1.2.3-24-g4f1b