summaryrefslogtreecommitdiffstats
path: root/libmount/src/mountP.h
diff options
context:
space:
mode:
authorKarel Zak2011-06-10 15:39:56 +0200
committerKarel Zak2011-06-10 15:39:56 +0200
commit7f8b2bf3be6db30280bd8c5a77584350170abd11 (patch)
tree9d9513a6a21b99e483e92c9a0dbdbe65a1a6ba2b /libmount/src/mountP.h
parentlib: [loopdev.c] cleanup flags usage (diff)
downloadkernel-qcow2-util-linux-7f8b2bf3be6db30280bd8c5a77584350170abd11.tar.gz
kernel-qcow2-util-linux-7f8b2bf3be6db30280bd8c5a77584350170abd11.tar.xz
kernel-qcow2-util-linux-7f8b2bf3be6db30280bd8c5a77584350170abd11.zip
libmount: add mount support for loopdevs
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libmount/src/mountP.h')
-rw-r--r--libmount/src/mountP.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/libmount/src/mountP.h b/libmount/src/mountP.h
index 0a8c7522c..8c63fbd4e 100644
--- a/libmount/src/mountP.h
+++ b/libmount/src/mountP.h
@@ -259,6 +259,7 @@ struct libmnt_context
struct libmnt_table *mtab; /* mtab entries */
int optsmode; /* fstab optstr mode MNT_OPTSMODE_{AUTO,FORCE,IGNORE} */
+ int loopdev_fd; /* open loopdev */
unsigned long mountflags; /* final mount(2) flags */
const void *mountdata; /* final mount(2) data, string or binary data */
@@ -309,6 +310,7 @@ struct libmnt_context
#define MNT_FL_SAVED_USER (1 << 23)
#define MNT_FL_PREPARED (1 << 24)
#define MNT_FL_HELPER (1 << 25) /* [u]mount.<type> */
+#define MNT_FL_LOOPDEV_READY (1 << 26) /* /dev/loop<N> initialized by library */
/* default flags */
#define MNT_FL_DEFAULT 0
@@ -349,6 +351,11 @@ extern int mnt_context_update_tabs(struct libmnt_context *cxt);
extern int mnt_context_umount_setopt(struct libmnt_context *cxt, int c, char *arg);
extern int mnt_context_mount_setopt(struct libmnt_context *cxt, int c, char *arg);
+extern int mnt_context_is_loopdev(struct libmnt_context *cxt);
+extern int mnt_context_setup_loopdev(struct libmnt_context *cxt);
+extern int mnt_context_delete_loopdev(struct libmnt_context *cxt);
+extern int mnt_context_clear_loopdev(struct libmnt_context *cxt);
+
/* tab_update.c */
extern struct libmnt_fs *mnt_update_get_fs(struct libmnt_update *upd);
extern int mnt_update_set_filename(struct libmnt_update *upd,