Subject: re: Upper/lower case - FAT32 partition [OT]
To: 'netbsd-users@netbsd.org' <netbsd-users@netbsd.org>
From: Schwerzmann, Stephan <stephan.schwerzmann@schmid-telecom.ch>
List: netbsd-users
Date: 01/13/2005 15:56:46
>
>Is there a way to mount a FAT32 partition in such
>way that filenames are interpreted the same way
>as Windows?
>
sorry for the noise coming below...
are you really sure you want it "the same way as windows?"
pleas read along: don't be afraid, no questions there ;-)
these days I'm writing a little application which
should be a specialized, trimmed down GUI frontend
to SourceSafe (revision control system from M$): the
program internally calls the CLI version of the
SourceSafe client for a usecase where the original
VisualSourceSafe GUI client is not suitable
while at it, I discovered following strange behaviour
which I'm fairly sure is related to windows filesystem
behaviour
the machine running the command is is fitted with
W2k, it runs only client versions of the SSafe programs
the file effectively resides on a server fitted with
W2003Server - I don't know what filesystem exactly
is in use, but it's one of M$-flavor
the shell in use is 4NT, not command.com
the command queries status of a particular directory
(a project in SSafe jargon)
the last level of directory (SZIPKiosk) has been
created only a few weeks ago, whereas the forelast
(NTDS) surely is older than 6 years, thus was created
with an older combo of win/SSafe versions -probably
NT3.5 or NT4- and even on older machines no more in
operation here
watch the caseness of the parameter on the command
line and compare it with the first line of the output:
[w:\projects\ics] alias ss
\\szusers\sourcesafe\win32\ss.exe
[w:\projects\ics] ss
Microsoft (R) Visual SourceSafe Version 6.0d
Copyright (C) Microsoft Corp. 1994-2002. All rights reserved.
Visual SourceSafe Version 6.0d (Build 31222)
[w:\projects\ics] ss Dir -E "$/Projects/NTDS/SZIPKiosk/"
$/Projects/NTDS/SZIPKiosk:
$_net
$_prog
2 item(s)
[w:\projects\ics] ss Dir -E "$/Projects/NTDS/szipkiosk/"
$/Projects/NTDS/SZIPKiosk:
$_net
$_prog
2 item(s)
[w:\projects\ics] ss Dir -E "$/Projects/ntds/SZIPKiosk/"
$/Projects/ntds/SZIPKiosk:
$_net
$_prog
2 item(s)
[w:\projects\ics]
summing up for the not-so-alert observer:
case 'NTDS':
input UC -> output UC
input lc -> output lc
input CaMeL -> output CaMeL
=> output _always_ idetical to input - out=f(in)
case 'SZIPKiosk':
input CaMeL -> output CaMeL
input lc -> output CaMeL !!!
input UC -> output CaMeL !!!
=> output differs from input: it's constant - out=f(k)
hint:
for some permuted cases of caseness, output is
not shown above, but has been verified.
AGAIN:
are you really sure you want case handling for
M$ filesystems "the same way as windows?"
this means that not all directory levels behave
the same way...
three terms come up for describing filesystem
behaviour in this area:
- case-sensitive and its opposite case-insensitive
- case-retentive
no useful combination of them describes the
behaviour documented above
put in my words: the above is chaos, and
me dont' like that :-/
Stephan