Re: [PATCH] VFAT fixes.

Albert D. Cahalan (acahalan@cs.uml.edu)
Fri, 15 Jan 1999 07:48:22 -0500 (EST)


Alexander Viro writes:
> On Fri, 15 Jan 1999, Albert D. Cahalan wrote:

>> + /* Yes, it can happen. ".\xe5" would do it. */
>> + if (IS_FREE(base))
>> + base[0]='_';
>>
>>
>> base[0] ought to become 0x05, not '_'
>
> OK, accepted. What would you propose for 0xf6? It's also covered
> by IS_FREE stuff.

Oh, that is a bug. Both DOS 6.22 and NT 4sp3 are happy with 0xf6.
They can read and write 0xf6 in any character position, unlike Linux.

I'd guess the 0xf6 bug is a leftover from Atari DOS support.
The IS_FREE stuff would need to test for Atari format perhaps.

Note that 0x05 is only legal as a substitute for 0x05 in the first
character slot. To save code, Linux could unconditionally translate
when reading.

On a read, NT does translation only for the first character.
A manually created file with "\05\05-E-5" on disk will be displayed
as "\xe5\05-E-5", but will not be accessible by any name.

Clearly 0x05 must never appear in the short name except at the
beginning as a substitute for 0xe5. NT can create and use a file
with 0x05 anywhere by using the long name and '_' for mangling.

begin 664 Sector.bin.gz
M'XL(`&GVEC8"`]-3@`,!!CC8HJ*I-E\;Q-+3PR4/8;$^U771-3*R!"E`R%NJ
M:JHMT&8'LKY]`\F;F*'*>P+E%X+E'0\S'V;692AGT&7@9]AOQ&#$8`D4_0\$
M$/+)$]UPN/E&U]4TU4`VWP"2B[390/J_,WQG@.D7,F(P83!#T0^T/QQNO\@3
MJ/ZG0'(Q1'^R6K(:3'^^*50O0G]\/%"_:9TA6'^3@3I$OR&07J+-`M(?S)#*
MD,Q0PI`/U*];Q&``A'H,*0S%0+EL(`YV=0[Q#S(P<`GV5F#0N:4!T7\;2"_5
M9F!B8'#Q#-*-@`8PAXVH)D3^(I!>INW$##1_,?-B>/C,!X6/!;;PL0"[;V,Y
35'\%D%X.]A\A``#."9^V``(`````
`
end

begin 664 dir-x.gz
M'XL(`(KVEC8"`YV2WVK",!3&K[PI^`[G<@.K29OT'V,P;`NRJ6#'O!F4ND8(
MJQ-2G?-F3ZNOX/424;"Q96/G+E^^[W=.#H&79;%>,.`?D`O^R:`/O(1A8H;C
M)'7:!ISN$R9X5L!HO9@QH2P6)K'I1S9N&](5<L'>5DNQA>4<^L%K/'B*1@_#
M2%TBW$-^S_<!$`EL-X-3W86#R3TT5O?_23U*<%9K=*^4_=X,3<OR=8#U5\#A
MH`#$T0"4U`,<V.W,J>IX,<&F9@)*FP"RXU1UO)A@4S>!6P\@D*820+_Q66FU
M)(!6XC1`3EV<8@N2J/\\GB#4#9-'I27'CR#/>?FN07##%M"5DG-A?NEI_,L.
MO;,BSVJ'GOR8E<((8EZPF_*V\@CBP6R[8J5NU\JR.RXA'?7FHQWF@K&V\0-L
'2\*;0@,`````
`
end

/bin/ls -lQ
total 24
-rwxrwxrwx 1 albert luser 6 Jan 9 00:11 "??-w-228"
-rwxrwxrwx 1 albert luser 6 Jan 8 23:54 "??-w-229"
-rwxrwxrwx 1 albert luser 4 Jan 8 23:57 "??-w-5"
-rwxrwxrwx 1 albert luser 512 Jan 9 00:16 "Sector00.dsk"
-rwxrwxrwx 1 albert luser 834 Jan 9 00:14 "dir-x"
-rwxrwxrwx 1 albert luser 7 Jan 8 23:41 "\345\345-d-229"

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/