[dovecot] Re: Using on AIX

Timo Sirainen tss at iki.fi
Mon Apr 21 23:02:13 EEST 2003


On Mon, 2003-04-21 at 21:54, Adam Lackorzynski wrote:
> Hi,
> 
> I'm trying to install dovecot-0.99.9-test6 with gcc-3.2.2 under AIX (4.3.3) and
> found some problems.
> 
> First, I need to define _XOPEN_SOURCE_EXTENDED to 1 in src/lib/fdpass.c
> and src/auth/mycrypt.c or undefine it to compile successfully.
..
> When I undefine the _XOPEN_SOURCE_EXTENDEDs without modifying the
> original _XOPEN_SOURCE defines, it seems to come further:

I guess leaving it 1 for mycrypt.c is fine. Does AIX have some "AIX"
macro defined? So I could change fdpass.c to have:

#ifndef AIX
#  define _XOPEN_SOURCE_EXTENDED /* for Tru64, breaks AIX */
#endif

> imap(xxx): Apr 21 18:24:23 Panic: file mail-index-data.c: line 439 (mail_index_data_append): assertion failed: ((size & (MEM_ALIGN_SIZE-1)) == 0)

Hmm.. This is quite likely because struct mail_index_data_record_header
isn't padded to take 8 bytes with 32bit off_t. Has all systems until now
really had 64bit off_t? This should fix it:

Index: mail-index.h
===================================================================
RCS file: /home/cvs/dovecot/src/lib-index/mail-index.h,v
retrieving revision 1.73
diff -u -r1.73 mail-index.h
--- mail-index.h        21 Apr 2003 13:42:00 -0000      1.73
+++ mail-index.h        21 Apr 2003 19:58:55 -0000
@@ -167,6 +167,7 @@
        unsigned int data_size; /* including this header */
 
        time_t internal_date;
+       time_t filler;
        uoff_t virtual_size;
 
        uoff_t header_size;


But I'm not sure if I want to commit this change. Maybe some systems
have added the padding elsewhere? Changing the location could break
things. After next release I'll break the index files anyway, I think
I'll leave this fix until then.




More information about the dovecot mailing list