#include <pakfire/arch.h>
#include <pakfire/logging.h>
#include <pakfire/pakfire.h>
+#include <pakfire/parse.h>
#include <pakfire/path.h>
#include <pakfire/mount.h>
#include <pakfire/string.h>
return r;
}
-static int __pakfire_is_mountpoint(struct pakfire* pakfire,
- struct libmnt_fs* fs, const void* data) {
- const char* path = (const char*)data;
-
- return mnt_fs_streq_target(fs, path);
-}
-
-int pakfire_is_mountpoint(struct pakfire* pakfire, const char* path) {
- return pakfire_mount_foreach(pakfire, MNT_ITER_FORWARD,
- __pakfire_is_mountpoint, path);
-}
-
static int pakfire_mount(struct pakfire* pakfire, const char* source, const char* target,
const char* fstype, unsigned long mflags, const void* data) {
const char* options = (const char*)data;
return 0;
}
-int pakfire_mount_list(struct pakfire* pakfire) {
- DEBUG(pakfire, "Mountpoints:\n");
+static int __pakfire_mount_list(char* line, size_t length, void* data) {
+ struct pakfire_ctx* ctx = data;
+
+ // Send the line to the logger
+ CTX_DEBUG(ctx, " %.*s", (int)length, line);
+
+ return 0;
+}
+
+int pakfire_mount_list(struct pakfire_ctx* ctx) {
+ CTX_DEBUG(ctx, "Mountpoints:\n");
- return pakfire_mount_foreach(pakfire, MNT_ITER_FORWARD,
- __pakfire_mount_print, NULL);
+ return pakfire_parse_file("/proc/self/mounts", __pakfire_mount_list, ctx);
}
static int pakfire_populate_dev(struct pakfire* pakfire, int flags) {