Feature/patch request

Aki Tuomi aki.tuomi at open-xchange.com
Tue Jun 29 13:29:21 EEST 2021


Hi!

This is on our backlog already as DOP-2294, lets see if we get it forward at some point.

Aki

> On 29/06/2021 12:48 Bucher, Dr. Damian <bucher at uni-muenster.de> wrote:
> 
>  
> Hi,
> 
> we ran into a problem, while using filesystem snapshots on a GPFS-filesystem. With this we want to give the users the opportunity to restore Mailboxes from this snapshots in case they deleted mail by accident.
> 
> For each snapshot we create a namespace via a postlogin skript (with INDEX=MEMORY to avoid writing index files to a ro filesystem). The snapshot are of course read only.
> When accessing the mailboxes in the namespaces, dovecot generates an error (ro filesystem):
> Error: Mailbox #backup20/Mail/deleted-messages: open() failed with mbox: Read-only file system
> 
> 
> We tracked that down to a problem in src/lib-storage/index/mbox/mbox-file.c (yes, we are still using mbox ;) )
> 
> fd = open(mailbox_get_path(&mbox->box),
>                   mbox_is_backend_readonly(mbox) ? O_RDONLY : O_RDWR);
>         if (fd == -1 && errno == EACCES && !mbox->backend_readonly) {
>                 mbox->backend_readonly = TRUE;
>                 fd = open(mailbox_get_path(&mbox->box), O_RDONLY);
>         }
> 
> Here the mailbox is opened and it is checked wether the file is ro or rw.
> Since the snapshot contains the original file permissions, the file is of course rw, but the filesystem is ro.
> Unfortunately the code only checks for file permissions (errno == EACCES), which doesn’t catch our error condition (FS ro).
> 
> We think that exchanging this to (errno == EACCESS || errno == EROFS) would catch the file system ro error correctly and set the readonly flag correctly and open the mailbox ro.
> (this probably hast to be done for other mailbox formats in the corresponding files too)
> 
> What do you think? Is there a chance to implement that in an upcoming release?
> 
> Best regards
> Damian
> 
>> Postmaster at WWU
> WWU IT
> Westfälische Wilhelms-Universität (WWU) Münster
> Röntgenstr. 7-13, 48149 Münster
> 
> mailto:postmaster at uni-muenster.de


More information about the dovecot mailing list