From: Aki Tuomi Date: Thu, 11 May 2023 10:34:08 +0000 (+0300) Subject: lib-storage: Handle EROFS in mail_error_from_errno() X-Git-Tag: 2.4.0~2564 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb9072027e61710587c49cd74d8c9caf65611fab;p=thirdparty%2Fdovecot%2Fcore.git lib-storage: Handle EROFS in mail_error_from_errno() --- diff --git a/src/lib-storage/mail-error.c b/src/lib-storage/mail-error.c index a3c6e00045..3b3771e08b 100644 --- a/src/lib-storage/mail-error.c +++ b/src/lib-storage/mail-error.c @@ -7,9 +7,12 @@ bool mail_error_from_errno(enum mail_error *error_r, const char **error_string_r) { - if (ENOACCESS(errno)) { + if (errno == EACCES || errno == EPERM) { *error_r = MAIL_ERROR_PERM; *error_string_r = MAIL_ERRSTR_NO_PERMISSION; + } else if (errno == EROFS) { + *error_r = MAIL_ERROR_PERM; + *error_string_r = "Read only file system"; } else if (ENOQUOTA(errno)) { *error_r = MAIL_ERROR_NOQUOTA; *error_string_r = MAIL_ERRSTR_NO_QUOTA;