diff options
author | imura <imura@FreeBSD.org> | 2000-10-07 15:34:21 +0000 |
---|---|---|
committer | imura <imura@FreeBSD.org> | 2000-10-07 15:34:21 +0000 |
commit | b910a22b7d1b6b9acbe96bd5c62b242dc8581b69 (patch) | |
tree | 1a45795237a5316a076f8649f4af4d44a0df1bc1 /japanese/msdosfs/patches.4 | |
parent | bfc1c4f2f24294d90adcf97626685bfe116be6b9 (diff) | |
download | FreeBSD-ports-b910a22b7d1b6b9acbe96bd5c62b242dc8581b69.zip FreeBSD-ports-b910a22b7d1b6b9acbe96bd5c62b242dc8581b69.tar.gz |
Add new port: ja-msdosfs - mounts japanese FAT.
Be sure to edit ${FILESDIR}/revlist if you modify this
port and sync with the kernel.
Diffstat (limited to 'japanese/msdosfs/patches.4')
-rw-r--r-- | japanese/msdosfs/patches.4/patch-aa | 20 | ||||
-rw-r--r-- | japanese/msdosfs/patches.4/patch-ac | 19 | ||||
-rw-r--r-- | japanese/msdosfs/patches.4/patch-af | 53 | ||||
-rw-r--r-- | japanese/msdosfs/patches.4/patch-ag | 20 | ||||
-rw-r--r-- | japanese/msdosfs/patches.4/patch-ah | 10 | ||||
-rw-r--r-- | japanese/msdosfs/patches.4/patch-ba | 9 | ||||
-rw-r--r-- | japanese/msdosfs/patches.4/patch-bb | 78 |
7 files changed, 209 insertions, 0 deletions
diff --git a/japanese/msdosfs/patches.4/patch-aa b/japanese/msdosfs/patches.4/patch-aa new file mode 100644 index 0000000..9bedceb --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-aa @@ -0,0 +1,20 @@ +--- /dev/null Mon Jul 3 02:05:31 2000 ++++ Makefile Mon Jul 3 02:15:22 2000 +@@ -0,0 +1,17 @@ ++.PATH: ${.CURDIR} ++KMOD= msdos_ja ++SRCS= vnode_if.h \ ++ msdosfs_conv.c msdosfs_denode.c msdosfs_fat.c msdosfs_lookup.c \ ++ msdosfs_vfsops.c msdosfs_vnops.c opt_msdosfs.h ++NOMAN= ++CLEANFILES+= opt_msdosfs.h ++ ++opt_msdosfs.h: ++ touch opt_msdosfs.h ++ echo "#define MSDOSFS_LC_JAPAN 1" >> opt_msdosfs.h ++ ++.if ${MACHINE} == "pc98" ++CFLAGS+= -DPC98 ++.endif ++ ++.include <bsd.kmod.mk> diff --git a/japanese/msdosfs/patches.4/patch-ac b/japanese/msdosfs/patches.4/patch-ac new file mode 100644 index 0000000..93110b5 --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-ac @@ -0,0 +1,19 @@ +--- msdosfs_denode.c.orig Mon Apr 10 04:32:36 2000 ++++ msdosfs_denode.c Wed Oct 4 00:28:00 2000 +@@ -114,6 +114,16 @@ + { + dehashtbl = hashinit(desiredvnodes/2, M_MSDOSFSMNT, &dehash); + simple_lock_init(&dehash_slock); ++ return (0); ++} ++ ++int ++msdosfs_uninit(vfsp) ++ struct vfsconf *vfsp; ++{ ++ ++ if (dehashtbl) ++ free(dehashtbl, M_MSDOSFSMNT); + return (0); + } + diff --git a/japanese/msdosfs/patches.4/patch-af b/japanese/msdosfs/patches.4/patch-af new file mode 100644 index 0000000..63366e2 --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-af @@ -0,0 +1,53 @@ +--- msdosfs_vfsops.c.orig Mon Apr 10 04:32:37 2000 ++++ msdosfs_vfsops.c Wed Oct 4 00:21:29 2000 +@@ -48,11 +48,6 @@ + * October 1992 + */ + +-#include "opt_msdosfs.h" +- +-/* +- * System include files. +- */ + #include <sys/param.h> + #include <sys/systm.h> + #include <sys/conf.h> +@@ -67,9 +62,6 @@ + #include <sys/stat.h> /* defines ALLPERMS */ + #include <vm/vm_zone.h> + +-/* +- * MSDOSFS include files. +- */ + #include <msdosfs/bpb.h> + #include <msdosfs/bootsect.h> + #include <msdosfs/direntry.h> +@@ -77,6 +69,8 @@ + #include <msdosfs/msdosfsmount.h> + #include <msdosfs/fat.h> + ++#define MSDOSFS_DFLTBSIZE 4096 ++ + #if 1 /*def PC98*/ + /* + * XXX - The boot signature formatted by NEC PC-98 DOS looks like a +@@ -635,7 +629,7 @@ + if (FAT12(pmp)) + pmp->pm_fatblocksize = 3 * pmp->pm_BytesPerSec; + else +- pmp->pm_fatblocksize = DFLTBSIZE; ++ pmp->pm_fatblocksize = MSDOSFS_DFLTBSIZE; + + pmp->pm_fatblocksec = pmp->pm_fatblocksize / DEV_BSIZE; + pmp->pm_bnshift = ffs(DEV_BSIZE) - 1; +@@ -987,8 +981,8 @@ + msdosfs_checkexp, + msdosfs_vptofh, + msdosfs_init, +- vfs_stduninit, ++ msdosfs_uninit, + vfs_stdextattrctl, + }; + +-VFS_SET(msdosfs_vfsops, msdos, 0); ++VFS_SET(msdosfs_vfsops, msdos_ja, 0); diff --git a/japanese/msdosfs/patches.4/patch-ag b/japanese/msdosfs/patches.4/patch-ag new file mode 100644 index 0000000..b39384f --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-ag @@ -0,0 +1,20 @@ +--- msdosfs_vnops.c.orig Mon Apr 10 04:32:37 2000 ++++ msdosfs_vnops.c Wed Oct 4 00:13:39 2000 +@@ -1108,7 +1108,6 @@ + VOP_UNLOCK(fvp, 0, p); + if (VTODE(fdvp)->de_StartCluster != VTODE(tdvp)->de_StartCluster) + newparent = 1; +- vrele(fdvp); + if (doingdirectory && newparent) { + if (error) /* write access check above */ + goto bad; +@@ -1176,7 +1175,8 @@ + panic("msdosfs_rename: lost from startdir"); + if (!newparent) + VOP_UNLOCK(tdvp, 0, p); +- (void) relookup(fdvp, &fvp, fcnp); ++ if (relookup(fdvp, &fvp, fcnp) == 0) ++ vrele(fdvp); + if (fvp == NULL) { + /* + * From name has disappeared. diff --git a/japanese/msdosfs/patches.4/patch-ah b/japanese/msdosfs/patches.4/patch-ah new file mode 100644 index 0000000..d714acc --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-ah @@ -0,0 +1,10 @@ +--- msdosfsmount.h.orig Mon Apr 10 04:32:37 2000 ++++ msdosfsmount.h Wed Oct 4 00:13:52 2000 +@@ -198,6 +198,7 @@ + (1024 << ((pmp)->pm_BlkPerSec >> 2)) + + int msdosfs_init __P((struct vfsconf *vfsp)); ++int msdosfs_uninit __P((struct vfsconf *vfsp)); + int msdosfs_mountroot __P((void)); + + #endif /* _KERNEL */ diff --git a/japanese/msdosfs/patches.4/patch-ba b/japanese/msdosfs/patches.4/patch-ba new file mode 100644 index 0000000..9fcc8af --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-ba @@ -0,0 +1,9 @@ +--- ../../mount_msdos/Makefile.orig Mon Jul 3 02:53:38 2000 ++++ ../../mount_msdos/Makefile Mon Jul 3 02:53:52 2000 +@@ -3,6 +3,6 @@ + # + +-PROG= mount_msdos ++PROG= mount_jamsdos + SRCS= mount_msdos.c getmntopts.c + MAN8= mount_msdos.8 diff --git a/japanese/msdosfs/patches.4/patch-bb b/japanese/msdosfs/patches.4/patch-bb new file mode 100644 index 0000000..12cf0e4 --- /dev/null +++ b/japanese/msdosfs/patches.4/patch-bb @@ -0,0 +1,78 @@ +--- ../../mount_msdos/mount_msdos.c.orig Mon Jul 3 22:56:20 2000 ++++ ../../mount_msdos/mount_msdos.c Mon Jul 3 23:02:54 2000 +@@ -39,8 +39,6 @@ + #include <sys/mount.h> + #include <sys/stat.h> + +-#include <msdosfs/msdosfsmount.h> +- + #include <ctype.h> + #include <err.h> + #include <grp.h> +@@ -55,6 +53,7 @@ + #include <unistd.h> + + #include "mntopts.h" ++#include "msdosfsmount.h" + + /* + * XXX - no way to specify "foo=<bar>"-type options; that's what we'd +@@ -95,8 +94,9 @@ + mntflags = set_gid = set_uid = set_mask = 0; + (void)memset(&args, '\0', sizeof(args)); + args.magic = MSDOSFS_ARGSMAGIC; ++ args.flags = MSDOSFSMNT_EUCJAPAN; + +- while ((c = getopt(argc, argv, "sl9u:g:m:o:L:W:")) != -1) { ++ while ((c = getopt(argc, argv, "sl9u:g:m:o:")) != -1) { + switch (c) { + #ifdef MSDOSFSMNT_GEMDOSFS + case 'G': +@@ -124,14 +124,6 @@ + args.mask = a_mask(optarg); + set_mask = 1; + break; +- case 'L': +- load_ultable(&args, optarg); +- args.flags |= MSDOSFSMNT_ULTABLE; +- break; +- case 'W': +- load_u2wtable(&args, optarg); +- args.flags |= MSDOSFSMNT_U2WTABLE; +- break; + case 'o': + getmntopts(optarg, mopts, &mntflags, &args.flags); + break; +@@ -173,15 +165,15 @@ + args.mask = sb.st_mode & (S_IRWXU | S_IRWXG | S_IRWXO); + } + +- error = getvfsbyname("msdos", &vfc); +- if (error && vfsisloadable("msdos")) { +- if (vfsload("msdos")) +- err(EX_OSERR, "vfsload(msdos)"); ++ error = getvfsbyname("msdos_ja", &vfc); ++ if (error && vfsisloadable("msdos_ja")) { ++ if (vfsload("msdos_ja")) ++ err(EX_OSERR, "vfsload(msdos_ja)"); + endvfsent(); /* clear cache */ +- error = getvfsbyname("msdos", &vfc); ++ error = getvfsbyname("msdos_ja", &vfc); + } + if (error) +- errx(EX_OSERR, "msdos filesystem is not available"); ++ errx(EX_OSERR, "msdos_ja filesystem is not available"); + + if (mount(vfc.vfc_name, mntpath, mntflags, &args) < 0) + err(EX_OSERR, "%s", dev); +@@ -251,8 +243,8 @@ + usage() + { + fprintf(stderr, "%s\n%s\n", +- "usage: mount_msdos [-o options] [-u user] [-g group] [-m mask]", +- " [-s] [-l] [-9] [-L locale] [-W table] bdev dir"); ++ "usage: mount_jmsdos [-o options] [-u user] [-g group] [-m mask]", ++ " [-s] [-l] [-9] bdev dir"); + exit(EX_USAGE); + } + |