freebsd-dev/sys/fs
R. Imura 697ab829fc [1] unix2doschr()
If a character cannot be converted to DOS code page,
 unix2doschr() returned `0'. As a result, unix2dosfn()
 was forced to return `0', so we saw a file which was
 composed of these characters as `Invalid argument'.
 To correct this, if a character can be converted to
 Unicode, unix2doschr() now returns `1' which is a magic
 number to make unix2dosfn() know that the character
 must be converted to `_'.

[2] unix2dosfn()
 The above-mentioned solution only works if a file
 has both of Unicode name and DOS code page name.
 Unicode name would not be recorded if file name
 can be settled within 11 bytes (DOS short name)
 and if no conversion from Unix charset to DOS code
 page has occurred. Thus, FreeBSD can create a file
 which has only short name, but there is no guarantee
 that the short name contains allways valid characters
 because we leave it to people by using mount_msdosfs(8)
 to select which conversion is used between DOS code
 page and unix charset.
 To avoid this, Unicode file name should be recorded
 unless a character is an ascii character. This is
 the way Windows XP do.

PR:		77074 [1]
MFC after:	1 week
2005-07-17 07:10:05 +00:00
..
cd9660 - Change all filesystems and vfs_cache to relock the dvp once the child is 2005-04-13 10:59:09 +00:00
coda - Change all filesystems and vfs_cache to relock the dvp once the child is 2005-04-13 10:59:09 +00:00
deadfs - Deadfs may now use the standard vop lock, get rid of dead_lock(). 2005-03-13 12:06:20 +00:00
devfs When devfs cloning takes place, provide access to the credential of the 2005-07-14 10:22:09 +00:00
fdescfs - Update vfs_root implementations to match the new prototype. None of 2005-03-24 07:36:16 +00:00
fifofs - The VI_DOOMED flag now signals the end of a vnode's relationship with 2005-03-13 12:18:25 +00:00
hpfs - Change all filesystems and vfs_cache to relock the dvp once the child is 2005-04-13 10:59:09 +00:00
msdosfs [1] unix2doschr() 2005-07-17 07:10:05 +00:00
ntfs The printf(9) `%p' conversion specifier puts an "0x" in 2005-05-06 00:15:57 +00:00
nullfs - As this is presently the one and only place where duplicate acquires of 2005-04-22 22:42:44 +00:00
nwfs Do not dereference dvp pointer before doing a NULL check. 2005-05-11 19:08:38 +00:00
portalfs - We no longer have to bother with PDIRUNLOCK, lookup() handles it for us. 2005-03-28 09:34:36 +00:00
procfs Jumbo-commit to enhance 32 bit application support on 64 bit kernels. 2005-06-30 07:49:22 +00:00
pseudofs - Since we don't hold a usecount in pfs_exit we have to get a holdcnt 2005-07-07 07:33:10 +00:00
smbfs Staticize a symbol used only in this file. 2005-05-06 20:47:09 +00:00
udf Regrab dvp only when ISDOTDOT. 2005-07-09 13:52:49 +00:00
umapfs - Update vfs_root implementations to match the new prototype. None of 2005-03-24 07:36:16 +00:00
unionfs - Set the v_object pointer after a successful VOP_OPEN(). This isn't a 2005-05-03 11:05:33 +00:00