[Python-Dev] Special file "nul" in Windows and os.stat

Paul Moore p.f.moore at gmail.com
Tue Nov 6 21:42:31 CET 2007


On 06/11/2007, "Martin v. Löwis" <martin at v.loewis.de> wrote:
> > See above: if stat() (_stat() actually) is called on NUL (or another
> > device), I don't think it does anything useful with these fields.
>
> You mean, it does nothing documented... AFAICT from the code, it always
> fills in something.

>From my reading of the CRT source code, _stat() uses FindFirstFile().
This in turn appears to return a valid result on "nul" -
win32api.FindFile, which is a thin wrapper round FindFirstFile etc,
returns

>>> win32api.FindFiles("nul")
[(32, <PyTime:01/01/1601 00:00:00>, <PyTime:01/01/1601 00:00:00>,
<PyTime:01/01/1601 00:00:00>, 0L, 0L, 0L, 0L, 'nul
', '')]

32 is FILE_ATTRIBUTE_ARCHIVE, the times are the epoch, and everything
else is null.

This is on my machine, using the Windows Server 2003 SP1 CRT source
code. How consistent it is across versions, or anything else, I can't
say :-(

Paul.


More information about the Python-Dev mailing list