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

kgiusti pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git


The following commit(s) were added to refs/heads/main by this push:
     new fe0a9da  DISPATCH-2286: reset the raw conn context when handling 
disconnect
fe0a9da is described below

commit fe0a9da79f6d42054b2ec240c1231f9128775ff4
Author: Kenneth Giusti <kgiu...@apache.org>
AuthorDate: Mon Nov 15 16:08:51 2021 -0500

    DISPATCH-2286: reset the raw conn context when handling disconnect
    
    This prevents further raw connection events from arriving after
    the disconnect has be handled.
    
    This closes #1438
---
 src/adaptors/http2/http2_adaptor.c | 1 +
 src/adaptors/tcp_adaptor.c         | 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/adaptors/http2/http2_adaptor.c 
b/src/adaptors/http2/http2_adaptor.c
index a3864a6..4906e95 100644
--- a/src/adaptors/http2/http2_adaptor.c
+++ b/src/adaptors/http2/http2_adaptor.c
@@ -2317,6 +2317,7 @@ static void handle_disconnected(qdr_http2_connection_t* 
conn)
 
     if (conn->pn_raw_conn) {
         qd_log(http2_adaptor->log_source, QD_LOG_TRACE, "[C%"PRIu64"] Setting 
conn->pn_raw_conn=0", conn->conn_id);
+        pn_raw_connection_set_context(conn->pn_raw_conn, 0);
         conn->pn_raw_conn = 0;
     }
 
diff --git a/src/adaptors/tcp_adaptor.c b/src/adaptors/tcp_adaptor.c
index 57ab8bc..fe89fb2 100644
--- a/src/adaptors/tcp_adaptor.c
+++ b/src/adaptors/tcp_adaptor.c
@@ -833,6 +833,7 @@ static void handle_connection_event(pn_event_t *e, 
qd_server_t *qd_server, void
                "[C%"PRIu64"] PN_RAW_CONNECTION_DISCONNECTED %s",
                conn->conn_id, qdr_tcp_connection_role_name(conn));
         LOCK(conn->activation_lock);
+        pn_raw_connection_set_context(conn->pn_raw_conn, 0);
         conn->pn_raw_conn = 0;
         UNLOCK(conn->activation_lock);
         handle_disconnected(conn);

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

Reply via email to