>Number: 186193 >Category: misc >Synopsis: mount_udf always return "Invalid argument". >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 28 12:20:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Arnot Bělohlávek >Release: Freebsd 10.0-STABLE >Organization: FJFI ČVUT Prague, Czech Republic >Environment: FreeBSD Helmut2.2a 10.0-STABLE FreeBSD 10.0-STABLE #0: Wed Jan 22 18:19:17 CET 2014 belzebub@Helmut2.2a:/usr/obj/usr/src/sys/H2CORE amd64
>Description: "mount_udf special node" always return "Invalid argument", also if the special does not exist or is true udf fs. Finally, no udf dvd or image can be mounted. >How-To-Repeat: mount_udf /dev/anything /cdrom >Fix: Problem is caused by little programming error in src/sbin/mount_udf/mount_udf.c. Sending patch for this file... Patch attached with submission follows: --- mount_udf.c.orig 2014-01-28 12:52:33.000000000 +0100 +++ mount_udf.c 2014-01-28 12:53:44.000000000 +0100 @@ -77,9 +77,9 @@ char fstype[] = "udf"; struct iovec *iov; char *cs_disk, *cs_local, *dev, *dir; - int ch, i, iovlen, mntflags, udf_flags, verbose; + int ch, iovlen, mntflags, udf_flags, verbose; - i = iovlen = mntflags = udf_flags = verbose = 0; + iovlen = mntflags = udf_flags = verbose = 0; cs_disk = cs_local = NULL; iov = NULL; while ((ch = getopt(argc, argv, "o:vC:")) != -1) @@ -129,7 +129,7 @@ build_iovec(&iov, &iovlen, "cs_disk", cs_disk, (size_t)-1); build_iovec(&iov, &iovlen, "cs_local", cs_local, (size_t)-1); } - if (nmount(iov, i, mntflags) < 0) + if (nmount(iov, iovlen, mntflags) < 0) err(1, "%s", dev); exit(0); } >Release-Note: >Audit-Trail: >Unformatted:
_______________________________________________ freebsd-bugs@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-bugs To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"