]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-auth-client: auth-master - Drop unnecessary and confusing additional connection...
authorStephan Bosch <stephan.bosch@open-xchange.com>
Wed, 3 Jun 2020 08:53:43 +0000 (10:53 +0200)
committerStephan Bosch <stephan.bosch@open-xchange.com>
Wed, 27 Aug 2025 11:35:32 +0000 (13:35 +0200)
Only use conn->conn.event instead.

src/lib-auth-client/auth-master-private.h
src/lib-auth-client/auth-master-request.c
src/lib-auth-client/auth-master.c

index 8520c33fb21cb15c81198b1740a5fa63fd457f47..f7af30bdeb3a32bd66c7eb848ae6596d223cf270 100644 (file)
@@ -17,7 +17,6 @@ struct auth_master_connection {
        struct connection_list *clist;
        int refcount;
        pool_t pool;
-       struct event *event_parent, *event;
 
        const char *auth_socket_path;
        enum auth_master_flags flags;
index 839e98fbfa9f3623e7262afca8ffd23049c844b3..64833ef3182a5ca3a2e9f43b9c59e5d354b56da4 100644 (file)
@@ -42,7 +42,7 @@ int auth_master_run_cmd_pre(struct auth_master_connection *conn,
        o_stream_uncork(conn->conn.output);
 
        if (o_stream_flush(conn->conn.output) < 0) {
-               e_error(conn->event, "write(auth socket) failed: %s",
+               e_error(conn->conn.event, "write(auth socket) failed: %s",
                        o_stream_get_error(conn->conn.output));
                auth_master_unset_io(conn);
                auth_master_disconnect(conn);
index 1246c6c3a803bd9146258456a1a2af1e61c3ba31..bd577adcd914324fc508d9eb96147b1963f973d7 100644 (file)
@@ -53,6 +53,7 @@ struct auth_master_connection *
 auth_master_init(const char *auth_socket_path, enum auth_master_flags flags)
 {
        struct auth_master_connection *conn;
+       struct event *event_parent;
        pool_t pool;
 
        pool = pool_alloconly_create("auth_master_connection", 1024);
@@ -65,15 +66,16 @@ auth_master_init(const char *auth_socket_path, enum auth_master_flags flags)
        conn->clist = connection_list_init(&auth_master_set,
                                           &auth_master_vfuncs);
 
-       conn->event_parent = conn->event = event_create(NULL);
-       event_add_category(conn->event_parent, &event_category_auth_client);
-       event_set_append_log_prefix(conn->event_parent, "auth-master: ");
-       event_set_forced_debug(conn->event_parent,
+       event_parent = event_create(NULL);
+       event_add_category(event_parent, &event_category_auth_client);
+       event_set_append_log_prefix(event_parent, "auth-master: ");
+       event_set_forced_debug(event_parent,
                               HAS_ALL_BITS(flags, AUTH_MASTER_FLAG_DEBUG));
 
-       conn->conn.event_parent = conn->event_parent;
+       conn->conn.event_parent = event_parent;
        connection_init_client_unix(conn->clist, &conn->conn,
                                    conn->auth_socket_path);
+       event_unref(&event_parent);
 
        if ((flags & AUTH_MASTER_FLAG_NO_INNER_IOLOOP) != 0)
                conn->ioloop = current_ioloop;
@@ -111,7 +113,6 @@ auth_master_unref(struct auth_master_connection **_conn)
        auth_master_disconnect(conn);
        connection_deinit(&conn->conn);
        connection_list_deinit(&clist);
-       event_unref(&conn->event_parent);
        pool_unref(&conn->pool);
 }
 
@@ -150,12 +151,12 @@ static void auth_master_destroy(struct connection *_conn)
        case CONNECTION_DISCONNECT_HANDSHAKE_FAILED:
                break;
        case CONNECTION_DISCONNECT_BUFFER_FULL:
-               e_error(conn->event, "BUG: Received more than %d bytes",
+               e_error(conn->conn.event, "BUG: Received more than %d bytes",
                        MAX_INBUF_SIZE);
                break;
        default:
                if (!conn->aborted)
-                       e_error(conn->event, "Disconnected unexpectedly");
+                       e_error(conn->conn.event, "Disconnected unexpectedly");
        }
        auth_request_lookup_abort(conn);
 }
@@ -163,9 +164,9 @@ static void auth_master_destroy(struct connection *_conn)
 static void auth_request_timeout(struct auth_master_connection *conn)
 {
        if (!connection_handshake_received(&conn->conn))
-               e_error(conn->event, "Connecting timed out");
+               e_error(conn->conn.event, "Connecting timed out");
        else
-               e_error(conn->event, "Request timed out");
+               e_error(conn->conn.event, "Request timed out");
        auth_request_lookup_abort(conn);
 }
 
@@ -182,7 +183,7 @@ auth_master_handshake_line(struct connection *_conn, const char *line)
            tmp[1] != NULL && tmp[2] != NULL) {
                if (str_to_uint(tmp[1], &major_version) < 0 ||
                    str_to_uint(tmp[2], &minor_version) < 0) {
-                       e_error(conn->event,
+                       e_error(conn->conn.event,
                                "Auth server sent invalid version line: %s",
                                line);
                        auth_request_lookup_abort(conn);
@@ -201,7 +202,7 @@ auth_master_handshake_line(struct connection *_conn, const char *line)
        }
 
        if (str_to_pid(tmp[1], &conn->auth_server_pid) < 0) {
-               e_error(conn->event,
+               e_error(conn->conn.event,
                        "Authentication server sent invalid SPID: %s", line);
                return -1;
        }
@@ -215,20 +216,20 @@ auth_master_handle_input(struct auth_master_connection *conn,
        unsigned int id;
 
        if (strcmp(args[0], "CUID") == 0) {
-               e_error(conn->event, "%s is an auth client socket. "
+               e_error(conn->conn.event, "%s is an auth client socket. "
                        "It should be a master socket.",
                        conn->auth_socket_path);
                return -1;
        }
 
        if (args[1] == NULL || str_to_uint(args[1], &id) < 0) {
-               e_error(conn->event, "BUG: Unexpected input: %s",
+               e_error(conn->conn.event, "BUG: Unexpected input: %s",
                        t_strarray_join(args, "\t"));
                return -1;
        }
 
        if (id != conn->id_counter) {
-               e_error(conn->event,
+               e_error(conn->conn.event,
                        "Auth server sent reply with unknown ID %u", id);
                return -1;
        }
@@ -301,11 +302,11 @@ int auth_master_connect(struct auth_master_connection *conn)
                connection_switch_ioloop_to(&conn->conn, conn->ioloop);
        if (connection_client_connect(&conn->conn) < 0) {
                if (errno == EACCES) {
-                       e_error(conn->event,
+                       e_error(conn->conn.event,
                                "%s", eacces_error_get("connect",
                                                       conn->auth_socket_path));
                } else {
-                       e_error(conn->event, "connect(%s) failed: %m",
+                       e_error(conn->conn.event, "connect(%s) failed: %m",
                                conn->auth_socket_path);
                }
                return -1;
@@ -485,7 +486,8 @@ auth_master_user_event_create(struct auth_master_connection *conn,
 {
        struct event *event;
 
-       event = event_create(conn->event_parent);
+       event = event_create(conn->conn.event);
+       event_drop_parent_log_prefixes(event, 1);
        event_set_append_log_prefix(event, prefix);
 
        if (info != NULL) {
@@ -980,7 +982,8 @@ int auth_master_cache_flush(struct auth_master_connection *conn,
        }
        str_append_c(str, '\n');
 
-       ctx.event = event_create(conn->event_parent);
+       ctx.event = event_create(conn->conn.event);
+       event_drop_parent_log_prefixes(ctx.event, 1);
        event_set_append_log_prefix(ctx.event, "auth cache flush: ");
 
        e_debug(ctx.event, "Started cache flush");