]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib: connection - Add name as parameter to connection_init().
authorStephan Bosch <stephan.bosch@dovecot.fi>
Tue, 26 Feb 2019 23:11:06 +0000 (00:11 +0100)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Fri, 28 Jun 2019 07:09:33 +0000 (10:09 +0300)
src/lib-smtp/smtp-client-connection.c
src/lib/connection.c
src/lib/connection.h

index 3a5f7e5c8181e74003b3a42b6ae0b00971620948..aca3c47efc22434fd549f26530c41596e6d7f2a6 100644 (file)
@@ -1743,7 +1743,6 @@ smtp_client_connection_do_create(struct smtp_client *client, const char *name,
        conn->client = client;
        conn->id = id++;
        conn->protocol = protocol;
-       conn->conn.name = i_strdup(name);
 
        conn->set = client->set;
        if (set != NULL) {
@@ -1837,7 +1836,7 @@ smtp_client_connection_do_create(struct smtp_client *client, const char *name,
                      smtp_protocol_name(conn->protocol));
 
        conn->conn.event_parent = conn->event;
-       connection_init(conn->client->conn_list, &conn->conn);
+       connection_init(conn->client->conn_list, &conn->conn, name);
 
        return conn;
 }
index f4ab3cfbb9c5918601f217b7a28c8ec2768237d7..e7799d3b376a0ffa1d85ed12c0948603e41f866c 100644 (file)
@@ -305,8 +305,8 @@ static void connection_client_connected(struct connection *conn, bool success)
        }
 }
 
-void connection_init(struct connection_list *list,
-                    struct connection *conn)
+void connection_init(struct connection_list *list, struct connection *conn,
+                    const char *name)
 {
        conn->ioloop = current_ioloop;
        conn->fd_in = -1;
@@ -314,6 +314,7 @@ void connection_init(struct connection_list *list,
        conn->disconnected = TRUE;
 
        i_free(conn->name);
+       conn->name = i_strdup(name);
 
        if (list->set.input_idle_timeout_secs != 0 &&
            conn->input_idle_timeout_secs == 0) {
@@ -343,9 +344,8 @@ void connection_init_server(struct connection_list *list,
        i_assert(name != NULL);
        i_assert(!list->set.client);
 
-       connection_init(list, conn);
+       connection_init(list, conn, name);
 
-       conn->name = i_strdup(name);
        event_set_append_log_prefix(conn->event,
                                    t_strdup_printf("(%s): ", conn->name));
        conn->fd_in = fd_in;
@@ -368,9 +368,8 @@ void connection_init_client_fd(struct connection_list *list,
        i_assert(name != NULL);
        i_assert(list->set.client);
 
-       connection_init(list, conn);
+       connection_init(list, conn, name);
 
-       conn->name = i_strdup(name);
        event_set_append_log_prefix(conn->event,
                                    t_strdup_printf("(%s): ", conn->name));
        conn->fd_in = fd_in;
@@ -393,10 +392,10 @@ void connection_init_client_ip_from(struct connection_list *list,
 {
        i_assert(list->set.client);
 
-       connection_init(list, conn);
+       connection_init(list, conn,
+                       t_strdup_printf("%s:%u", net_ip2addr(ip), port));
 
        conn->fd_in = conn->fd_out = -1;
-       conn->name = i_strdup_printf("%s:%u", net_ip2addr(ip), port);
 
        conn->ip = *ip;
        conn->port = port;
@@ -426,10 +425,9 @@ void connection_init_client_unix(struct connection_list *list,
 {
        i_assert(list->set.client);
 
-       connection_init(list, conn);
+       connection_init(list, conn, path);
 
        conn->fd_in = conn->fd_out = -1;
-       conn->name = i_strdup(path);
        conn->unix_socket = TRUE;
 
        event_field_clear(conn->event, "ip");
@@ -448,9 +446,8 @@ void connection_init_from_streams(struct connection_list *list,
 {
        i_assert(name != NULL);
 
-       connection_init(list, conn);
+       connection_init(list, conn, name);
 
-       conn->name = i_strdup(name);
        conn->fd_in = i_stream_get_fd(input);
        conn->fd_out = o_stream_get_fd(output);
 
index 465de173a5c1e7e91f30923bb8f17356f0dcb0de..81a9bd5a57010fb78bc26e8b897b78819caf76e4 100644 (file)
@@ -152,8 +152,8 @@ struct connection_list {
        struct connection_vfuncs v;
 };
 
-void connection_init(struct connection_list *list,
-                    struct connection *conn);
+void connection_init(struct connection_list *list, struct connection *conn,
+                    const char *name) ATTR_NULL(3);
 void connection_init_server(struct connection_list *list,
                            struct connection *conn, const char *name,
                            int fd_in, int fd_out);