diff options
author | Karel Zak | 2013-08-20 12:41:27 +0200 |
---|---|---|
committer | Karel Zak | 2013-08-20 12:41:27 +0200 |
commit | 2bc04c11f967261839f1ae21038c4a43faed8d1d (patch) | |
tree | 2d29c0e0bfaa5e0ce6b03c2472f128881406f7dc /libmount/src | |
parent | libmount: add mnt_table_with_comments() (diff) | |
download | kernel-qcow2-util-linux-2bc04c11f967261839f1ae21038c4a43faed8d1d.tar.gz kernel-qcow2-util-linux-2bc04c11f967261839f1ae21038c4a43faed8d1d.tar.xz kernel-qcow2-util-linux-2bc04c11f967261839f1ae21038c4a43faed8d1d.zip |
libmount: add mnt_table_{set,get}_userdata()
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libmount/src')
-rw-r--r-- | libmount/src/libmount.h.in | 3 | ||||
-rw-r--r-- | libmount/src/libmount.sym | 2 | ||||
-rw-r--r-- | libmount/src/tab.c | 31 |
3 files changed, 36 insertions, 0 deletions
diff --git a/libmount/src/libmount.h.in b/libmount/src/libmount.h.in index df78c268a..c2aa4fa83 100644 --- a/libmount/src/libmount.h.in +++ b/libmount/src/libmount.h.in @@ -413,6 +413,9 @@ extern void mnt_free_table(struct libmnt_table *tb); extern int mnt_reset_table(struct libmnt_table *tb); extern int mnt_table_get_nents(struct libmnt_table *tb); +extern int mnt_table_set_userdata(struct libmnt_table *tb, void *data); +extern void *mnt_table_get_userdata(struct libmnt_table *tb); + extern void mnt_table_enable_comments(struct libmnt_table *tb, int enable); extern int mnt_table_with_comments(struct libmnt_table *tb); extern const char *mnt_table_get_intro_comment(struct libmnt_table *tb); diff --git a/libmount/src/libmount.sym b/libmount/src/libmount.sym index 2cb101c48..508c5cd38 100644 --- a/libmount/src/libmount.sym +++ b/libmount/src/libmount.sym @@ -267,9 +267,11 @@ global: mnt_table_enable_comments; mnt_table_get_intro_comment; mnt_table_get_trailing_comment; + mnt_table_get_userdata; mnt_table_replace_file; mnt_table_set_intro_comment; mnt_table_set_trailing_comment; + mnt_table_set_userdata; mnt_table_with_comments; mnt_table_write_file; } MOUNT_2.23; diff --git a/libmount/src/tab.c b/libmount/src/tab.c index c79b9819c..a8b462faa 100644 --- a/libmount/src/tab.c +++ b/libmount/src/tab.c @@ -128,6 +128,37 @@ int mnt_table_get_nents(struct libmnt_table *tb) } /** + * mnt_table_set_userdata: + * @tb: pointer to tab + * @data: pointer to user data + * + * Sets pointer to the private user data. + * + * Returns: 0 on success or negative number in case of error. + */ +int mnt_table_set_userdata(struct libmnt_table *tb, void *data) +{ + assert(tb); + if (!tb) + return -EINVAL; + + tb->userdata = data; + return 0; +} + +/** + * mnt_table_get_userdata: + * @tb: pointer to tab + * + * Returns: pointer to user's data. + */ +void *mnt_table_get_userdata(struct libmnt_table *tb) +{ + assert(tb); + return tb ? tb->userdata : NULL; +} + +/** * mnt_table_enable_comments: * @tb: pointer to tab * @enable: TRUE or FALSE |