From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 49245 invoked by alias); 25 Oct 2017 20:16:57 -0000 Mailing-List: contact cygwin-apps-help@cygwin.com; run by ezmlm Precedence: bulk Sender: cygwin-apps-owner@cygwin.com List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps@cygwin.com Received: (qmail 49234 invoked by uid 89); 25 Oct 2017 20:16:56 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-100.6 required=5.0 tests=AWL,BAYES_00,GOOD_FROM_CORINNA_CYGWIN,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_BRBL_LASTEXT,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=H*R:D*cygwin.com X-HELO: drew.franken.de Received: from mail-n.franken.de (HELO drew.franken.de) (193.175.24.27) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 25 Oct 2017 20:16:55 +0000 Received: from aqua.hirmke.de (aquarius.franken.de [193.175.24.89]) (Authenticated sender: aquarius) by mail-n.franken.de (Postfix) with ESMTPSA id CAEF57041A464 for ; Wed, 25 Oct 2017 22:16:51 +0200 (CEST) Received: from calimero.vinschen.de (calimero.vinschen.de [192.168.129.6]) by aqua.hirmke.de (Postfix) with ESMTP id E228B5E046F for ; Wed, 25 Oct 2017 22:16:50 +0200 (CEST) Received: by calimero.vinschen.de (Postfix, from userid 500) id CF74BA818DF; Wed, 25 Oct 2017 22:16:50 +0200 (CEST) Date: Wed, 25 Oct 2017 20:16:00 -0000 From: Corinna Vinschen To: cygwin-apps@cygwin.com Subject: Re: setup and colons in filenames Message-ID: <20171025201650.GJ22429@calimero.vinschen.de> Reply-To: cygwin-apps@cygwin.com Mail-Followup-To: cygwin-apps@cygwin.com References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="9/eUdp+dLtKXvemk" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.1 (2017-09-22) X-SW-Source: 2017-10/txt/msg00124.txt.bz2 --9/eUdp+dLtKXvemk Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-length: 2278 On Oct 25 20:23, Jon Turney wrote: > On 25/10/2017 16:50, Ken Brown wrote: > > This is a followup to the thread started here: > >=20 > > =C2=A0 https://cygwin.com/ml/cygwin-patches/2017-q4/msg00012.html > >=20 > > Currently setup's parse_filename is not correctly parsing filenames in > > /etc/setup/installed.db that contain colons, as explained in the above > > thread.=C2=A0 It would be easy to fix this by just ripping out the 'bas= e' > > function, except for the fact that parse_filename is called by > > ScanFindVisitor::visitFile. >=20 > 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. >=20 > > I don't know enough about WIN32_FIND_DATA to know whether the call to > > 'base' is needed for that use of parse_filename.=C2=A0 If so, is it saf= e to > > skip all colons in that setting, since we're dealing with Win32 > > filenames and they don't see the colons in Cygwin filenames? >=20 > Yeah, that's about as far as I got before giving up... >=20 > > Do we need two versions of parse_filename, one that calls base and one > > that doesn't? >=20 > This might be the easiest solution :) >=20 > The other concern I had was if the filenames for the package archives sto= red > in the download cache end up containing a ':', which I thought wasn't > allowed in windows filenames? Colons in Cygwin filenames will have 0xf03a value in WIN32. The code to transpose special chars into the private use area at 0xf0XY is in setup, but I'm not sure if setup is really working correctly with archives containing a colon. That is: - downloading the archive to the local drive with the filename transposed (rather than failing to store the file) - storing the filename with a real colon in installed.db and still being able to transpose the filename when fetched from installed.db. Especially the latter part is interesting since the reverse operation (transposing back from 0xf0XY to 0xXY) may not be implemented in setup, yet. If so, I don't remember. Somebody will have to test this. Corinna --=20 Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat --9/eUdp+dLtKXvemk Content-Type: application/pgp-signature; name="signature.asc" Content-length: 819 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJZ8PEyAAoJEPU2Bp2uRE+gWbAQAJD0/itbVg7umt1pczVXmebP MN90TZ5MuoKwY/iUasls1e+gs1kdsf3fZZ7JDQ11Jn9X4djUs5BilR133b73tXL+ Eq02uCOnqHktQP3Ge2096JInc/qK32gPiO4SThn7ZtHujI3ypKz301S6MIqRbJT2 51vc80yety4IZ9GWNFIwDMo5yp5XZbctCAYNOliH4PCOsXe1HBftDyGUYdxamLVE 0RdtNHWRmeLMy3QdoodJwnSfoWs33MeZViWeg6/ncXgzez1J/G4kKKCFIphokeXd tBxBtMr06E3Yp3rrjRRSJmzlZzINsJvJq9zr+PZRHEJm0M7pa8NYq+vc4nx47Wmv DGScfwkyisyApq00nEOobf1nR8Y8wo2XGP5IXnDDWYrz6Km0tlAgBZzs3hAEJWlh PVj0fZd2WEPmtjD3oaotIBt0/WgPq9PDZ/ZIpC6KK58SGCP80896wH1VyXXeA+13 +M69KVF/+UjGSpAbti3s3h/Sv38nPLM6f6TCzQr/q6db+2JJ8b78f/Zcn5h0FdMI ljI18+hrDlD5VupK4ODp5arr4ijHCx6V6bSqNibbJ3t9a6U+HMZnmGmOB+H4C4RM I9ZIKdh/jO9DemGjJTlzzGV5kXf/fbEcaXsSnPag3FCtCAFfbiYxgzdTYGiXYou0 B3jXWYFSAEf1dAh5laby =DvYc -----END PGP SIGNATURE----- --9/eUdp+dLtKXvemk--