X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f Date: Wed, 26 Dec 2001 22:07:19 +0200 From: "Eli Zaretskii" Sender: halo1 AT zahav DOT net DOT il To: sandmann AT clio DOT rice DOT edu Message-Id: <3942-Wed26Dec2001220719+0200-eliz@is.elta.co.il> X-Mailer: emacs 21.1.50 (via feedmail 8 I) and Blat ver 1.8.9 CC: djgpp-workers AT delorie DOT com In-reply-to: <10112261832.AA21518@clio.rice.edu> (sandmann@clio.rice.edu) Subject: Re: lfn from scratch... References: <10112261832 DOT AA21518 AT clio DOT rice DOT edu> Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > From: sandmann AT clio DOT rice DOT edu (Charles Sandmann) > Date: Wed, 26 Dec 2001 12:32:09 -0600 (CST) > > > > What's the best way to tell djgpp programs that *one* drive supports > > > LFNs and the others don't? > > > > DJGPP doesn't cope well with this situation. > > Should we look at fixing it? It would be nice, but I'm afraid it will require non-trivial changes. We should probably have two functions instead of _use_lfn: one for testing the LFN API support, the other testing whether a certain disk can store long file names. They both should use some caching, to be efficient, and library functions should use one or the other, depending on what they need. > I always assumed UNCs were not supported at all. That's about right. As soon as a UNC gets taken apart by library functions, like to find the drive letter, we fail. If the UNC goes directly to the system call, it will usually work, at least on Windows. > Should we fix this? It's not clear to me how to fix this. We should either augment those library functions which tinker with file names to know about UNCs, or write code to map between a UNC and a drive letter. The latter is safer, but since the mapping can be changed behind our back (the user can run "net use" from another DOS box), we cannot cache the mapping, and will need to compute the drive letter each time, which will slow down file-related system calls (especially since network-related calls are slow).