Hi Amos,
Amos Jeffries wrote:
> One of them was unsafe use of a variable typed 'size_t' setting up
> StoreIOBUffer local variable
> 
> The constructor using it is:
> 
>  StoreIOBuffer(size_t aLength, int64_t anOffset, char *someData) :
>             length (aLength), offset (anOffset), data (someData)
>     {
>         flags.error = 0;
>     }
> 
> 
> where length/aLength are the size_t in question.
> 
> I had thought it the length of the buffer and offset in the buffer. But
> seeing the offset is now int64, is it the lengths of the file being
> buffered? In which case it should be a 64-bit too I think.
> 
The StoreIOBuffer::length is buffer size and StoreIOBuffer::offset is
the offset inside the objects which must be 64 bit integer to allow
large objects passing through squid3.
I think it must be 64bit even if storing large objects does not
supported (it is not just an offset of a stored object) and this is why
the int64_t type used instead of off_t type.
Regards,
    Christos
Received on Tue Aug 14 2007 - 06:54:13 MDT
This archive was generated by hypermail pre-2.1.9 : Fri Aug 31 2007 - 12:00:05 MDT