On Thu, Nov 26, 2009 at 09:01:58AM +0100, Luciano Sarra wrote:
Thank you for the explanation. How can I fix this ? I
attach the
perdition.conf file
bind_address 0.0.0.0
connection_logging
imap_capability IMAP4
listen_port 143
no_lookup
protocol POP3
outgoing_server a.b.c.d
my perdition daemon runs as nobody user.
Could you test my theory by either:
1) running perdition as root or
2) Making sure that nobody has read and write access to the log file.
Although in terms of 2) I notice that there is no log file specified
in your configuration, which implies that perdition should be logging
to syslog, but that isn't consistent with the errors taht you are seeing.
>> all the system is up and running but on the
console as a standard output
>> I get the following message
>>
>> vanessa_logger_reopen: __vanessa_logger_reopen
>> __vanessa_logger_reopen: fopen: Permission denied
The following (untested) patch to vanessa_logger may help
to shed some light on the problem.
----------------------------------------------------------------------
Log the filename if reopen encounters errors
Signed-off-by: Simon Horman <horms(a)verge.net.au>
Index: vanessa_logger/libvanessa_logger/vanessa_logger.c
===================================================================
--- vanessa_logger.orig/libvanessa_logger/vanessa_logger.c 2009-11-27 10:59:47.000000000
+1100
+++ vanessa_logger/libvanessa_logger/vanessa_logger.c 2009-11-27 11:02:13.000000000 +1100
@@ -456,14 +456,20 @@ __vanessa_logger_reopen(__vanessa_logger
if (vl->ready == __vanessa_logger_true) {
vl->ready = __vanessa_logger_false;
if (fclose(vl->data.d_filename->filehandle)) {
- perror("__vanessa_logger_reopen: fclose");
+ fprintf(stderr, "__vanessa_logger_reopen: "
+ "fclose \"%s\": %s\n",
+ vl->data.d_filename->filename,
+ strerror(errno));
return (-1);
}
}
vl->data.d_filename->filehandle =
fopen(vl->data.d_filename->filename, "a");
if (vl->data.d_filename->filehandle == NULL) {
- perror("__vanessa_logger_reopen: fopen");
+ fprintf(stderr, "__vanessa_logger_reopen: "
+ "fopen \"%s\": %s\n",
+ vl->data.d_filename->filename,
+ strerror(errno));
return (-1);
}
vl->ready = __vanessa_logger_true;