Hello
I think that in static function read5120 after open must be better
'return'. What will be done when:
if ( errno == error_noent )
is false?
When the file maildirsize is created by some other users ex. root :-), the
truss file like this:
14103: open(".qmaildefault", O_RDONLY|O_NDELAY) Err#2 ENOENT
14103: xstat(2, ".qmail-owner", 0x08047A84) Err#2 ENOENT
14103: fxstat(2, 0, 0x08047A84) = 0
14103: brk(0x0806DF00) = 0
14103: brk(0x0806FF00) = 0
14103: xstat(2, "./.INBOX//maildirfolder", 0x08047984) Err#2 ENOENT
14103: open("./.INBOX//maildirsize", O_RDWR|O_NDELAY|O_APPEND) Err#13
EACCES
14103: read(-1, 0x0806DF08, 5120) Err#9 EBADF
14103: read(-1, 0x0806DF07, 5121) Err#9 EBADF
14103: read(-1, 0x0806DF06, 5122) Err#9 EBADF
14103: read(-1, 0x0806DF05, 5123) Err#9 EBADF
14103: read(-1, 0x0806DF04, 5124) Err#9 EBADF
14103: read(-1, 0x0806DF03, 5125) Err#9 EBADF
14103: read(-1, 0x0806DF02, 5126) Err#9 EBADF
14103: read(-1, 0x0806DF01, 5127) Err#9 EBADF
14103: read(-1, 0x0806DF00, 5128) Err#9 EBADF
....
....
I think that this will be much better:
if ( ( fd = open(fn, O_RDWR | O_NDELAY | O_APPEND,
0600) ) == -1 ) {
return -1;
}
--
Wojciech Kosak-Glowczewski
[EMAIL PROTECTED]