[Dovecot] 1.2.6 Spurious pread()/stream errors/index corruption
Paul Freeman
dovecot at lists-in.noc4.net
Fri Oct 16 01:45:14 EEST 2009
#define HAVE_PREAD 1
/* #undef PREAD_BROKEN */
#define PREAD_WRAPPERS /**/
nm dovecot|grep pread
U my_pread@@libmysqlclient_16
//#define HAVE_PREAD 1
#define PREAD_BROKEN
//#define PREAD_WRAPPERS
nm dovecot|grep pread
U my_pread@@libmysqlclient_16
On Thu, 15 Oct 2009 18:02:02 -0400, Timo Sirainen <tss at iki.fi> wrote:
> On Thu, 2009-10-15 at 21:08 +0100, Paul Freeman wrote:
>> in both builds file offset bits is 64, with config.h:
>>
>> ---- config.h check...
>> /* Define to 1 if you have the `pread' function. */
>> /* Defint if pread/pwrite implementation is broken */
>> #define PREAD_BROKEN 1
>> /* Define if pread/pwrite needs _XOPEN_SOURCE 500 */
>
> This is with Linux defaults:
>
> ~/cvs/dovecot-1.2% grep PREAD config.h
> #define HAVE_PREAD 1
> /* #undef PREAD_BROKEN */
> #define PREAD_WRAPPERS /**/
>
> ~/cvs/dovecot-1.2/src/master% nm dovecot|grep pread
> 080685a0 T my_pread
> U pread64@@GLIBC_2.1
>
> This is with pread() disabled:
>
> ~/cvs/dovecot-1.2/% grep PREAD config.h
> //#define HAVE_PREAD 1
> #define PREAD_BROKEN
> //#define PREAD_WRAPPERS /**/
>
> ~/cvs/dovecot-1.2/src/master% nm dovecot|grep pread
> 0806ade0 T my_pread
>
> Note how there's no pread64@@GLIBC_2.1 symbol at all. What about in your
> binaries?
More information about the dovecot
mailing list