[erlang-questions] efile_drv.c bug?

Lev Walkin <>
Tue Jun 17 13:19:41 CEST 2008


Jachym Holecek wrote:
> On Tue, 17 Jun 2008 12:16:52 +0200, Raimo Niskanen  
> <> wrote:
>> On Mon, Jun 16, 2008 at 01:10:15PM -0700, Darren New wrote:
>>> Any idea why Windows (XP/SP2/32bit) can't handle files >4G but Linux can
>>> with the same release? Is this something expected to get fixed  
>>> eventually?
>> If I recall correctly, file pointers (off_t) are signed in Windows
>> but there are extensions in Unix that use unsigned off_t but
>> ((off_t) -1) as an error return value, so it is possible on
>> many 32 bit Unixes to have almost 4GByte files, but 32 bit
>> Windows is stuck with its 2GByte limit.
>>
>> Someone correct me!?
> 
> Upon quick inspection off_t seems to be int64_t on NetBSD and
> 'long int' on Linux. So it's signed on at least two Unices.


Single Unix Specification version 3, IEEE Std 1003.1
specifies

	blkcnt_t and off_t shall be signed integer types.

http://www.opengroup.org/onlinepubs/000095399/basedefs/sys/types.h.html


-- 
Lev Walkin




More information about the erlang-questions mailing list