if (log->fd == -1) {
if (errno != EACCES)
- i_error("creat(%s) failed: %m", log->filepath);
+ e_error(log->event, "creat(%s) failed: %m",
+ log->filepath);
else
- i_error("%s", eacces_error_get("creat", log->filepath));
+ e_error(log->event, "%s",
+ eacces_error_get("creat", log->filepath));
return -1;
}
if (fchown(log->fd, (uid_t)-1, log->gid) < 0) {
if (errno != EPERM)
- i_error("fchown(%s) failed: %m", log->filepath);
+ e_error(log->event, "fchown(%s) failed: %m",
+ log->filepath);
else {
- i_error("%s", eperm_error_get_chgrp("fchown",
- log->filepath, log->gid,
- log->gid_origin));
+ e_error(log->event, "%s",
+ eperm_error_get_chgrp("fchown",
+ log->filepath, log->gid,
+ log->gid_origin));
}
}
return 0;
struct stat st;
if (fstat(log->fd, &st) < 0) {
- i_error("fstat(%s) failed: %m", log->filepath);
+ e_error(log->event, "fstat(%s) failed: %m", log->filepath);
return -1;
}
return 0;
if (rename(log->filepath, log->filepath2) < 0 && errno != ENOENT) {
- i_error("rename(%s, %s) failed: %m",
+ e_error(log->event, "rename(%s, %s) failed: %m",
log->filepath, log->filepath2);
return -1;
}
This whole log isn't supposed to be super-reliable anyway. */
ret = write(log->fd, rec, sizeof(*rec));
if (ret < 0) {
- i_error("write(%s) failed: %m", log->filepath);
+ e_error(log->event, "write(%s) failed: %m", log->filepath);
return -1;
} else if (ret != sizeof(*rec)) {
- i_error("write(%s) wrote %d/%u bytes", log->filepath,
+ e_error(log->event, "write(%s) wrote %d/%u bytes", log->filepath,
(int)ret, (unsigned int)sizeof(*rec));
if (fstat(log->fd, &st) == 0) {
if (ftruncate(log->fd, st.st_size - ret) < 0) {
- i_error("ftruncate(%s) failed: %m",
+ e_error(log->event, "ftruncate(%s) failed: %m",
log->filepath);
}
}
if (iter->filepath == iter->log->filepath2)
return mailbox_log_iter_open_next(iter);
} else {
- i_error("open(%s) failed: %m", iter->filepath);
+ e_error(iter->log->event, "open(%s) failed: %m", iter->filepath);
iter->failed = TRUE;
}
return FALSE;
ret = pread(iter->fd, iter->buf, sizeof(iter->buf),
iter->offset);
if (ret < 0) {
- i_error("pread(%s) failed: %m", iter->filepath);
+ e_error(iter->log->event, "pread(%s) failed: %m",
+ iter->filepath);
iter->failed = TRUE;
return NULL;
}
rec->type > MAILBOX_LOG_RECORD_UNSUBSCRIBE) {
offset = iter->offset -
(iter->count - iter->idx) * sizeof(iter->buf[0]);
- i_error("Corrupted mailbox log %s at offset %"PRIuUOFF_T": "
+ e_error(iter->log->event,
+ "Corrupted mailbox log %s at offset %"PRIuUOFF_T": "
"type=%d", iter->filepath, offset, rec->type);
i_unlink(iter->filepath);
return NULL;