Filenames with Win32 special characters (or: Interix filename compatibility)

Eric Blake
Fri Jul 11 20:21:00 GMT 2008

According to Corinna Vinschen on 7/11/2008 11:17 AM:
> Here's another question.
> Case sensitivity and converting special chars to the 0xf0xx range are
> actually two different problems.  The conversion is only required on
> FAT or NTFS (including Samba) but not on NFS or EXT2.  So, actually
> we have more cases which look useful:
> - nothing, just standard Win32 compatibility
> - convert special char and convert upper case, for those who need it
>   but don't want to tweak the registry
> - case sensitive, for NFS, EXT2, etc.
> - convert special char and case sensitive, for FAT, NTFS, Interix
>   compatible
> So, wouldn't it make sense to have two mount options, one for the char
> conversion ("managed") and one for case sensitivity ("case", "posix")?

I've already been enjoying the fact that 1.7.0 (to date) has made using 
special characters like '<' much easier, without needing a mount option. 
But I can also understand the goal of wanting to prohibit filenames that 
Win32 can't handle in certain directories, whether we can use special char 
mapping or NT-level case sensitive flags to create file names that Win32 
doesn't handle nicely.  I think having multiple mount options for the 
different things to tweak (0xff00 masking and case-sensitivity) is useful, 
but wonder if defaults when mount options are not used should favor POSIX 
at the expense of Win32, rather than requiring lots of mount table entries 
just to get POSIX file name capabilities.

Don't work too hard, make some time for fun as well!

Eric Blake   

More information about the Cygwin-developers mailing list