[patch] mount fails to call external programs
Garrett Cooper
youshi10 at u.washington.edu
Thu Feb 1 07:31:43 UTC 2007
Yoshihiro Ota wrote:
> Hello.
>
> The 'mount' program attempts to maintain external mount programs in order to determine whether it needs to call external programs or handle it internally.
>
> Not all external programs can be listed in mount.c. Indeed, my mount_md failed after mount trying to handle it itself.
>
> The solution is to maintain interally handlable fs types.
>
> I am not fully sure if I listed all of them correctly; however, it fixes the problem.
>
> Thanks,
> Hiro
>
>
> ------------------------------------------------------------------------
>
> Index: mount.c
> ===================================================================
> RCS file: /home/ncvs/src/sbin/mount/mount.c,v
> retrieving revision 1.92
> diff -u -r1.92 mount.c
> --- mount.c 14 Nov 2006 01:07:42 -0000 1.92
> +++ mount.c 1 Feb 2007 05:25:55 -0000
> @@ -133,18 +133,19 @@
> */
> unsigned int i;
> const char *fs[] = {
> - "cd9660", "mfs", "msdosfs", "nfs", "nfs4", "ntfs",
> - "nwfs", "nullfs", "portalfs", "smbfs", "udf", "umapfs",
> - "unionfs",
> + "ufs",
> + "ext2fs",
> + "devfs", "fdescfs", "procfs", "linprocfs", "linsysfs",
> + "std",
> NULL
> };
>
> for (i = 0; fs[i] != NULL; ++i) {
> if (strcmp(vfstype, fs[i]) == 0)
> - return (1);
> + return (0);
> }
>
> - return (0);
> + return (1);
> }
>
> static int
>
>
> ------------------------------------------------------------------------
Unfortunately your patch voids the point of having the filesystems
listed there, according to the author of the comment directly above
structure you have shown.
I honestly don't know why anyone would want to statically define that
though, because mount_* searching in $PATH should suffice, and the
nmount interface could be maintained in each sourcefile. Just my
thoughts on the subject though..
-Garrett
More information about the freebsd-current
mailing list