From: Michael Tremer Date: Sun, 5 Nov 2023 18:34:10 +0000 (+0000) Subject: mount: Use the parse helpers to log /proc/self/mounts X-Git-Tag: 0.9.30~1301 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bc0b24a73bc7dbe54d126ba8436e6c3057e2dd0a;p=pakfire.git mount: Use the parse helpers to log /proc/self/mounts Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/include/pakfire/mount.h b/src/libpakfire/include/pakfire/mount.h index c924664e6..8e3bd8541 100644 --- a/src/libpakfire/include/pakfire/mount.h +++ b/src/libpakfire/include/pakfire/mount.h @@ -34,7 +34,7 @@ int pakfire_make_ramdisk(struct pakfire* pakfire, char* path, const char* args); int pakfire_bind(struct pakfire* pakfire, const char* src, const char* dst, int flags); -int pakfire_mount_list(struct pakfire* pakfire); +int pakfire_mount_list(struct pakfire_ctx* ctx); enum pakfire_mount_flags { PAKFIRE_MOUNT_LOOP_DEVICES = (1 << 0), diff --git a/src/libpakfire/jail.c b/src/libpakfire/jail.c index e47fe7e88..d9b8cd7a6 100644 --- a/src/libpakfire/jail.c +++ b/src/libpakfire/jail.c @@ -1474,7 +1474,7 @@ static int pakfire_jail_mount(struct pakfire_jail* jail, struct pakfire_jail_exe } // Log all mountpoints - pakfire_mount_list(jail->pakfire); + pakfire_mount_list(jail->ctx); return 0; } diff --git a/src/libpakfire/mount.c b/src/libpakfire/mount.c index b467fa137..1f248468b 100644 --- a/src/libpakfire/mount.c +++ b/src/libpakfire/mount.c @@ -32,6 +32,7 @@ #include #include #include +#include #include #include #include @@ -274,11 +275,19 @@ static int __pakfire_mount_print(struct pakfire* pakfire, 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; - return pakfire_mount_foreach(pakfire, MNT_ITER_FORWARD, - __pakfire_mount_print, NULL); + // 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_parse_file("/proc/self/mounts", __pakfire_mount_list, ctx); } static int pakfire_populate_dev(struct pakfire* pakfire, int flags) {