From: "Charles Sandmann" Newsgroups: comp.os.msdos.djgpp Subject: Re: DJGPP and Windows 2000 Date: Thu, 9 Aug 2001 18:18:20 Organization: Aspen Technology, Inc. Lines: 21 Message-ID: <3b72d3ec.sandmann@clio.rice.edu> References: <09D1E9BD9C30D311919200A0C9DD5C2C03E0898A AT mcaexc01 DOT msj DOT maxtor DOT com> <3b71da94 DOT sandmann AT clio DOT rice DOT edu> <9kuogu$ndb$1 AT pippin DOT nask DOT waw DOT pl> <3B72EAF3 DOT FFF6CCB0 AT is DOT elta DOT co DOT il> NNTP-Posting-Host: dcloan.hou.aspentech.com X-Trace: selma.aspentech.com 997399387 18658 10.32.115.107 (9 Aug 2001 23:23:07 GMT) X-Complaints-To: postmaster AT aspentech DOT com NNTP-Posting-Date: 9 Aug 2001 23:23:07 GMT X-NewsEditor: ED-1.5.8 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com > > Could you provide more details on this ? I could, but I'd rather be fixing them :-) > In a nutshell, the LFN-aware functions are not to be trusted on W2K. In > particular, handles created by an LFN variant of _open fail some important > functions of Int 21h that take a file handle, such as functions 5700h and > 5701h, and all subfunctions of function 44h (IOCTL) seem to return zero > instead of valid info. The latter problem is the reason why ">/dev/null" > doesn't work on W2K. Eli's mostly correct here, but the actual reason why >/dev/null fails is because a write of zero bytes to NUL or CON fails under Windows 2000 if the handle was opened with an LFN function but works just fine if opened with a standard DOS function. It's little obscure bugs like this that are the problem. To try and work around the problem I tried to find out if the handle was a character device and then found the IOCTL routines broken too. When we make changes we must make sure it doesn't break things that work under current LFN environments.