]> git.ipfire.org Git - pakfire.git/commitdiff
libpakfire: Add stat function for cache
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 19 Jan 2018 00:29:00 +0000 (01:29 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 19 Jan 2018 00:29:00 +0000 (01:29 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/include/pakfire/pakfire.h
src/libpakfire/libpakfire.sym
src/libpakfire/pakfire.c

index 18f899f277f36b4ad140239cf8f0b23ea5609d26..29130e4a2f4fce0f6358f9a7306b7269ab30110a 100644 (file)
@@ -22,6 +22,7 @@
 #define PAKFIRE_PAKFIRE_H
 
 #include <stddef.h>
+#include <sys/stat.h>
 
 #include <pakfire/types.h>
 
@@ -55,6 +56,8 @@ PakfirePackageList pakfire_search(Pakfire pakfire, const char* what, int flags);
 char* pakfire_get_cache_path(Pakfire pakfire, const char* path);
 void pakfire_set_cache_path(Pakfire pakfire, const char* path);
 
+int pakfire_cache_stat(Pakfire pakfire, const char* path, struct stat* buffer);
+
 #ifdef PAKFIRE_PRIVATE
 
 #include <solv/pool.h>
index dcb3ea0a858bb14904ae5baae20b48c7a8bd618e..8b86f7518795e701f24a6c8aed61bda3deb1e375 100644 (file)
@@ -22,6 +22,7 @@ LIBPAKFIRE_0 {
 global:
        # pakfire
        pakfire_init;
+       pakfire_cache_stat;
        pakfire_count_packages;
        pakfire_create;
        pakfire_get_arch;
index a685c4455f1c32ef9288108b8971b3fdead1801e..62be168fd8bf8fd3fd32ad4db92c9aee8fa22da1 100644 (file)
@@ -19,6 +19,9 @@
 #############################################################################*/
 
 #include <stddef.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
 
 #include <solv/evr.h>
 #include <solv/pool.h>
@@ -330,3 +333,12 @@ PAKFIRE_EXPORT void pakfire_set_cache_path(Pakfire pakfire, const char* path) {
 
        DEBUG("Set cache path to %s\n", pakfire->cache_path);
 }
+
+PAKFIRE_EXPORT int pakfire_cache_stat(Pakfire pakfire, const char* path, struct stat* buffer) {
+       char* cache_path = pakfire_get_cache_path(pakfire, path);
+
+       int r = stat(cache_path, buffer);
+       pakfire_free(cache_path);
+
+       return r;
+}