Sophie

Sophie

distrib > Mageia > 6 > armv7hl > by-pkgid > e7b67dc1593dad6f47b70750e36e16b4 > files > 1

dovecot-2.2.29.1-1.4.mga6.src.rpm

Index: dovecot-2.2.29.1/src/lib-auth/auth-client-request.c
===================================================================
--- dovecot-2.2.29.1/src/lib-auth/auth-client-request.c
+++ dovecot-2.2.29.1/src/lib-auth/auth-client-request.c	2018-01-31 15:02:53.334467814 +0100
@@ -180,6 +180,8 @@
 
 	auth_client_send_cancel(request->conn->client, request->id);
 	call_callback(request, AUTH_REQUEST_STATUS_ABORT, NULL, NULL);
+	auth_server_connection_remove_request(request->conn, request->id);
+	pool_unref(&request->pool);
 }
 
 unsigned int auth_client_request_get_id(struct auth_client_request *request)
Index: dovecot-2.2.29.1/src/lib-auth/auth-server-connection.c
===================================================================
--- dovecot-2.2.29.1/src/lib-auth/auth-server-connection.c
+++ dovecot-2.2.29.1/src/lib-auth/auth-server-connection.c	2018-01-31 15:14:22.154476765 +0100
@@ -480,3 +480,10 @@
 	hash_table_insert(conn->requests, POINTER_CAST(id), request);
 	return id;
 }
+
+void auth_server_connection_remove_request(struct auth_server_connection *conn,
+					   unsigned int id)
+{
+	i_assert(conn->handshake_received);
+	hash_table_remove(conn->requests, POINTER_CAST(id));
+}
Index: dovecot-2.2.29.1/src/lib-auth/auth-server-connection.h
===================================================================
--- dovecot-2.2.29.1/src/lib-auth/auth-server-connection.h
+++ dovecot-2.2.29.1/src/lib-auth/auth-server-connection.h	2018-01-31 15:14:33.444476912 +0100
@@ -38,4 +38,6 @@
 unsigned int
 auth_server_connection_add_request(struct auth_server_connection *conn,
 				   struct auth_client_request *request);
+void auth_server_connection_remove_request(struct auth_server_connection *conn,
+					   unsigned int id);
 #endif