misc/111843: Long Names of files are incorrectly created on msdosfs

Voldemar deka14 at itc.tsu.ru
Thu Apr 19 05:10:02 UTC 2007


>Number:         111843
>Category:       misc
>Synopsis:       Long Names of files are incorrectly created on msdosfs
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Apr 19 05:10:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Voldemar
>Release:        6.1-RELEASE
>Organization:
SSMU
>Environment:
FreeBSD home.ssmu.ru 6.1-RELEASE FreeBSD 6.1-RELEASE #10: Wed Apr 18 21:30:14 OMSST 2007     root at home.ssmu.ru:/usr/obj/usr/src/sys/home  i386                                                      

>Description:
At creation of a new file on FAT12 and FAT32 (and it is possible also FAT16) if the name of a file finished on one or several space or dots and contains before it some other symbols which number is multiple one LFN-record - the name is created incorrect: the counter of the first LFN-record < 0x40.
>How-To-Repeat:
root at home > mount_msdosfs -l /dev/fd0 /mnt
root at home > mkdir /mnt/test
root at home > cd /mnt/test
root at home > echo > 0123456789012\
root at home > echo > 0123456789012-
root at home > echo > 01234567890123\
root at home > ls
0123456789012-  01234567890123  012345~1
root at home > hd -n 512 .
00000000  2e 20 20 20 20 20 20 20  20 20 20 10 00 7b 37 b0  |.          ..{7&#9567;|
00000010  92 36 92 36 00 00 37 b0  92 36 61 06 00 00 00 00  |66..7&#9567;6a.....|
00000020  2e 2e 20 20 20 20 20 20  20 20 20 10 00 7b 37 b0  |..         ..{7&#9567;|
00000030  92 36 92 36 00 00 37 b0  92 36 00 00 00 00 00 00  |66..7&#9567;6......|
00000040  01 30 00 31 00 32 00 33  00 34 00 0f 00 dd 35 00  |.0.1.2.3.4...&#1097;5.|
00000050  36 00 37 00 38 00 39 00  30 00 00 00 31 00 32 00  |6.7.8.9.0...1.2.|
00000060  30 31 32 33 34 35 7e 31  20 20 20 20 00 1f 43 b0  |012345~1    ..C&#9567;|
00000070  92 36 92 36 00 00 43 b0  92 36 ad 00 01 00 00 00  |66..C&#9567;6&#9564;.....|
00000080  42 2d 00 00 00 ff ff ff  ff ff ff 0f 00 fd ff ff  |B-...&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;..&#1065;&#1066;&#1066;|
00000090  ff ff ff ff ff ff ff ff  ff ff 00 00 ff ff ff ff  |&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;..&#1066;&#1066;&#1066;&#1066;|
000000a0  01 30 00 31 00 32 00 33  00 34 00 0f 00 fd 35 00  |.0.1.2.3.4...&#1065;5.|
000000b0  36 00 37 00 38 00 39 00  30 00 00 00 31 00 32 00  |6.7.8.9.0...1.2.|
000000c0  30 31 32 33 34 35 7e 32  20 20 20 20 00 3f 45 b0  |012345~2    .?E&#9567;|
000000d0  92 36 92 36 00 00 45 b0  92 36 b7 00 01 00 00 00  |66..E&#9567;6&#9573;.....|
000000e0  42 33 00 00 00 ff ff ff  ff ff ff 0f 00 1d ff ff  |B3...&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;...&#1066;&#1066;|
000000f0  ff ff ff ff ff ff ff ff  ff ff 00 00 ff ff ff ff  |&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;&#1066;..&#1066;&#1066;&#1066;&#1066;|
00000100  01 30 00 31 00 32 00 33  00 34 00 0f 00 1d 35 00  |.0.1.2.3.4....5.|
00000110  36 00 37 00 38 00 39 00  30 00 00 00 31 00 32 00  |6.7.8.9.0...1.2.|
00000120  30 31 32 33 34 35 7e 33  20 20 20 20 00 2b 49 b0  |012345~3    .+I&#9567;|
00000130  92 36 92 36 00 00 49 b0  92 36 0e 01 01 00 00 00  |66..I&#9567;6......|
00000140  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200

Byte by offset 0x40 == 0x01, but not 0x41 !

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list