dovecot-2.0-sslstream: lmtp: Improved logging.
dovecot at dovecot.org
dovecot at dovecot.org
Sat Feb 13 02:56:02 EET 2010
details: http://hg.dovecot.org/dovecot-2.0-sslstream/rev/597f969a9870
changeset: 10258:597f969a9870
user: Timo Sirainen <tss at iki.fi>
date: Thu Nov 05 17:55:36 2009 -0500
description:
lmtp: Improved logging.
diffstat:
3 files changed, 21 insertions(+), 4 deletions(-)
src/lmtp/client.c | 13 ++++++++++++-
src/lmtp/commands.c | 6 ++++--
src/lmtp/main.c | 6 +++++-
diffs (97 lines):
diff -r ba3574ed9f74 -r 597f969a9870 src/lmtp/client.c
--- a/src/lmtp/client.c Thu Nov 05 17:27:46 2009 -0500
+++ b/src/lmtp/client.c Thu Nov 05 17:55:36 2009 -0500
@@ -178,6 +178,16 @@ static void client_generate_session_id(s
client->state.session_id = p_strdup(client->state_pool, str_c(id));
}
+static const char *client_remote_id(struct client *client)
+{
+ const char *addr;
+
+ addr = net_ip2addr(&client->remote_ip);
+ if (addr == NULL)
+ addr = "local";
+ return addr;
+}
+
struct client *client_create(int fd_in, int fd_out,
const struct master_service_connection *conn)
{
@@ -216,6 +226,7 @@ struct client *client_create(int fd_in,
client_send_line(client, "220 %s Dovecot LMTP ready",
client->my_domain);
+ i_info("Connect from %s", client_remote_id(client));
return client;
}
@@ -269,7 +280,7 @@ void client_disconnect(struct client *cl
client_send_line(client, "%s %s", prefix, reason);
else
reason = client_get_disconnect_reason(client);
- i_info("%s", reason);
+ i_info("Disconnect from %s: %s", client_remote_id(client), reason);
client->disconnected = TRUE;
}
diff -r ba3574ed9f74 -r 597f969a9870 src/lmtp/commands.c
--- a/src/lmtp/commands.c Thu Nov 05 17:27:46 2009 -0500
+++ b/src/lmtp/commands.c Thu Nov 05 17:55:36 2009 -0500
@@ -5,6 +5,7 @@
#include "array.h"
#include "str.h"
#include "strescape.h"
+#include "hostpid.h"
#include "istream.h"
#include "istream-concat.h"
#include "ostream.h"
@@ -402,7 +403,8 @@ client_deliver(struct client *client, co
enum mail_error mail_error;
int ret;
- i_set_failure_prefix(t_strdup_printf("lmtp(%s): ", rcpt->name));
+ i_set_failure_prefix(t_strdup_printf("lmtp(%s, %s): ",
+ my_pid, rcpt->name));
if (mail_storage_service_next(storage_service, rcpt->service_user,
&client->state.dest_user,
&error) < 0) {
@@ -465,7 +467,7 @@ static bool client_deliver_next(struct c
while (client->state.rcpt_idx < count) {
ret = client_deliver(client, &rcpts[client->state.rcpt_idx],
src_mail);
- i_set_failure_prefix("lmtp: ");
+ i_set_failure_prefix(t_strdup_printf("lmtp(%s): ", my_pid));
client->state.rcpt_idx++;
if (ret == 0)
diff -r ba3574ed9f74 -r 597f969a9870 src/lmtp/main.c
--- a/src/lmtp/main.c Thu Nov 05 17:27:46 2009 -0500
+++ b/src/lmtp/main.c Thu Nov 05 17:55:36 2009 -0500
@@ -3,6 +3,7 @@
#include "lib.h"
#include "array.h"
#include "ioloop.h"
+#include "hostpid.h"
#include "restrict-access.h"
#include "fd-close-on-exec.h"
#include "master-service.h"
@@ -55,7 +56,8 @@ int main(int argc, char *argv[])
enum mail_storage_service_flags storage_service_flags =
MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT |
MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP |
- MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP;
+ MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP |
+ MAIL_STORAGE_SERVICE_NO_LOG_INIT;
if (IS_STANDALONE()) {
service_flags |= MASTER_SERVICE_FLAG_STANDALONE |
@@ -67,6 +69,8 @@ int main(int argc, char *argv[])
if (master_getopt(master_service) > 0)
return FATAL_DEFAULT;
master_service_init_finish(master_service);
+ master_service_init_log(master_service,
+ t_strdup_printf("lmtp(%s): ", my_pid));
storage_service = mail_storage_service_init(master_service, set_roots,
storage_service_flags);
More information about the dovecot-cvs
mailing list