Date: Tue, 7 Aug 2001 11:20:07 +0300 (IDT) From: Eli Zaretskii X-Sender: eliz AT is To: Boris Gaspic cc: djgpp AT delorie DOT com Subject: Re: Long file names, djgpp 2.95.3 / WinNT 4.00 NTFS In-Reply-To: <9kn7ef$j6i$1@newstoo.ericsson.se> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Tue, 7 Aug 2001, Boris Gaspic wrote: > Reading through the libc docs, it occured me to test > a = _get_volume_info ("C:\\", &maxlen, &pathlen, ftype); > > I get ENOSYS for calling that, and lengths 13 & 80. I understand that this is on NT4. If so, this is expected: DJGPP programs cannot access long file names on NT4, so _get_volume_info tells the truth, as far as DJGPP programs are concerned. Try this on Windows 9X or Windows 2000, and you will see a different result. > I also get ENOSYS for calling it on "K:\\" (which I don't have) -- > and not ENODEV or ENXIO as the docs say. You misunderstand the docs: if the underlying system call is not supported, you will _always_ get ENOSYS, because the OS fails the call. ENODEV or ENXIO only happen when the system call is supported, such as on Windows 9X, but the drive letter is invalid.