Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 526680 - Exchanges named "amq." are declarable, but amqp spec
Exchanges named "amq." are declarable, but amqp spec
Status: CLOSED ERRATA
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp (Show other bugs)
1.1.6
All Linux
medium Severity medium
: 1.3
: ---
Assigned To: Kim van der Riet
Frantisek Reznicek
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-10-01 07:50 EDT by ppecka
Modified: 2015-11-15 20:11 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The AMQP specification reserves the "amq" prefix. However, it was possible to create a queue which started with "amq", which could have resulted in confusion or, at worst, session errors. This update ensures that queue names cannot begin with any reserved prefixes, thus resolving any potential confusion and/or session problems, and enforcing adherence to the AMQP specification.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-10-14 12:12:32 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2010:0773 normal SHIPPED_LIVE Moderate: Red Hat Enterprise MRG Messaging and Grid Version 1.3 2010-10-14 11:56:44 EDT

  None (edit)
Description ppecka 2009-10-01 07:50:04 EDT
Description of problem:
AMQP specification says:
11.1.5. Exchange Naming
Exchange names beginning "amq." are reserved for AMQP standard exchanges. An attempt to declare an
exchange with name beginning "amq." except in passive mode MUST result in an exception of type notallowed.

Current qpidd allows declaration of exchanges named "amq." which is not inline with specification.

Version-Release number of selected component (if applicable):
rpm -qa | grep qpid | sort
python-qpid-0.5.752581-3.el5
qpidc-0.5.752581-25.el5
qpidc-debuginfo-0.5.752581-26.el5
qpidc-devel-0.5.752581-25.el5
qpidc-perftest-0.5.752581-25.el5
qpidc-rdma-0.5.752581-25.el5
qpidc-ssl-0.5.752581-25.el5
qpidd-0.5.752581-25.el5
qpidd-acl-0.5.752581-25.el5
qpidd-cluster-0.5.752581-25.el5
qpidd-devel-0.5.752581-25.el5
qpid-dotnet-0.4.738274-2.el5
qpidd-rdma-0.5.752581-25.el5
qpidd-ssl-0.5.752581-25.el5
qpidd-xml-0.5.752581-25.el5
qpid-java-client-0.5.751061-8.el5
qpid-java-common-0.5.751061-8.el5
ruby-qpid-0.4.749380-2.el5

How reproducible:
100%

Steps to Reproduce:
See "Additional info:"

Actual results:
Exchanges named amq.* can be declared.

Expected results:
Exchanges named amq.* should not be declared.

Additional info:
[root@localhost qpid_ptest_clients_basic]# qpid-config add exchange direct amq.x
[root@localhost qpid_ptest_clients_basic]# qpid-config add exchange direct amq.
[root@localhost qpid_ptest_clients_basic]# qpid-config exchanges
Type      Exchange Name    Attributes
==================================================
direct                    
topic     qpid.management 
direct    amq.direct       --durable
topic     amq.topic        --durable
fanout    amq.fanout       --durable
headers   amq.match        --durable
direct    amq.x           
direct    amq.
Comment 2 Kim van der Riet 2009-10-28 16:26:35 EDT
Fixed in r.830751

Python test added which checks this as part of make check. Can be hand-tested as shown above.
Comment 4 Frantisek Reznicek 2010-09-20 04:26:09 EDT
The issue has been fixed (amq.* / qpid.* exchanges are not allowed), retested on RHEL 4.8 / 5.5 i386 / x86_64 on packages:
python-qmf-0.7.946106-13.el5
python-qpid-0.7.946106-14.el5
qmf-0.7.946106-15.el5
qmf-devel-0.7.946106-15.el5
qpid-cpp-client-0.7.946106-15.el5
qpid-cpp-client-devel-0.7.946106-15.el5
qpid-cpp-client-devel-docs-0.7.946106-15.el5
qpid-cpp-client-rdma-0.7.946106-15.el5
qpid-cpp-client-ssl-0.7.946106-15.el5
qpid-cpp-server-0.7.946106-15.el5
qpid-cpp-server-cluster-0.7.946106-15.el5
qpid-cpp-server-devel-0.7.946106-15.el5
qpid-cpp-server-rdma-0.7.946106-15.el5
qpid-cpp-server-ssl-0.7.946106-15.el5
qpid-cpp-server-store-0.7.946106-15.el5
qpid-cpp-server-xml-0.7.946106-15.el5
qpid-dotnet-0.4.738274-2.el5
qpid-java-client-0.7.946106-9.el5
qpid-java-common-0.7.946106-9.el5
qpid-tools-0.7.946106-10.el5

-> VERIFIED
Comment 5 Kim van der Riet 2010-10-05 11:39:38 EDT
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause: It is possible to create queues starting with the string "amq", which is reserved in the AMQP spec.

Consequence: It is possible to create queues which duplicate reserved and default queues starting with "amq". This can result in session errors at worst, and is confusing.

Fix: The logic was fixed to prevent the use of reserved prefixes for queue names.

Result: It is no longer possible to create a queue name starting with the string "amq".
Comment 6 Douglas Silas 2010-10-05 15:17:03 EDT
    Technical note updated. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    Diffed Contents:
@@ -1,7 +1 @@
-Cause: It is possible to create queues starting with the string "amq", which is reserved in the AMQP spec.
+The AMQP specification reserves the "amq" prefix. However, it was possible to create a queue which started with "amq", which could have resulted in confusion or, at worst, session errors. This update ensures that queue names cannot begin with any reserved prefixes, thus resolving any potential confusion and/or session problems, and enforcing adherence to the AMQP specification.-
-Consequence: It is possible to create queues which duplicate reserved and default queues starting with "amq". This can result in session errors at worst, and is confusing.
-
-Fix: The logic was fixed to prevent the use of reserved prefixes for queue names.
-
-Result: It is no longer possible to create a queue name starting with the string "amq".
Comment 8 errata-xmlrpc 2010-10-14 12:12:32 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2010-0773.html

Note You need to log in before you can comment on or make changes to this bug.