This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: setup and colons in filenames
- From: Jon Turney <jon dot turney at dronecode dot org dot uk>
- To: cygwin-apps at cygwin dot com
- Date: Wed, 25 Oct 2017 20:23:50 +0100
- Subject: Re: setup and colons in filenames
- Authentication-results: sourceware.org; auth=none
- References: <d5f2eaf3-b24f-0430-71fd-50bce87e0b32@cornell.edu>
On 25/10/2017 16:50, Ken Brown wrote:
This is a followup to the thread started here:
https://cygwin.com/ml/cygwin-patches/2017-q4/msg00012.html
Currently setup's parse_filename is not correctly parsing filenames in
/etc/setup/installed.db that contain colons, as explained in the above
thread. It would be easy to fix this by just ripping out the 'base'
function, except for the fact that parse_filename is called by
ScanFindVisitor::visitFile.
Since older setup cannot correctly parse an installed.db containing
filenames like that, we should probably bump the installed.db version at
the same time as fixing this.
I don't know enough about WIN32_FIND_DATA to know whether the call to
'base' is needed for that use of parse_filename. If so, is it safe to
skip all colons in that setting, since we're dealing with Win32
filenames and they don't see the colons in Cygwin filenames?
Yeah, that's about as far as I got before giving up...
Do we need two versions of parse_filename, one that calls base and one
that doesn't?
This might be the easiest solution :)
The other concern I had was if the filenames for the package archives
stored in the download cache end up containing a ':', which I thought
wasn't allowed in windows filenames?