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!

Reply via email to