diff options
author | ache <ache@FreeBSD.org> | 1998-02-23 16:44:37 +0000 |
---|---|---|
committer | ache <ache@FreeBSD.org> | 1998-02-23 16:44:37 +0000 |
commit | 495995d8abf05d35e39492513fef8d94d7282d31 (patch) | |
tree | 6dcec2bc456ee67d6decdf6939733203e159feda /sys/msdosfs/msdosfs_lookup.c | |
parent | d6489564846ac15d58bdfe2cee9ce825afc6d170 (diff) | |
download | FreeBSD-src-495995d8abf05d35e39492513fef8d94d7282d31.zip FreeBSD-src-495995d8abf05d35e39492513fef8d94d7282d31.tar.gz |
Implement loadable DOS<->local conversion tables for DOS names
Always create DOS name in uppercase
Always view DOS name in lowercase
Diffstat (limited to 'sys/msdosfs/msdosfs_lookup.c')
-rw-r--r-- | sys/msdosfs/msdosfs_lookup.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/sys/msdosfs/msdosfs_lookup.c b/sys/msdosfs/msdosfs_lookup.c index 4d0663a..666e768 100644 --- a/sys/msdosfs/msdosfs_lookup.c +++ b/sys/msdosfs/msdosfs_lookup.c @@ -1,4 +1,4 @@ -/* $Id: msdosfs_lookup.c,v 1.18 1998/02/22 18:00:52 ache Exp $ */ +/* $Id: msdosfs_lookup.c,v 1.19 1998/02/23 09:39:25 ache Exp $ */ /* $NetBSD: msdosfs_lookup.c,v 1.37 1997/11/17 15:36:54 ws Exp $ */ /*- @@ -151,7 +151,9 @@ msdosfs_lookup(ap) } switch (unix2dosfn((const u_char *)cnp->cn_nameptr, dosfilename, - cnp->cn_namelen, 0)) { + cnp->cn_namelen, 0, + pmp->pm_flags & MSDOSFSMNT_U2WTABLE, pmp->pm_u2d, + pmp->pm_flags & MSDOSFSMNT_ULTABLE, pmp->pm_lu)) { case 0: return (EINVAL); case 1: @@ -256,10 +258,10 @@ msdosfs_lookup(ap) cnp->cn_namelen, (struct winentry *)dep, chksum, - (pmp->pm_flags & MSDOSFSMNT_U2WTABLE) ? - pmp->pm_u2w : NULL, - (pmp->pm_flags & MSDOSFSMNT_ULTABLE) ? - pmp->pm_ul : NULL); + pmp->pm_flags & MSDOSFSMNT_U2WTABLE, + pmp->pm_u2w, + pmp->pm_flags & MSDOSFSMNT_ULTABLE, + pmp->pm_lu); continue; } @@ -643,8 +645,8 @@ createde(dep, ddep, depp, cnp) } if (!unix2winfn(un, unlen, (struct winentry *)ndep, cnt++, chksum, - (pmp->pm_flags & MSDOSFSMNT_U2WTABLE) ? - pmp->pm_u2w : NULL)); + pmp->pm_flags & MSDOSFSMNT_U2WTABLE, + pmp->pm_u2w)) break; } } @@ -980,7 +982,9 @@ uniqdosname(dep, cnp, cp) * Generate DOS name with generation number */ if (!unix2dosfn((const u_char *)cnp->cn_nameptr, cp, - cnp->cn_namelen, gen)) + cnp->cn_namelen, gen, + pmp->pm_flags & MSDOSFSMNT_U2WTABLE, pmp->pm_u2d, + pmp->pm_flags & MSDOSFSMNT_ULTABLE, pmp->pm_lu)) return gen == 1 ? EINVAL : EEXIST; /* |