You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kg...@apache.org on 2019/11/18 14:17:40 UTC

[qpid-dispatch] branch master updated: DISPATCH-1480: properly settle messages received by the edge address proxy

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 10f9653  DISPATCH-1480: properly settle messages received by the edge address proxy
10f9653 is described below

commit 10f9653c9bc582b3398ba8efa6aeec30566cf088
Author: Kenneth Giusti <kg...@apache.org>
AuthorDate: Wed Nov 13 14:18:06 2019 -0500

    DISPATCH-1480: properly settle messages received by the edge address proxy
    
    This closes #619
---
 src/router_core/modules/edge_router/addr_proxy.c | 7 +++++++
 tests/system_tests_multi_phase.py                | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/router_core/modules/edge_router/addr_proxy.c b/src/router_core/modules/edge_router/addr_proxy.c
index 61fbf59..22998be 100644
--- a/src/router_core/modules/edge_router/addr_proxy.c
+++ b/src/router_core/modules/edge_router/addr_proxy.c
@@ -424,6 +424,7 @@ static void on_transfer(void           *link_context,
                         qd_message_t   *msg)
 {
     qcm_edge_addr_proxy_t *ap = (qcm_edge_addr_proxy_t*) link_context;
+    uint64_t dispo = PN_ACCEPTED;
 
     //
     // Validate the message
@@ -460,8 +461,14 @@ static void on_transfer(void           *link_context,
 
         qd_parse_free(body);
         qd_iterator_free(iter);
+    } else {
+        qd_log(ap->core->log, QD_LOG_ERROR,
+               "Edge Address Proxy: received an invalid message body, rejecting");
+        dispo = PN_REJECTED;
     }
 
+    qdrc_endpoint_settle_CT(ap->core, dlv, dispo);
+
     //
     // Replenish the credit for this delivery
     //
diff --git a/tests/system_tests_multi_phase.py b/tests/system_tests_multi_phase.py
index 35bcc16..60c9ac7 100644
--- a/tests/system_tests_multi_phase.py
+++ b/tests/system_tests_multi_phase.py
@@ -363,7 +363,7 @@ class MultiPhaseTest(MessagingHandler):
         self.timer.cancel()
 
     def on_start(self, event):
-        self.timer          = event.reactor.schedule(10.0, Timeout(self))
+        self.timer          = event.reactor.schedule(TIMEOUT, Timeout(self))
         self.sender_conn    = event.container.connect(self.sender_host)
         self.receiver_conn  = event.container.connect(self.receiver_host)
         self.sender         = event.container.create_sender(self.sender_conn, self.addr)


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