This is an automated email from the ASF dual-hosted git repository.

chug pushed a commit to branch dev-protocol-adaptors-2
in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git


The following commit(s) were added to refs/heads/dev-protocol-adaptors-2 by 
this push:
     new 5772502  DISPATCH-1823: TCP adaptor honors discard flag in core 
callbacks
5772502 is described below

commit 577250222160ccb33e907a90cc3c635e3f5ebcd1
Author: Chuck Rolke <c...@apache.org>
AuthorDate: Tue Nov 3 11:30:55 2020 -0500

    DISPATCH-1823: TCP adaptor honors discard flag in core callbacks
---
 src/adaptors/tcp_adaptor.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/src/adaptors/tcp_adaptor.c b/src/adaptors/tcp_adaptor.c
index 6d71204..85c9a6f 100644
--- a/src/adaptors/tcp_adaptor.c
+++ b/src/adaptors/tcp_adaptor.c
@@ -1299,16 +1299,21 @@ void qdra_tcp_connection_get_CT(qdr_core_t          
*core,
 
 static void qdr_add_tcp_connection_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-    qdr_tcp_connection_t *conn = (qdr_tcp_connection_t*) 
action->args.general.context_1;
-    DEQ_INSERT_TAIL(tcp_adaptor->connections, conn);
-    qd_log(tcp_adaptor->log_source, QD_LOG_DEBUG, "Added tcp connection %s 
(%zu)", conn->config.host_port, DEQ_SIZE(tcp_adaptor->connections));
+    if (!discard) {
+        qdr_tcp_connection_t *conn = (qdr_tcp_connection_t*) 
action->args.general.context_1;
+        DEQ_INSERT_TAIL(tcp_adaptor->connections, conn);
+        qd_log(tcp_adaptor->log_source, QD_LOG_DEBUG, "[C%"PRIu64"] 
qdr_add_tcp_connection_CT %s (%zu)",
+            conn->conn_id, conn->config.host_port, 
DEQ_SIZE(tcp_adaptor->connections));
+    }
 }
 
 static void qdr_del_tcp_connection_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-    qdr_tcp_connection_t *conn = (qdr_tcp_connection_t*) 
action->args.general.context_1;
-    DEQ_REMOVE(tcp_adaptor->connections, conn);
-    qd_log(tcp_adaptor->log_source, QD_LOG_DEBUG, "[C%"PRIu64"] Removed tcp 
connection %s (%zu)",
-           conn->conn_id, conn->config.host_port, 
DEQ_SIZE(tcp_adaptor->connections));
-    free_qdr_tcp_connection(conn);
+    if (!discard) {
+        qdr_tcp_connection_t *conn = (qdr_tcp_connection_t*) 
action->args.general.context_1;
+        DEQ_REMOVE(tcp_adaptor->connections, conn);
+        qd_log(tcp_adaptor->log_source, QD_LOG_DEBUG, "[C%"PRIu64"] 
qdr_del_tcp_connection_CT %s (%zu)",
+            conn->conn_id, conn->config.host_port, 
DEQ_SIZE(tcp_adaptor->connections));
+        free_qdr_tcp_connection(conn);
+    }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to