qpid-dispatch git commit: DISPATCH-1157: fix leaks in auth plugin

2018-10-24 Thread gsim
Repository: qpid-dispatch
Updated Branches:
  refs/heads/master 04419edae -> 033252a6f


DISPATCH-1157: fix leaks in auth plugin


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/033252a6
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/033252a6
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/033252a6

Branch: refs/heads/master
Commit: 033252a6f132f8dc30864bf2083a8bdba57353d8
Parents: 04419ed
Author: Gordon Sim 
Authored: Wed Oct 24 23:27:38 2018 +0100
Committer: Gordon Sim 
Committed: Wed Oct 24 23:27:43 2018 +0100

--
 src/policy.c  | 12 +---
 src/remote_sasl.c |  5 +
 2 files changed, 10 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/033252a6/src/policy.c
--
diff --git a/src/policy.c b/src/policy.c
index 2b03b73..636292e 100644
--- a/src/policy.c
+++ b/src/policy.c
@@ -499,7 +499,9 @@ void qd_policy_deny_amqp_session(pn_session_t *ssn, 
qd_connection_t *qd_conn)
 (void) pn_condition_set_name(   cond, 
QD_AMQP_COND_RESOURCE_LIMIT_EXCEEDED);
 (void) pn_condition_set_description(cond, SESSION_DISALLOWED);
 pn_session_close(ssn);
-qd_conn->policy_settings->denialCounts->sessionDenied++;
+if (qd_conn->policy_settings->denialCounts) {
+qd_conn->policy_settings->denialCounts->sessionDenied++;
+}
 }
 
 
