diff options
author | Miklos Szeredi <mszeredi@suse.cz> | 2008-02-08 07:21:40 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-08 12:22:40 -0500 |
commit | e55e212c083f0c51a7d4eccd1746b6dca40ffc41 (patch) | |
tree | 2e47635c26ab7e6773a89a686b43c3e022bdf785 /drivers/isdn | |
parent | 552c3c6c565d08857df48e77e8ce2b223517c3ee (diff) |
mount options: fix capifs
Add a .show_options super operation to capifs.
Use generic_show_options() and save the complete option string in
capifs_remount().
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/isdn')
-rw-r--r-- | drivers/isdn/capi/capifs.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/isdn/capi/capifs.c b/drivers/isdn/capi/capifs.c index 2dd1b57b0ba4..6d7c47ec0367 100644 --- a/drivers/isdn/capi/capifs.c +++ b/drivers/isdn/capi/capifs.c | |||
@@ -52,6 +52,7 @@ static int capifs_remount(struct super_block *s, int *flags, char *data) | |||
52 | gid_t gid = 0; | 52 | gid_t gid = 0; |
53 | umode_t mode = 0600; | 53 | umode_t mode = 0600; |
54 | char *this_char; | 54 | char *this_char; |
55 | char *new_opt = kstrdup(data, GFP_KERNEL); | ||
55 | 56 | ||
56 | this_char = NULL; | 57 | this_char = NULL; |
57 | while ((this_char = strsep(&data, ",")) != NULL) { | 58 | while ((this_char = strsep(&data, ",")) != NULL) { |
@@ -72,11 +73,16 @@ static int capifs_remount(struct super_block *s, int *flags, char *data) | |||
72 | return -EINVAL; | 73 | return -EINVAL; |
73 | } | 74 | } |
74 | } | 75 | } |
76 | |||
77 | kfree(s->s_options); | ||
78 | s->s_options = new_opt; | ||
79 | |||
75 | config.setuid = setuid; | 80 | config.setuid = setuid; |
76 | config.setgid = setgid; | 81 | config.setgid = setgid; |
77 | config.uid = uid; | 82 | config.uid = uid; |
78 | config.gid = gid; | 83 | config.gid = gid; |
79 | config.mode = mode; | 84 | config.mode = mode; |
85 | |||
80 | return 0; | 86 | return 0; |
81 | } | 87 | } |
82 | 88 | ||
@@ -84,6 +90,7 @@ static struct super_operations capifs_sops = | |||
84 | { | 90 | { |
85 | .statfs = simple_statfs, | 91 | .statfs = simple_statfs, |
86 | .remount_fs = capifs_remount, | 92 | .remount_fs = capifs_remount, |
93 | .show_options = generic_show_options, | ||
87 | }; | 94 | }; |
88 | 95 | ||
89 | 96 | ||