On Thu, Nov 08, 2018 at 10:50:47AM +0000, Stuart Henderson wrote:
> > ccam$ mbsync -a
> > C: 0/1 B: 0/6 M: +0/0 *0/0 #0/0 S: +0/0 *0/0 #0/0
> > Warning: lost track of 553 pulled message(s)
> > C: 0/1 B: 0/6 M: +0/0 *0/0 #0/0 S: +0/556 *0/0 #0/0Abort trap (core
> > dumped)
> >
> > And at the end of the dmesg, we can find the pledge error.
>
> You mentioned in subject, but it would be clearer to include this here too,
> e.g.
>
> mbsync[96869]: pledge "fattr", syscall 76
>
> Using your config (which was useful) I can confirm it.
This is triggered by the `CopyArrivalDate' option I did not account for
back when adding pledge.
> syscall 76 is utimes() which is done here in maildir_store_msg()
> in drv_maildir.c:
>
> 1636 if (data->date) {
> 1637 /* Set atime and mtime according to INTERNALDATE or
> mtime of source message */
> 1638 struct utimbuf utimebuf;
> 1639 utimebuf.actime = utimebuf.modtime = data->date;
> 1640 if (utime( buf, &utimebuf ) < 0) {
> 1641 sys_error( "Maildir error: cannot set times for
> %s", buf );
> 1642 cb( DRV_BOX_BAD, 0, aux );
> 1643 return;
> 1644 }
> 1645 }
>
> This port diff should fix things.
Yes, OK kn.
Thanks Stuart for the quick handling!