@@ -566,7 +568,9 @@ void _qd_policy_deny_amqp_link(pn_link_t *link, 
qd_connection_t *qd_conn, const
 void _qd_policy_deny_amqp_sender_link(pn_link_t *pn_link, qd_connection_t 
*qd_conn, const char *condition)
 {
 _qd_policy_deny_amqp_link(pn_link, qd_conn, condition);
-qd_conn->policy_settings->denialCounts->senderDenied++;
+if (qd_conn->policy_settings->denialCounts) {
+qd_conn->policy_settings->denialCounts->senderDenied++;
+}
 }
 
 
@@ -575,7 +579,9 @@ void _qd_policy_deny_amqp_sender_link(pn_link_t *pn_link, 
qd_connection_t *qd_co
 void _qd_policy_deny_amqp_receiver_link(pn_link_t *pn_link, qd_connection_t 
*qd_conn, const char *condition)
 {
 _qd_policy_deny_amqp_link(pn_link, qd_conn, condition);
-qd_conn->policy_settings->denialCounts->receiverDenied++;
+if (qd_conn->policy_settings->denialCounts) {
+qd_conn->policy_settings->denialCounts->receiverDenied++;
+}
 }
 
 

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/033252a6/src/remote_sasl.c
--
diff --git a/src/remote_sasl.c b/src/remote_sasl.c
index edd76f1..a291b64 100644
--- a/src/remote_sasl.c
+++ b/src/remote_sasl.c
@@ -243,7 +243,7 @@ static void remote_sasl_free(pn_transport_t *transport)
 }
 } else {
 impl->upstream_released = true;
-if (impl->downstream_released) {
+if (impl->downstream_released || impl->downstream == 0) {
 delete_qdr_sasl_relay_t(impl);
 }
 }
@@ -257,9 +257,6 @@ static void set_policy_settings(pn_connection_t* conn, 
permissions_t* permission
 qd_conn->policy_settings = NEW(qd_policy_settings_t);
 ZERO(qd_conn->policy_settings);
 
-qd_conn->policy_settings->denialCounts = 
NEW(qd_policy_denial_counts_t);
-ZERO(qd_conn->policy_settings->denialCounts);
-
 if (permissions->targets.start && permissions->targets.capacity) {
 qd_conn->policy_settings->targets = 
qd_policy_compile_allowed_csv(permissions->targets.start);
 }


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



qpid-dispatch git commit: DISPATCH-1156 - Added detection and prevention of edge-echo in the delivery forwarders.

2018-10-24 Thread tross
Repository: qpid-dispatch
Updated Branches:
  refs/heads/master c80efc25d -> 04419edae


DISPATCH-1156 - Added detection and prevention of edge-echo in the delivery 
forwarders.


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/04419eda
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/04419eda
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/04419eda

Branch: refs/heads/master
Commit: 04419edae53a8548e7fd8afdd47d54872bf6492a
Parents: c80efc2
Author: Ted Ross 
Authored: Wed Oct 24 17:38:45 2018 -0400
Committer: Ted Ross 
Committed: Wed Oct 24 17:38:45 2018 -0400

--
 src/router_core/connections.c | 10 +
 src/router_core/forwarder.c   | 68 +-
 src/router_core/router_core_private.h |  3 +-
 src/router_core/transfer.c|  6 ++-
 4 files changed, 65 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/04419eda/src/router_core/connections.c
--
diff --git a/src/router_core/connections.c b/src/router_core/connections.c
index 09f3878..bbd7a27 100644
--- a/src/router_core/connections.c
+++ b/src/router_core/connections.c
@@ -1524,6 +1524,11 @@ static void qdr_link_inbound_first_attach_CT(qdr_core_t 
*core, qdr_action_t *act
 qdr_add_link_ref(>links, link, QDR_LINK_LIST_CLASS_CONNECTION);
 
 //
+// Mark the link as an edge link if it's inside an edge-uplink connection.
+//
+link->edge = (conn->role == QDR_ROLE_EDGE_UPLINK);
+
+//
 // Reject any attaches of inter-router links that arrive on connections 
that are not inter-router.
 //
 if (((link->link_type == QD_LINK_CONTROL || link->link_type == 
QD_LINK_ROUTER) &&
@@ -1755,6 +1760,11 @@ static void qdr_link_inbound_second_attach_CT(qdr_core_t 
*core, qdr_action_t *ac
 
 link->oper_status = QDR_LINK_OPER_UP;
 
+//
+// Mark the link as an edge link if it's inside an edge-uplink connection.
+//
+link->edge = (conn->role == QDR_ROLE_EDGE_UPLINK);
+
 if (link->core_endpoint) {
 qdrc_endpoint_do_second_attach_CT(core, link->core_endpoint, source, 
target);
 return;

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/04419eda/src/router_core/forwarder.c
--
diff --git a/src/router_core/forwarder.c b/src/router_core/forwarder.c
index e1d6d57..ca3f5df 100644
--- a/src/router_core/forwarder.c
+++ b/src/router_core/forwarder.c
@@ -290,6 +290,15 @@ static uint8_t qdr_forward_effective_priority(qd_message_t 
*msg, qdr_address_t *
 }
 
 
+/**
+ * Determine if forwarding a delivery onto a link will result in edge-echo.
+ */
+static inline bool qdr_forward_edge_echo_CT(qdr_delivery_t *in_dlv, qdr_link_t 
*out_link)
+{
+return (in_dlv && in_dlv->via_edge && in_dlv->link->conn == 
out_link->conn);
+}
+
+
 int qdr_forward_multicast_CT(qdr_core_t  *core,
  qdr_address_t   *addr,
  qd_message_t*msg,
@@ -323,21 +332,28 @@ int qdr_forward_multicast_CT(qdr_core_t  *core,
 if (!addr->local || exclude_inprocess) {
 qdr_link_ref_t *link_ref = DEQ_HEAD(addr->rlinks);
 while (link_ref) {
-qdr_link_t *out_link = link_ref->link;
-qdr_delivery_t *out_delivery = qdr_forward_new_delivery_CT(core, 
in_delivery, out_link, msg);
+qdr_link_t *out_link = link_ref->link;
 
-// Store the out_link and out_delivery so we can forward the 
delivery later on
-qdr_forward_deliver_info_t *deliver_info = 
new_qdr_forward_deliver_info_t();
-ZERO(deliver_info);
-deliver_info->out_dlv = out_delivery;
-deliver_info->out_link = out_link;
-DEQ_INSERT_TAIL(deliver_info_list, deliver_info);
+//
+// Only forward via links that don't result in edge-echo.
+//
+if (!qdr_forward_edge_echo_CT(in_delivery, out_link)) {
+qdr_delivery_t *out_delivery = 
qdr_forward_new_delivery_CT(core, in_delivery, out_link, msg);
 
-fanout++;
-if (out_link->link_type != QD_LINK_CONTROL && out_link->link_type 
!= QD_LINK_ROUTER) {
-addr->deliveries_egress++;
-core->deliveries_egress++;
+// Store the out_link and out_delivery so we can forward the 
delivery later on
+qdr_forward_deliver_info_t *deliver_info = 
new_qdr_forward_deliver_info_t();
+ZERO(deliver_info);
+deliver_info->out_dlv = out_delivery;
+deliver_info->out_link = out_link;
+

qpid-dispatch git commit: DISPATCH-1152 - Wired in the on_update callback for the core_endpoint API.

2018-10-24 Thread tross
Repository: qpid-dispatch
Updated Branches:
  refs/heads/master 6203bb927 -> c80efc25d


DISPATCH-1152 - Wired in the on_update callback for the core_endpoint API.


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/c80efc25
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/c80efc25
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/c80efc25

Branch: refs/heads/master
Commit: c80efc25dcb67ffdfcf53d3048062091065d358e
Parents: 6203bb9
Author: Ted Ross 
Authored: Wed Oct 24 16:04:32 2018 -0400
Committer: Ted Ross 
Committed: Wed Oct 24 16:04:32 2018 -0400

--
 src/router_core/core_link_endpoint.c | 7 +++
 src/router_core/core_link_endpoint.h | 1 +
 src/router_core/transfer.c   | 6 ++
 3 files changed, 14 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/c80efc25/src/router_core/core_link_endpoint.c
--
diff --git a/src/router_core/core_link_endpoint.c 
b/src/router_core/core_link_endpoint.c
index fad5c1b..66763c9 100644
--- a/src/router_core/core_link_endpoint.c
+++ b/src/router_core/core_link_endpoint.c
@@ -190,6 +190,13 @@ void qdrc_endpoint_do_deliver_CT(qdr_core_t *core, 
qdrc_endpoint_t *ep, qdr_deli
 }
 
 
+void qdrc_endpoint_do_update_CT(qdr_core_t *core, qdrc_endpoint_t *ep, 
qdr_delivery_t *dlv, bool settled)
+{
+if (!!ep->desc->on_update)
+ep->desc->on_update(ep->link_context, dlv, settled, dlv->disposition);
+}
+
+
 void qdrc_endpoint_do_flow_CT(qdr_core_t *core, qdrc_endpoint_t *ep, int 
credit, bool drain)
 {
 if (!!ep->desc->on_flow)

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/c80efc25/src/router_core/core_link_endpoint.h
--
diff --git a/src/router_core/core_link_endpoint.h 
b/src/router_core/core_link_endpoint.h
index 34d3d46..c54ee35 100644
--- a/src/router_core/core_link_endpoint.h
+++ b/src/router_core/core_link_endpoint.h
@@ -261,6 +261,7 @@ void qdrc_endpoint_settle_CT(qdr_core_t *core, 
qdr_delivery_t *delivery, uint64_
 void qdrc_endpoint_do_bound_attach_CT(qdr_core_t *core, qdr_address_t *addr, 
qdr_link_t *link, qdr_terminus_t *source, qdr_terminus_t *target);
 void qdrc_endpoint_do_second_attach_CT(qdr_core_t *core, qdrc_endpoint_t 
*endpoint, qdr_terminus_t *source, qdr_terminus_t *target);
 void qdrc_endpoint_do_deliver_CT(qdr_core_t *core, qdrc_endpoint_t *endpoint, 
qdr_delivery_t *delivery);
+void qdrc_endpoint_do_update_CT(qdr_core_t *core, qdrc_endpoint_t *endpoint, 
qdr_delivery_t *delivery, bool settled);
 void qdrc_endpoint_do_flow_CT(qdr_core_t *core, qdrc_endpoint_t *endpoint, int 
credit, bool drain);
 void qdrc_endpoint_do_detach_CT(qdr_core_t *core, qdrc_endpoint_t *endpoint, 
qdr_error_t *error);
 void qdrc_endpoint_do_cleanup_CT(qdr_core_t *core, qdrc_endpoint_t *endpoint);

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/c80efc25/src/router_core/transfer.c
--
diff --git a/src/router_core/transfer.c b/src/router_core/transfer.c
index f3457fc..7b7d950 100644
--- a/src/router_core/transfer.c
+++ b/src/router_core/transfer.c
@@ -1147,6 +1147,12 @@ static void qdr_update_delivery_CT(qdr_core_t *core, 
qdr_action_t *action, bool
 dlv_moved = qdr_delivery_settled_CT(core, dlv);
 }
 
+//
+// If the delivery's link has a core endpoint, notify the endpoint of the 
update
+//
+if (dlv->link && dlv->link->core_endpoint)
+qdrc_endpoint_do_update_CT(core, dlv->link->core_endpoint, dlv, 
settled);
+
 if (push)
 qdr_delivery_push_CT(core, peer);
 


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



[2/6] qpid-dispatch git commit: DISPATCH-1149: allow authz plugin to override conf file policy

2018-10-24 Thread gmurthy
DISPATCH-1149: allow authz plugin to override conf file policy


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/2b4d4c96
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/2b4d4c96
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/2b4d4c96

Branch: refs/heads/1.4.x
Commit: 2b4d4c962600c57c33a83166dbde6d6dd77f3464
Parents: a27ca38
Author: Gordon Sim 
Authored: Thu Oct 18 22:35:45 2018 +0100
Committer: Ganesh Murthy 
Committed: Fri Oct 19 09:32:54 2018 -0400

--
 src/policy.c   | 16 ++
 tests/policy-authz/default.json| 29 +
 tests/system_tests_authz_service_plugin.py |  3 +++
 3 files changed, 44 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/2b4d4c96/src/policy.c
--
diff --git a/src/policy.c b/src/policy.c
index 6556d3d..2b03b73 100644
--- a/src/policy.c
+++ b/src/policy.c
@@ -430,11 +430,19 @@ bool qd_policy_open_lookup_user(
 settings->maxSessions  = 
qd_entity_opt_long((qd_entity_t*)upolicy, "maxSessions", 0);
 settings->maxSenders   = 
qd_entity_opt_long((qd_entity_t*)upolicy, "maxSenders", 0);
 settings->maxReceivers = 
qd_entity_opt_long((qd_entity_t*)upolicy, "maxReceivers", 0);
-settings->allowAnonymousSender = 
qd_entity_opt_bool((qd_entity_t*)upolicy, "allowAnonymousSender", false);
-settings->allowDynamicSource   = 
qd_entity_opt_bool((qd_entity_t*)upolicy, "allowDynamicSource", false);
+if (!settings->allowAnonymousSender) { //don't override if 
enabled by authz plugin
+settings->allowAnonymousSender = 
qd_entity_opt_bool((qd_entity_t*)upolicy, "allowAnonymousSender", false);
+}
+if (!settings->allowDynamicSource) { //don't override if 
enabled by authz plugin
+settings->allowDynamicSource   = 
qd_entity_opt_bool((qd_entity_t*)upolicy, "allowDynamicSource", false);
+}
 settings->allowUserIdProxy = 
qd_entity_opt_bool((qd_entity_t*)upolicy, "allowUserIdProxy", false);
-settings->sources  = 
qd_entity_get_string((qd_entity_t*)upolicy, "sources");
-settings->targets  = 
qd_entity_get_string((qd_entity_t*)upolicy, "targets");
+if (settings->sources == 0) { //don't override if 
configured by authz plugin
+settings->sources  = 
qd_entity_get_string((qd_entity_t*)upolicy, "sources");
+}
+if (settings->targets == 0) { //don't override if 
configured by authz plugin
+settings->targets  = 
qd_entity_get_string((qd_entity_t*)upolicy, "targets");
+}
 settings->sourcePattern= 
qd_entity_get_string((qd_entity_t*)upolicy, "sourcePattern");
 settings->targetPattern= 
qd_entity_get_string((qd_entity_t*)upolicy, "targetPattern");
 settings->sourceParseTree  = 
qd_policy_parse_tree(settings->sourcePattern);

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/2b4d4c96/tests/policy-authz/default.json
--
diff --git a/tests/policy-authz/default.json b/tests/policy-authz/default.json
new file mode 100644
index 000..ca3ec61
--- /dev/null
+++ b/tests/policy-authz/default.json
@@ -0,0 +1,29 @@
+##
+## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you under the Apache License, Version 2.0 (the
+## "License"); you may not use this file except in compliance
+## with the License.  You may obtain a copy of the License at
+##
+##   http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing,
+## software distributed under the License is distributed on an
+## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+## KIND, either express or implied.  See the License for the
+## specific language governing permissions and limitations
+## under the License
+##
+[
+["vhost", {
+"hostname": "$default",
+"allowUnknownUser": true,
+"groups" : {
+"$default": {
+"remoteHosts": "*"
+}
+}
+}]
+]


[5/6] qpid-dispatch git commit: DISPATCH-1151 Revert to gulp version 3.x for console build

2018-10-24 Thread gmurthy
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/5b02bea3/console/stand-alone/package-lock.json
--
diff --git a/console/stand-alone/package-lock.json 
b/console/stand-alone/package-lock.json
index ee06f56..e9fe949 100644
--- a/console/stand-alone/package-lock.json
+++ b/console/stand-alone/package-lock.json
@@ -324,16 +324,6 @@
   "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=",
   "dev": true
 },
-"anymatch": {
-  "version": "1.3.2",
-  "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz;,
-  "integrity": 
"sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
-  "dev": true,
-  "requires": {
-"micromatch": "2.3.11",
-"normalize-path": "2.1.1"
-  }
-},
 "append-buffer": {
   "version": "1.0.2",
   "resolved": 
"https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz;,
@@ -364,30 +354,12 @@
   "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
   "dev": true
 },
-"arr-filter": {
-  "version": "1.1.2",
-  "resolved": 
"https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz;,
-  "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=",
-  "dev": true,
-  "requires": {
-"make-iterator": "1.0.1"
-  }
-},
 "arr-flatten": {
   "version": "1.1.0",
   "resolved": 
"https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz;,
   "integrity": 
"sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
   "dev": true
 },
-"arr-map": {
-  "version": "2.0.2",
-  "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz;,
-  "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=",
-  "dev": true,
-  "requires": {
-"make-iterator": "1.0.1"
-  }
-},
 "arr-union": {
   "version": "3.1.0",
   "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz;,
@@ -412,41 +384,6 @@
   "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=",
   "dev": true
 },
-"array-initial": {
-  "version": "1.1.0",
-  "resolved": 
"https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz;,
-  "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=",
-  "dev": true,
-  "requires": {
-"array-slice": "1.1.0",
-"is-number": "4.0.0"
-  },
-  "dependencies": {
-"is-number": {
-  "version": "4.0.0",
-  "resolved": 
"https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz;,
-  "integrity": 
"sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
-  "dev": true
-}
-  }
-},
-"array-last": {
-  "version": "1.3.0",
-  "resolved": 
"https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz;,
-  "integrity": 
"sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==",
-  "dev": true,
-  "requires": {
-"is-number": "4.0.0"
-  },
-  "dependencies": {
-"is-number": {
-  "version": "4.0.0",
-  "resolved": 
"https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz;,
-  "integrity": 
"sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
-  "dev": true
-}
-  }
-},
 "array-map": {
   "version": "0.0.0",
   "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz;,
@@ -465,25 +402,6 @@
   "integrity": 
"sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
   "dev": true
 },
-"array-sort": {
-  "version": "1.0.0",
-  "resolved": 
"https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz;,
-  "integrity": 
"sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==",
-  "dev": true,
-  "requires": {
-"default-compare": "1.0.0",
-"get-value": "2.0.6",
-"kind-of": "5.1.0"
-  },
-  "dependencies": {
-"kind-of": {
-  "version": "5.1.0",
-  "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz;,
-  "integrity": 
"sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
-  "dev": true
-}
-  }
-},
 "array-union": {
   "version": "1.0.2",
   "resolved": 
"https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz;,
@@ -499,12 +417,6 @@
   "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
   "dev": true
 },
-"array-unique": {
-  "version": "0.2.1",
-  "resolved": 
"https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz;,
-  "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
-  "dev": true
-},
 

[4/6] qpid-dispatch git commit: DISPATCH-1151 Revert to gulp version 3.x for console build

2018-10-24 Thread gmurthy
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/5b02bea3/console/stand-alone/package.json
--
diff --git a/console/stand-alone/package.json b/console/stand-alone/package.json
index 65212f0..94f1dca 100644
--- a/console/stand-alone/package.json
+++ b/console/stand-alone/package.json
@@ -58,7 +58,7 @@
 "del": "^3.0.0",
 "fs": "0.0.1-security",
 "glob": "^7.1.2",
-"gulp": "github:gulpjs/gulp#4.0",
+"gulp": "^3.9.1",
 "gulp-babel": "^7.0.1",
 "gulp-clean-css": "^3.9.4",
 "gulp-concat": "^2.6.1",
@@ -76,6 +76,7 @@
 "gulp-uglifyes": "^0.1.3",
 "mocha": "^5.2.0",
 "rollup-stream": "^1.24.1",
+"run-sequence": "^2.2.1",
 "through2": "^2.0.3",
 "tslint": "^5.10.0",
 "typescript": "^2.9.1",

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/5b02bea3/console/stand-alone/plugin/js/amqp/topology.js
--
diff --git a/console/stand-alone/plugin/js/amqp/topology.js 
b/console/stand-alone/plugin/js/amqp/topology.js
index ec45e3b..e208a6f 100644
--- a/console/stand-alone/plugin/js/amqp/topology.js
+++ b/console/stand-alone/plugin/js/amqp/topology.js
@@ -212,7 +212,6 @@ class Topology {
   }
   // ensure these nodes have all these entities. don't fetch unless forced to
   ensureEntities(nodes, entityAttribs, callback, extra) {
-let self = this;
 if (Object.prototype.toString.call(entityAttribs) !== '[object Array]') {
   entityAttribs = [entityAttribs];
 }


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



[3/6] qpid-dispatch git commit: NO-JIRA - Changed version to 1.4.1

2018-10-24 Thread gmurthy
NO-JIRA - Changed version to 1.4.1


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/b6df962b
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/b6df962b
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/b6df962b

Branch: refs/heads/1.4.x
Commit: b6df962b447d006de52aea85fbf432e29f4d3bb1
Parents: 2b4d4c9
Author: Ganesh Murthy 
Authored: Fri Oct 19 09:42:07 2018 -0400
Committer: Ganesh Murthy 
Committed: Fri Oct 19 09:42:07 2018 -0400

--
 VERSION.txt| 2 +-
 console/hawtio/pom.xml | 2 +-
 pom.xml| 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b6df962b/VERSION.txt
--
diff --git a/VERSION.txt b/VERSION.txt
index 88c5fb8..347f583 100644
--- a/VERSION.txt
+++ b/VERSION.txt
@@ -1 +1 @@
-1.4.0
+1.4.1

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b6df962b/console/hawtio/pom.xml
--
diff --git a/console/hawtio/pom.xml b/console/hawtio/pom.xml
index 1df1d99..f633257 100644
--- a/console/hawtio/pom.xml
+++ b/console/hawtio/pom.xml
@@ -24,7 +24,7 @@
 
   org.apache.qpid
   dispatch-hawtio-console
-  1.4.0
+  1.4.1
   war
   2018
   https://qpid.apache.org

http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/b6df962b/pom.xml
--
diff --git a/pom.xml b/pom.xml
index cf0dc38..1b816ce 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
 4.0.0
 org.apache.qpid
 qpid-dispatch
-1.4.0
+1.4.1
 QpidDispatch
 2018
 https://qpid.apache.org   


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



[6/6] qpid-dispatch git commit: DISPATCH-1151 Revert to gulp version 3.x for console build

2018-10-24 Thread gmurthy
DISPATCH-1151 Revert to gulp version 3.x for console build

(cherry picked from commit 0a66246e58df2758eb12abd7aa4e983bcbbee8c9)


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/5b02bea3
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/5b02bea3
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/5b02bea3

Branch: refs/heads/1.4.x
Commit: 5b02bea38c221684a5b8b03e18af888efe0f90ed
Parents: b6df962
Author: Ernest Allen 
Authored: Tue Oct 23 09:30:17 2018 -0400
Committer: Ganesh Murthy 
Committed: Tue Oct 23 09:53:57 2018 -0400

--
 console/stand-alone/gulpfile.js|   69 +-
 console/stand-alone/package-lock.json  | 2759 +--
 console/stand-alone/package.json   |3 +-
 console/stand-alone/plugin/js/amqp/topology.js |1 -
 4 files changed, 739 insertions(+), 2093 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/5b02bea3/console/stand-alone/gulpfile.js
--
diff --git a/console/stand-alone/gulpfile.js b/console/stand-alone/gulpfile.js
index d996135..0951522 100644
--- a/console/stand-alone/gulpfile.js
+++ b/console/stand-alone/gulpfile.js
@@ -38,7 +38,8 @@ const gulp = require('gulp'),
   fs = require('fs'),
   tsc = require('gulp-typescript'),
   tslint = require('gulp-tslint'),
-  through = require('through2');
+  through = require('through2'),
+  runSequence = require('run-sequence');
 
   // temp directory for converted typescript files
 const built_ts = 'built_ts';
@@ -86,13 +87,15 @@ var touch = through.obj(function(file, enc, done) {
   fs.utimes(file.path, now, now, done);
 });
 
-function clean() {
+gulp.task('clean', function () {
   return del(['dist',built_ts ]);
-}
-function cleanup() {
+});
+
+gulp.task('cleanup', function () {
   return del([built_ts]);
-}
-function styles() {
+});
+
+gulp.task('styles', function () {
   return gulp.src(paths.styles.src)
 .pipe(maps.init())
 .pipe(cleanCSS())
@@ -103,8 +106,9 @@ function styles() {
 .pipe(insert.prepend(license))
 .pipe(maps.write('./'))
 .pipe(gulp.dest(paths.styles.dest));
-}
-function vendor_styles() {
+});
+
+gulp.task('vendor_styles', function () {
   var vendor_lines = fs.readFileSync('vendor-css.txt').toString().split('\n');
   var vendor_files = vendor_lines.filter( function (line) {
 return (!line.startsWith('-') && line.length > 0);
@@ -119,9 +123,10 @@ function vendor_styles() {
 }))
 .pipe(maps.write('./'))
 .pipe(gulp.dest(paths.styles.dest));
-}
+});
+
 
-function vendor_scripts() {
+gulp.task('vendor_scripts', function () {
   var vendor_lines = fs.readFileSync('vendor-js.txt').toString().split('\n');
   var vendor_files = vendor_lines.filter( function (line) {
 return (!line.startsWith('-') && line.length > 0);
@@ -133,17 +138,21 @@ function vendor_scripts() {
 .pipe(maps.write('./'))
 .pipe(gulp.dest(paths.scripts.dest))
 .pipe(touch);
-}
+});
+
+/*
 function watch() {
   gulp.watch(paths.scripts.src, scripts);
   gulp.watch(paths.styles.src, styles);
 }
-function lint() {
+*/
+
+gulp.task('lint', function () {
   return gulp.src('plugin/**/*.js')
 .pipe(eslint())
 .pipe(eslint.format())
 .pipe(eslint.failAfterError());
-}
+});
 
 //function _typescript() {
 //  return tsProject.src({files: src + 'plugin/**/*.ts'})
@@ -151,21 +160,21 @@ function lint() {
 //.js.pipe(gulp.dest('build/dist'));
 //}
 
-function typescript() {
+gulp.task('typescript', function() {
   var tsResult = gulp.src(paths.typescript.src)
 .pipe(tsc());
   return tsResult.js.pipe(gulp.dest(paths.typescript.dest));
-}
+});
 
-function ts_lint() {
+gulp.task('ts_lint', function() {
   return gulp.src('plugin/js/**/*.ts')
 .pipe(tslint({
   formatter: 'verbose'
 }))
 .pipe(tslint.report());
-}
+});
 
-function scripts() {
+gulp.task('scripts', function() {
   return rollup({
 input: src + './main.js',
 sourcemap: true,
@@ -216,23 +225,33 @@ function scripts() {
   
   // and output to ./dist/main.js as normal.
 .pipe(gulp.dest(paths.scripts.dest));
-}
+});
 
-function test () {
+gulp.task('test', function() {
   return gulp.src(['test/**/*.js'], {read: false})
 .pipe(mocha({require: ['babel-core/register'], exit: true}))
 .on('error', console.error);
-}
+});
 
+gulp.task('build', function(callback) {
+  runSequence('clean',
+'lint',
+['vendor_styles', 'vendor_scripts', 'styles'],
+'cleanup',
+callback);
+});
+/*
+For use with gulp 4.0 when that is supported
 var build = gulp.series(
   clean,  // removes the dist/ dir
   lint,   // lints the .js
   gulp.parallel(vendor_styles, vendor_scripts, styles), // 

[1/6] qpid-dispatch git commit: DISPATCH-1148: set version in open frames sent to auth service

2018-10-24 Thread gmurthy
Repository: qpid-dispatch
Updated Branches:
  refs/heads/1.4.x 652b2b6fc -> 5b02bea38


DISPATCH-1148: set version in open frames sent to auth service


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/a27ca385
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/a27ca385
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/a27ca385

Branch: refs/heads/1.4.x
Commit: a27ca3850bc95c2d5981e1a11c2c511a85ac432d
Parents: 652b2b6
Author: Gordon Sim 
Authored: Thu Oct 18 21:49:00 2018 +0100
Committer: Ganesh Murthy 
Committed: Fri Oct 19 09:32:41 2018 -0400

--
 src/remote_sasl.c | 9 +
 1 file changed, 9 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/a27ca385/src/remote_sasl.c
--
diff --git a/src/remote_sasl.c b/src/remote_sasl.c
index ae32936..edd76f1 100644
--- a/src/remote_sasl.c
+++ b/src/remote_sasl.c
@@ -201,6 +201,15 @@ static bool remote_sasl_init_server(pn_transport_t* 
transport)
 pn_data_put_symbol(data, pn_bytes(13, "ADDRESS-AUTHZ"));
 pn_data_exit(data);
 
+data = pn_connection_properties(impl->downstream);
+pn_data_put_map(data);
+pn_data_enter(data);
+pn_data_put_symbol(data, 
pn_bytes(strlen(QD_CONNECTION_PROPERTY_PRODUCT_KEY), 
QD_CONNECTION_PROPERTY_PRODUCT_KEY));
+pn_data_put_string(data, 
pn_bytes(strlen(QD_CONNECTION_PROPERTY_PRODUCT_VALUE), 
QD_CONNECTION_PROPERTY_PRODUCT_VALUE));
+pn_data_put_symbol(data, 
pn_bytes(strlen(QD_CONNECTION_PROPERTY_VERSION_KEY), 
QD_CONNECTION_PROPERTY_VERSION_KEY));
+pn_data_put_string(data, pn_bytes(strlen(QPID_DISPATCH_VERSION), 
QPID_DISPATCH_VERSION));
+pn_data_exit(data);
+
 pn_proactor_connect(proactor, impl->downstream, 
impl->authentication_service_address);
 return true;
 } else {


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



qpid-proton git commit: NO-JIRA: [go] Remove testing.TB.Helper(), only available from Go 1.9

2018-10-24 Thread aconway
Repository: qpid-proton
Updated Branches:
  refs/heads/master 90dbf46cc -> ded03b190


NO-JIRA: [go] Remove testing.TB.Helper(), only available from Go 1.9


Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/ded03b19
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/ded03b19
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/ded03b19

Branch: refs/heads/master
Commit: ded03b190016780200b78df0c77612513b58ee0a
Parents: 90dbf46
Author: Alan Conway 
Authored: Tue Oct 23 20:48:13 2018 -0400
Committer: Alan Conway 
Committed: Wed Oct 24 10:16:11 2018 -0400

--
 go/src/qpid.apache.org/electron/common_test.go | 11 ++---
 go/src/qpid.apache.org/internal/test/test.go   | 54 ++---
 2 files changed, 31 insertions(+), 34 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ded03b19/go/src/qpid.apache.org/electron/common_test.go
--
diff --git a/go/src/qpid.apache.org/electron/common_test.go 
b/go/src/qpid.apache.org/electron/common_test.go
index 56c0e44..59ee616 100644
--- a/go/src/qpid.apache.org/electron/common_test.go
+++ b/go/src/qpid.apache.org/electron/common_test.go
@@ -82,9 +82,8 @@ func newPipe(t testing.TB, clientOpts, serverOpts 
[]ConnectionOption) *pair {
 
 // AMQP pair linked by TCP socket
 func newSocketPair(t testing.TB, clientOpts, serverOpts []ConnectionOption) 
*pair {
-   t.Helper()
l, err := net.Listen("tcp4", ":0") // For systems with ipv6 disabled
-   test.FatalIf(t, err)
+   test.FatalIfN(1, t, err)
var srv Connection
var srvErr error
var wg sync.WaitGroup
@@ -95,9 +94,9 @@ func newSocketPair(t testing.TB, clientOpts, serverOpts 
[]ConnectionOption) *pai
}()
addr := l.Addr()
cli, err := NewContainer("client").Dial(addr.Network(), addr.String(), 
clientOpts...)
-   test.FatalIf(t, err)
+   test.FatalIfN(1, t, err)
wg.Wait()
-   test.FatalIf(t, srvErr)
+   test.FatalIfN(1, t, srvErr)
return newPair(t, cli, srv)
 }
 
@@ -106,7 +105,7 @@ func (p *pair) close() { p.client.Connection().Close(nil); 
p.server.Close(nil) }
 // Return a client sender and server receiver
 func (p *pair) sender(opts ...LinkOption) (Sender, Receiver) {
snd, err := p.client.Sender(opts...)
-   test.FatalIf(p.t, err)
+   test.FatalIfN(1, p.t, err)
rcv := <-p.rchan
return snd, rcv
 }
@@ -114,7 +113,7 @@ func (p *pair) sender(opts ...LinkOption) (Sender, 
Receiver) {
 // Return a client receiver and server sender
 func (p *pair) receiver(opts ...LinkOption) (Receiver, Sender) {
rcv, err := p.client.Receiver(opts...)
-   test.FatalIf(p.t, err)
+   test.FatalIfN(1, p.t, err)
snd := <-p.schan
return rcv, snd
 }

http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ded03b19/go/src/qpid.apache.org/internal/test/test.go
--
diff --git a/go/src/qpid.apache.org/internal/test/test.go 
b/go/src/qpid.apache.org/internal/test/test.go
index 6429d01..c3508ae 100644
--- a/go/src/qpid.apache.org/internal/test/test.go
+++ b/go/src/qpid.apache.org/internal/test/test.go
@@ -28,46 +28,44 @@ import (
"testing"
 )
 
-// The testing.TB.Helper() function does not seem to work
-func decorate(msg string, callDepth int) string {
-   _, file, line, _ := runtime.Caller(callDepth + 1) // annotate with 
location of caller.
+// The testing.TB.Helper() is only available from Go 1.9.
+// Decorate messages with the correct file:line at callDepth before calling
+// before calling a testing.TB method.
+func decorate(method func(arg ...interface{}), callDepth int, msg string) {
+   _, file, line, _ := runtime.Caller(callDepth + 1)
_, file = path.Split(file)
-   return fmt.Sprintf("\n%s:%d: %v", file, line, msg)
+   method(fmt.Sprintf("\n%s:%d: %v", file, line, msg))
 }
 
-func message(err error, args ...interface{}) (msg string) {
-   if len(args) > 0 {
-   msg = fmt.Sprintf(args[0].(string), args[1:]...) + ": "
-   }
-   msg = msg + err.Error()
-   return
-}
-
-// ErrorIf calls t.Error() if err != nil, with optional format message
-func ErrorIf(t testing.TB, err error, format ...interface{}) error {
-   t.Helper()
+// Format a message and call method if err != nil
+func checkErr(method func(arg ...interface{}), callDepth int, err error, 
format ...interface{}) error {
if err != nil {
-   t.Error(message(err, format...))
+   var msg string
+   if len(format) > 0 {
+   msg = fmt.Sprintf("%v: %v", 
fmt.Sprintf(format[0].(string), format[1:]...), err)
+   } else 

qpid-dispatch git commit: DISPATCH-1153 - Make sure the size of the undelivered list in non-zero before deleting its head. A detach might have arrived in the meantime and cleaned out the undelivered l

2018-10-24 Thread gmurthy
Repository: qpid-dispatch
Updated Branches:
  refs/heads/master 267207d2b -> 6203bb927


DISPATCH-1153 - Make sure the size of the undelivered list in non-zero before 
deleting its head. A detach might have arrived in the meantime and cleaned out 
the undelivered list


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/6203bb92
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/6203bb92
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/6203bb92

Branch: refs/heads/master
Commit: 6203bb92786f4ec535dbd538cc1f98df26982373
Parents: 267207d
Author: Ganesh Murthy 
Authored: Wed Oct 24 09:54:02 2018 -0400
Committer: Ganesh Murthy 
Committed: Wed Oct 24 09:54:02 2018 -0400

--
 src/router_core/transfer.c | 19 ---
 1 file changed, 12 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/6203bb92/src/router_core/transfer.c
--
diff --git a/src/router_core/transfer.c b/src/router_core/transfer.c
index b011f5f..f3457fc 100644
--- a/src/router_core/transfer.c
+++ b/src/router_core/transfer.c
@@ -174,8 +174,19 @@ int qdr_link_process_deliveries(qdr_core_t *core, 
qdr_link_t *link, int credit)
 // The entire message has been sent. It is now the 
appropriate time to have the delivery removed
 // from the head of the undelivered list and move it to 
the unsettled list if it is not settled.
 //
-DEQ_REMOVE_HEAD(link->undelivered);
 num_deliveries_completed++;
+
+credit--;
+link->credit_to_core--;
+link->total_deliveries++;
+offer = DEQ_SIZE(link->undelivered);
+
+if (offer == 0) {
+sys_mutex_unlock(conn->work_lock);
+return num_deliveries_completed;
+}
+
+DEQ_REMOVE_HEAD(link->undelivered);
 dlv->link_work = 0;
 
 if (settled) {
@@ -186,11 +197,6 @@ int qdr_link_process_deliveries(qdr_core_t *core, 
qdr_link_t *link, int credit)
 dlv->where = QDR_DELIVERY_IN_UNSETTLED;
 qd_log(core->log, QD_LOG_DEBUG, "Delivery transfer:  
dlv:%lx qdr_link_process_deliveries: undelivered-list -> unsettled-list", 
(long) dlv);
 }
-
-credit--;
-link->credit_to_core--;
-link->total_deliveries++;
-offer = DEQ_SIZE(link->undelivered);
 }
 else {
 //
@@ -228,7 +234,6 @@ int qdr_link_process_deliveries(qdr_core_t *core, 
qdr_link_t *link, int credit)
 return num_deliveries_completed;
 }
 
-
 void qdr_link_flow(qdr_core_t *core, qdr_link_t *link, int credit, bool 
drain_mode)
 {
 qdr_action_t *action = qdr_action(qdr_link_flow_CT, "link_flow");


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