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)
{
client_send_line(client, "220 %s Dovecot LMTP ready",
client->my_domain);
+ i_info("Connect from %s", client_remote_id(client));
return client;
}
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;
}
#include "array.h"
#include "str.h"
#include "strescape.h"
+#include "hostpid.h"
#include "istream.h"
#include "istream-concat.h"
#include "ostream.h"
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) {
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)
#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"
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 |
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);