Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.0.0
    • Component/s: None
    • Labels:
      None

      Description

      At present, if you attach to an address in the router whose semantics have not been specifically defined, you get balanced message routing semantics.

      It would be useful to be able to configure the router such that it would refuse links whose source/target was not explicitly defined. E.g. by being able to configure the default semantics to be of type 'invalid' (or anything similar). (Being able to explicitly blacklist certain addresses might also be nice, but is a more exotic use case I think).

      Messages sent through an anonymous link to these 'invalid' addresses would be rejected.

        Issue Links

          Activity

          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 49c1269fc0363c4c14f611eb4516cec856e80605 in qpid-dispatch's branch refs/heads/master from Ganesh Murthy
          [ https://git-wip-us.apache.org/repos/asf?p=qpid-dispatch.git;h=49c1269 ]

          DISPATCH-808 - Allow router to respond to addresses with non-QD_TREATMENT_UNAVAILABLE treatment. This must have been part of fix to DISPATCH-803

          Show
          jira-bot ASF subversion and git services added a comment - Commit 49c1269fc0363c4c14f611eb4516cec856e80605 in qpid-dispatch's branch refs/heads/master from Ganesh Murthy [ https://git-wip-us.apache.org/repos/asf?p=qpid-dispatch.git;h=49c1269 ] DISPATCH-808 - Allow router to respond to addresses with non-QD_TREATMENT_UNAVAILABLE treatment. This must have been part of fix to DISPATCH-803
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ganeshmurthy closed the pull request at:

          https://github.com/apache/qpid-dispatch/pull/185

          Show
          githubbot ASF GitHub Bot added a comment - Github user ganeshmurthy closed the pull request at: https://github.com/apache/qpid-dispatch/pull/185
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 1ca80b6e29d105a3de43a57aa800855276c64caf in qpid-dispatch's branch refs/heads/master from Ganesh Murthy
          [ https://git-wip-us.apache.org/repos/asf?p=qpid-dispatch.git;h=1ca80b6 ]

          DISPATCH-803 - The following changes were made to support unavailable distribution
          1. Added a new attribute to the router entity called called defaultDistribution which defaults to balanced
          but can be set to unavailable
          2. Attaches to addresses with distribution unavailable are rejected and the link is detached
          3. Anonymous senders sending to unavailable addresses will be sent back a disposition of PN_REJECTED but link will not be closed
          4. Added system test system_tests_default_distribution.py to test the above cases

          (cherry picked from commit 49f643e9fabfe381934b26b679b4f2bda39f2e4a)

          Show
          jira-bot ASF subversion and git services added a comment - Commit 1ca80b6e29d105a3de43a57aa800855276c64caf in qpid-dispatch's branch refs/heads/master from Ganesh Murthy [ https://git-wip-us.apache.org/repos/asf?p=qpid-dispatch.git;h=1ca80b6 ] DISPATCH-803 - The following changes were made to support unavailable distribution 1. Added a new attribute to the router entity called called defaultDistribution which defaults to balanced but can be set to unavailable 2. Attaches to addresses with distribution unavailable are rejected and the link is detached 3. Anonymous senders sending to unavailable addresses will be sent back a disposition of PN_REJECTED but link will not be closed 4. Added system test system_tests_default_distribution.py to test the above cases (cherry picked from commit 49f643e9fabfe381934b26b679b4f2bda39f2e4a)
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ganeshmurthy commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132308131

          — Diff: python/qpid_dispatch/management/qdrouter.json —
          @@ -504,6 +504,13 @@
          "deprecated": true,
          "description": "(DEPRECATED) This value is no longer used in the router.",
          "create": true
          + },
          + "defaultDistribution": {
          + "type": ["multicast", "closest", "balanced", "forbidden"],
          + "description": "Default forwarding treatment for any address without a specified treatment. multicast - one copy of each message delivered to all subscribers; closest - messages delivered to only the closest subscriber; balanced - messages delivered to one subscriber with load balanced across subscribers; linkBalanced - for link-routing, link attaches balanced across destinations; forbidden - this address is forbidden, link attaches to an address of forbidden distribution will be rejected.",
          — End diff –

          Removed linkBalanced from comment

          Show
          githubbot ASF GitHub Bot added a comment - Github user ganeshmurthy commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132308131 — Diff: python/qpid_dispatch/management/qdrouter.json — @@ -504,6 +504,13 @@ "deprecated": true, "description": "(DEPRECATED) This value is no longer used in the router.", "create": true + }, + "defaultDistribution": { + "type": ["multicast", "closest", "balanced", "forbidden"] , + "description": "Default forwarding treatment for any address without a specified treatment. multicast - one copy of each message delivered to all subscribers; closest - messages delivered to only the closest subscriber; balanced - messages delivered to one subscriber with load balanced across subscribers; linkBalanced - for link-routing, link attaches balanced across destinations; forbidden - this address is forbidden, link attaches to an address of forbidden distribution will be rejected.", — End diff – Removed linkBalanced from comment
          Hide
          aconway Alan Conway added a comment -

          Gordon Sim et al. I retract my retraction. Ignore 16120352 and carry on. Been on holiday too long.

          Show
          aconway Alan Conway added a comment - Gordon Sim et al. I retract my retraction. Ignore 16120352 and carry on. Been on holiday too long.
          Hide
          gsim Gordon Sim added a comment -

          Alan Conway:
          > The original requirement is to prevent auto-creation of addresses. This proposal sounds like the router will auto-create forbidden addresses which is quite different

          I think the requirement is simply that clients get some visible error signaled when trying to use an address for which no semantics have been configured. At present this is handled by treating such addresses as balanced. I don't personally view this as auto-creating the addresses, just as a way of inferring the semantics if none have been explicitly configured.

          I'm not sure how your suggested config works. Are the two option - autoLink & autoCreateDistribution -scoped to the router? or a given address? For the latter, I don't think that helps with the original requirement, unless you come up with some special prefix that matches anything for which there is no more specific match. For thr former, I don't understand what autLink would do. In the former, the autoCreateDistribution is effectively just a different name for defaultDistribution, and personally I find defaultDistribution a bit more obvious.

          Show
          gsim Gordon Sim added a comment - Alan Conway : > The original requirement is to prevent auto-creation of addresses. This proposal sounds like the router will auto-create forbidden addresses which is quite different I think the requirement is simply that clients get some visible error signaled when trying to use an address for which no semantics have been configured. At present this is handled by treating such addresses as balanced. I don't personally view this as auto-creating the addresses, just as a way of inferring the semantics if none have been explicitly configured. I'm not sure how your suggested config works. Are the two option - autoLink & autoCreateDistribution -scoped to the router? or a given address? For the latter, I don't think that helps with the original requirement, unless you come up with some special prefix that matches anything for which there is no more specific match. For thr former, I don't understand what autLink would do. In the former, the autoCreateDistribution is effectively just a different name for defaultDistribution, and personally I find defaultDistribution a bit more obvious.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user grs commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132281323

          — Diff: src/router_core/transfer.c —
          @@ -634,6 +634,23 @@ static void qdr_link_forward_CT(qdr_core_t *core, qdr_link_t *link, qdr_delivery
          addr->deliveries_ingress++;
          link->total_deliveries++;
          }
          + //
          + // There is no address that we can send this delivery to, which means the addr was not found in our hastable. This
          + // can be because there were no receivers or because the address was not defined in the config file.
          + // If the treatment for such addresses is set to be forbidden, we send back a rejected disposition and detach the link
          + //
          + else if (core->qd->treatment == QD_TREATMENT_LINK_FORBIDDEN) {
          + dlv->disposition = PN_REJECTED;
          + dlv->error = qdr_error("qd:forbidden", "Sending deliveries to this address is forbidden");
          — End diff –

          Or perhaps even better would be amqp:not-found, since we are really saying that this is not a recognised address?

          Show
          githubbot ASF GitHub Bot added a comment - Github user grs commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132281323 — Diff: src/router_core/transfer.c — @@ -634,6 +634,23 @@ static void qdr_link_forward_CT(qdr_core_t *core, qdr_link_t *link, qdr_delivery addr->deliveries_ingress++; link->total_deliveries++; } + // + // There is no address that we can send this delivery to, which means the addr was not found in our hastable. This + // can be because there were no receivers or because the address was not defined in the config file. + // If the treatment for such addresses is set to be forbidden, we send back a rejected disposition and detach the link + // + else if (core->qd->treatment == QD_TREATMENT_LINK_FORBIDDEN) { + dlv->disposition = PN_REJECTED; + dlv->error = qdr_error("qd:forbidden", "Sending deliveries to this address is forbidden"); — End diff – Or perhaps even better would be amqp:not-found, since we are really saying that this is not a recognised address?
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user grs commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132280889

          — Diff: python/qpid_dispatch/management/qdrouter.json —
          @@ -504,6 +504,13 @@
          "deprecated": true,
          "description": "(DEPRECATED) This value is no longer used in the router.",
          "create": true
          + },
          + "defaultDistribution": {
          + "type": ["multicast", "closest", "balanced", "forbidden"],
          + "description": "Default forwarding treatment for any address without a specified treatment. multicast - one copy of each message delivered to all subscribers; closest - messages delivered to only the closest subscriber; balanced - messages delivered to one subscriber with load balanced across subscribers; linkBalanced - for link-routing, link attaches balanced across destinations; forbidden - this address is forbidden, link attaches to an address of forbidden distribution will be rejected.",
          — End diff –

          linkBalanced should be removed from the comment

          Show
          githubbot ASF GitHub Bot added a comment - Github user grs commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132280889 — Diff: python/qpid_dispatch/management/qdrouter.json — @@ -504,6 +504,13 @@ "deprecated": true, "description": "(DEPRECATED) This value is no longer used in the router.", "create": true + }, + "defaultDistribution": { + "type": ["multicast", "closest", "balanced", "forbidden"] , + "description": "Default forwarding treatment for any address without a specified treatment. multicast - one copy of each message delivered to all subscribers; closest - messages delivered to only the closest subscriber; balanced - messages delivered to one subscriber with load balanced across subscribers; linkBalanced - for link-routing, link attaches balanced across destinations; forbidden - this address is forbidden, link attaches to an address of forbidden distribution will be rejected.", — End diff – linkBalanced should be removed from the comment
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ganeshmurthy commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132275399

          — Diff: src/dispatch_private.h —
          @@ -52,6 +52,7 @@ struct qd_dispatch_t {
          qd_connection_manager_t *connection_manager;
          qd_policy_t *policy;
          void *dl_handle;
          + qd_address_treatment_t treatment;
          — End diff –

          Changed treatment to default_treatment

          Show
          githubbot ASF GitHub Bot added a comment - Github user ganeshmurthy commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132275399 — Diff: src/dispatch_private.h — @@ -52,6 +52,7 @@ struct qd_dispatch_t { qd_connection_manager_t *connection_manager; qd_policy_t *policy; void *dl_handle; + qd_address_treatment_t treatment; — End diff – Changed treatment to default_treatment
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ganeshmurthy commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132275310

          — Diff: include/qpid/dispatch/router.h —
          @@ -42,7 +42,8 @@ typedef enum {
          QD_TREATMENT_MULTICAST_ONCE = 1,
          QD_TREATMENT_ANYCAST_CLOSEST = 2,
          QD_TREATMENT_ANYCAST_BALANCED = 3,

          • QD_TREATMENT_LINK_BALANCED = 4
            + QD_TREATMENT_LINK_BALANCED = 4,
            + QD_TREATMENT_LINK_FORBIDDEN = 5
              • End diff –

          Changed QD_TREATMENT_LINK_FORBIDDEN to QD_TREATMENT_FORBIDDEN

          Show
          githubbot ASF GitHub Bot added a comment - Github user ganeshmurthy commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132275310 — Diff: include/qpid/dispatch/router.h — @@ -42,7 +42,8 @@ typedef enum { QD_TREATMENT_MULTICAST_ONCE = 1, QD_TREATMENT_ANYCAST_CLOSEST = 2, QD_TREATMENT_ANYCAST_BALANCED = 3, QD_TREATMENT_LINK_BALANCED = 4 + QD_TREATMENT_LINK_BALANCED = 4, + QD_TREATMENT_LINK_FORBIDDEN = 5 End diff – Changed QD_TREATMENT_LINK_FORBIDDEN to QD_TREATMENT_FORBIDDEN
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ted-ross commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132259033

          — Diff: include/qpid/dispatch/router.h —
          @@ -42,7 +42,8 @@ typedef enum {
          QD_TREATMENT_MULTICAST_ONCE = 1,
          QD_TREATMENT_ANYCAST_CLOSEST = 2,
          QD_TREATMENT_ANYCAST_BALANCED = 3,

          • QD_TREATMENT_LINK_BALANCED = 4
            + QD_TREATMENT_LINK_BALANCED = 4,
            + QD_TREATMENT_LINK_FORBIDDEN = 5
              • End diff –

          This constant should not have "LINK" in it. That implies that this is only for link-routing. You should rename it "QD_TREATMENT_FORBIDDEN" because this feature is not relevant for link-routing.

          Show
          githubbot ASF GitHub Bot added a comment - Github user ted-ross commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132259033 — Diff: include/qpid/dispatch/router.h — @@ -42,7 +42,8 @@ typedef enum { QD_TREATMENT_MULTICAST_ONCE = 1, QD_TREATMENT_ANYCAST_CLOSEST = 2, QD_TREATMENT_ANYCAST_BALANCED = 3, QD_TREATMENT_LINK_BALANCED = 4 + QD_TREATMENT_LINK_BALANCED = 4, + QD_TREATMENT_LINK_FORBIDDEN = 5 End diff – This constant should not have " LINK " in it. That implies that this is only for link-routing. You should rename it "QD_TREATMENT_FORBIDDEN" because this feature is not relevant for link-routing.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ted-ross commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132261405

          — Diff: src/router_core/transfer.c —
          @@ -634,6 +634,23 @@ static void qdr_link_forward_CT(qdr_core_t *core, qdr_link_t *link, qdr_delivery
          addr->deliveries_ingress++;
          link->total_deliveries++;
          }
          + //
          + // There is no address that we can send this delivery to, which means the addr was not found in our hastable. This
          + // can be because there were no receivers or because the address was not defined in the config file.
          + // If the treatment for such addresses is set to be forbidden, we send back a rejected disposition and detach the link
          + //
          + else if (core->qd->treatment == QD_TREATMENT_LINK_FORBIDDEN) {
          + dlv->disposition = PN_REJECTED;
          + dlv->error = qdr_error("qd:forbidden", "Sending deliveries to this address is forbidden");
          — End diff –

          You should be using one of the AMQP-specified error conditions that is in the amqp.[ch] files. It seems that the appropriate error condition is "amqp:not-allowed", not "forbidden" (which is an error code only for the management protocol).

          Show
          githubbot ASF GitHub Bot added a comment - Github user ted-ross commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132261405 — Diff: src/router_core/transfer.c — @@ -634,6 +634,23 @@ static void qdr_link_forward_CT(qdr_core_t *core, qdr_link_t *link, qdr_delivery addr->deliveries_ingress++; link->total_deliveries++; } + // + // There is no address that we can send this delivery to, which means the addr was not found in our hastable. This + // can be because there were no receivers or because the address was not defined in the config file. + // If the treatment for such addresses is set to be forbidden, we send back a rejected disposition and detach the link + // + else if (core->qd->treatment == QD_TREATMENT_LINK_FORBIDDEN) { + dlv->disposition = PN_REJECTED; + dlv->error = qdr_error("qd:forbidden", "Sending deliveries to this address is forbidden"); — End diff – You should be using one of the AMQP-specified error conditions that is in the amqp. [ch] files. It seems that the appropriate error condition is "amqp:not-allowed", not "forbidden" (which is an error code only for the management protocol).
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ted-ross commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132260270

          — Diff: src/router_core/connections.c —
          @@ -1300,9 +1310,15 @@ static void qdr_link_inbound_first_attach_CT(qdr_core_t *core, qdr_action_t *act
          //
          // This link has a target address
          //

          • bool link_route;
          • qdr_address_t *addr = qdr_lookup_terminus_address_CT(core, dir, conn, target, true, true, &link_route);
          • if (!addr) {
            + bool link_route;
            + bool forbidden;
            + qdr_address_t *addr = qdr_lookup_terminus_address_CT(core, dir, conn, target, true, true, &link_route, &forbidden);
            + if (forbidden) {
            + qdr_link_outbound_detach_CT(core, link, 0, QDR_CONDITION_FORBIDDEN, true);
              • End diff –

          Does this do the right thing protocol-wise? Does the router send an attach with NULL terminus followed by a detach?

          Show
          githubbot ASF GitHub Bot added a comment - Github user ted-ross commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132260270 — Diff: src/router_core/connections.c — @@ -1300,9 +1310,15 @@ static void qdr_link_inbound_first_attach_CT(qdr_core_t *core, qdr_action_t *act // // This link has a target address // bool link_route; qdr_address_t *addr = qdr_lookup_terminus_address_CT(core, dir, conn, target, true, true, &link_route); if (!addr) { + bool link_route; + bool forbidden; + qdr_address_t *addr = qdr_lookup_terminus_address_CT(core, dir, conn, target, true, true, &link_route, &forbidden); + if (forbidden) { + qdr_link_outbound_detach_CT(core, link, 0, QDR_CONDITION_FORBIDDEN, true); End diff – Does this do the right thing protocol-wise? Does the router send an attach with NULL terminus followed by a detach?
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user ted-ross commented on a diff in the pull request:

          https://github.com/apache/qpid-dispatch/pull/185#discussion_r132259545

          — Diff: src/dispatch_private.h —
          @@ -52,6 +52,7 @@ struct qd_dispatch_t {
          qd_connection_manager_t *connection_manager;
          qd_policy_t *policy;
          void *dl_handle;
          + qd_address_treatment_t treatment;
          — End diff –

          Shouldn't this be called default_treatment?

          Show
          githubbot ASF GitHub Bot added a comment - Github user ted-ross commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/185#discussion_r132259545 — Diff: src/dispatch_private.h — @@ -52,6 +52,7 @@ struct qd_dispatch_t { qd_connection_manager_t *connection_manager; qd_policy_t *policy; void *dl_handle; + qd_address_treatment_t treatment; — End diff – Shouldn't this be called default_treatment?
          Hide
          githubbot ASF GitHub Bot added a comment -

          GitHub user ganeshmurthy opened a pull request:

          https://github.com/apache/qpid-dispatch/pull/185

          DISPATCH-803 - The following changes were made to support forbidden d…

          …istribution

          1. Added a new attribute to the router entity called called defaultDistribution which defaults to balanced
          but can be set to forbidden
          2. Attaches to forbidden addresses are rejected and the link is detached
          3. Anonymous senders sending to forbidden addresses will be sent back a disposition of PN_REJECTED but link will not be closed
          4. Added system test system_tests_default_distribution.py to test the above cases

          You can merge this pull request into a Git repository by running:

          $ git pull https://github.com/ganeshmurthy/qpid-dispatch DISPATCH-803

          Alternatively you can review and apply these changes as the patch at:

          https://github.com/apache/qpid-dispatch/pull/185.patch

          To close this pull request, make a commit to your master/trunk branch
          with (at least) the following in the commit message:

          This closes #185


          commit 6ddee464d11e570fdfe8f2599e1587c3f4fc0c42
          Author: Ganesh Murthy <gmurthy@redhat.com>
          Date: 2017-08-09T17:41:08Z

          DISPATCH-803 - The following changes were made to support forbidden distribution
          1. Added a new attribute to the router entity called called defaultDistribution which defaults to balanced
          but can be set to forbidden
          2. Attaches to forbidden addresses are rejected and the link is detached
          3. Anonymous senders sending to forbidden addresses will be sent back a disposition of PN_REJECTED but link will not be closed
          4. Added system test system_tests_default_distribution.py to test the above cases


          Show
          githubbot ASF GitHub Bot added a comment - GitHub user ganeshmurthy opened a pull request: https://github.com/apache/qpid-dispatch/pull/185 DISPATCH-803 - The following changes were made to support forbidden d… …istribution 1. Added a new attribute to the router entity called called defaultDistribution which defaults to balanced but can be set to forbidden 2. Attaches to forbidden addresses are rejected and the link is detached 3. Anonymous senders sending to forbidden addresses will be sent back a disposition of PN_REJECTED but link will not be closed 4. Added system test system_tests_default_distribution.py to test the above cases You can merge this pull request into a Git repository by running: $ git pull https://github.com/ganeshmurthy/qpid-dispatch DISPATCH-803 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/qpid-dispatch/pull/185.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #185 commit 6ddee464d11e570fdfe8f2599e1587c3f4fc0c42 Author: Ganesh Murthy <gmurthy@redhat.com> Date: 2017-08-09T17:41:08Z DISPATCH-803 - The following changes were made to support forbidden distribution 1. Added a new attribute to the router entity called called defaultDistribution which defaults to balanced but can be set to forbidden 2. Attaches to forbidden addresses are rejected and the link is detached 3. Anonymous senders sending to forbidden addresses will be sent back a disposition of PN_REJECTED but link will not be closed 4. Added system test system_tests_default_distribution.py to test the above cases
          Hide
          ganeshmurthy Ganesh Murthy added a comment -

          I talked to Ted Ross about this and this is what we are proposing -

          Add a new attribute called defaultDistribution to the router entity. This attribute is optional and will default to balanced. It can have a value of forbidden (we will introduce a new distribution called forbidden)

          router {
              mode: standalone
              id: Router.A
              defaultDistribution: forbidden
          }
          

          If a sender or receiver, whose source/target address is not explicitly defined in the router config file (or via qdmanage), is trying to attach, it would be refused if the defaultDistribution is set to forbidden

          Show
          ganeshmurthy Ganesh Murthy added a comment - I talked to Ted Ross about this and this is what we are proposing - Add a new attribute called defaultDistribution to the router entity. This attribute is optional and will default to balanced . It can have a value of forbidden (we will introduce a new distribution called forbidden ) router { mode: standalone id: Router.A defaultDistribution: forbidden } If a sender or receiver, whose source/target address is not explicitly defined in the router config file (or via qdmanage), is trying to attach, it would be refused if the defaultDistribution is set to forbidden
          Hide
          tedross Ted Ross added a comment -

          This breaks down into two new requirements:

          1. Add a new distribution called "forbidden" that causes links attached to matching addresses to be detached with an error. Messages delivered to matching addresses on an anonymous link shall be rejected with the same error.
          2. Add a way to configure the default distribution for non-configured addresses. This default defaults to "balanced" for backward compatibility.
          Show
          tedross Ted Ross added a comment - This breaks down into two new requirements: Add a new distribution called "forbidden" that causes links attached to matching addresses to be detached with an error. Messages delivered to matching addresses on an anonymous link shall be rejected with the same error. Add a way to configure the default distribution for non-configured addresses. This default defaults to "balanced" for backward compatibility.

            People

            • Assignee:
              ganeshmurthy Ganesh Murthy
              Reporter:
              gsim Gordon Sim
            • Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development