Re: [PATCH v2] libmount: fix support of comma-separated fs types lists

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 Hi,

On Thu, Sep 27, 2012 at 08:48:34PM +0400, Gleb Fotengauer-Malinovskiy wrote:
> 	# grep cdrom /etc/fstab
> 	/dev/sr0 /media/cdrom udf,iso9660 ro,noauto,user,utf8 0 0
> 	# mount /media/cdrom
> 	mount: unknown filesystem type 'udf,iso9660'

 this first time I see that someone has a pattern in fstab, it seems
 undocumented and very probably unsupported on many places. But it
 seems that old (non-libmount) supported this feature too.

> 	# mount -t udf,iso9660 /dev/sr0 /media/cdrom
> 	mount: /dev/sr0 is write-protected, mounting read-only
> 
> Signed-off-by: Gleb Fotengauer-Malinovskiy <glebfm@xxxxxxxxxxxx>
> ---
>  libmount/src/context_mount.c | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/libmount/src/context_mount.c b/libmount/src/context_mount.c
> index f3d8ff1..867e644 100644
> --- a/libmount/src/context_mount.c
> +++ b/libmount/src/context_mount.c
> @@ -691,9 +691,12 @@ int mnt_context_do_mount(struct libmnt_context *cxt)
>  		cxt->mountdata = (char *) mnt_fs_get_fs_options(cxt->fs);
>  
>  	type = mnt_fs_get_fstype(cxt->fs);
> -	if (type)
> -		res = do_mount(cxt, NULL);
> -	else
> +	if (type) {
> +		if (strchr(type, ','))
> +			res = do_mount_by_pattern(cxt, type);
> +		else
> +			res = do_mount(cxt, NULL);
> +	} else
>  		res = do_mount_by_pattern(cxt, cxt->fstype_pattern);

 This is hack ;-)

 It would be better to improve mnt_context_apply_fstab() to initialize
 cxt->fstype_pattern (see mnt_context_set_fstype_pattern()) and
 zeroize cxt->fs->type if the fstab entry contains a pattern rather
 than a real fstype.

    Karel

-- 
 Karel Zak  <kzak@xxxxxxxxxx>
 http://karelzak.blogspot.com
--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux