This is the mail archive of the
mailing list for the Cygwin project.
Re: Cygwin preserving filenames ending in period
- From: Brian Dessent <brian at dessent dot net>
- To: cygwin at cygwin dot com
- Date: Fri, 25 Feb 2005 09:45:08 -0800
- Subject: Re: Cygwin preserving filenames ending in period
- Organization: My own little world...
- References: <Pine.GSO.firstname.lastname@example.org>
- Reply-to: cygwin at cygwin dot com
Lloyd Wood wrote:
> I've just discovered that Cygwin does not preserve filenames ending in
> a period, and treats the filenames with and without the period as
> identical. This is contrary to other linux systems.
> describes the problem; a file named 'Makefile_defs.' was created by
> cvs, but eventually got packaged up as 'Makefile_defs' causing build
> errors on platforms other than Cygwin.
Because It's Windows(tm). If I recall correctly the lowest level NT
APIs can create filenames with trailing dots on NTFS volumes, but none
of the higher level APIs (win32) can deal with a trailing dot. The
Microsoft platform SDK in the section "Naming a File" in the Storage
"Do not end a file or directory name with a trailing space or a period.
Although the underlying file system may support such names, the
operating system does not. "
I think that Cygwin does use the NT level API for several reasons (speed
and capability), but if it were to allow trailing-dotted filenames it
would mean that you could create a file in Cygwin that would be
undeleteable/unaccessable with normal windows tools. It would also
create a behavior that would only work on NT kernels and NTFS
filesystem, while Cygwin in general has to support 9x, FAT, etc.
You should look into using a managed mount if you absolutely must have
files with names that are incompatible with Windows.
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html