summaryrefslogtreecommitdiff
path: root/cpp/src/qpid
Commit message (Collapse)AuthorAgeFilesLines
* QPID-4717 - Added missing call to statisticsUpdated for Exchanges.Ted Ross2013-04-051-0/+2
| | | | | | | Related to QPID-3875. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1465068 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4718: set exclusive owner on subscription queueGordon Sim2013-04-051-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1465048 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4716: set durability on terminusGordon Sim2013-04-052-1/+27
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1465047 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4700: fix typo in mapping for 'to' fieldGordon Sim2013-04-031-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1464210 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4692 ACL queue quotas did not count autodelete - patch by Ernie AllenCharles E. Rolke2013-04-021-0/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1463649 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4679: Cleaned up processing of addresses, including errors and warnings ↵Gordon Sim2013-03-298-63/+241
| | | | | | where elements can not be supported git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1462646 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4675: Allow receivers from direct exchanges without a subject filterGordon Sim2013-03-281-3/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1462139 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4674: Detect asynchronous connection close, session end and link detachGordon Sim2013-03-284-9/+69
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1462138 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4672: C++ Broker deadlock in XmlExchange unbindCharles E. Rolke2013-03-272-3/+12
| | | | | | | | Unbind functions get the Wlock directly and do not get Rlock first. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1461634 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4668: Message is only redelivered if delivery count is greater than 1Gordon Sim2013-03-261-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1461249 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4667: Fix for selective message acknowledgement over AMQP 1.0Gordon Sim2013-03-261-1/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1461248 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4586: Compilation fix for windowsGordon Sim2013-03-251-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1460552 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4586: fixes for dynamic sources/targets and on demand creation of nodesGordon Sim2013-03-2330-93/+236
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1460198 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: C++ broker selectors: trivial - remove unnecessary templatesAndrew Stitcher2013-03-201-15/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1458644 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: silence irrelevant warning in release modeAndrew Stitcher2013-03-201-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1458620 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: C++ broker selectors: Improved error reportingAndrew Stitcher2013-03-204-56/+120
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1458610 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Change C++ Selector implementation to use registered valuesAndrew Stitcher2013-03-195-11/+13
| | | | | | | | | | | | - Selectors should now implement every language feature of the registered apache selector filter extension to the amqp 1.0 spec. - In the addressing syntax use a link property called just "selector" - For amqp 1.0 on the wire use the registered filter descriptor code for the selector. - For amqp 0-10 on the wire use a subscription property of "x-apache-selector" for the selector. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1458453 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4624: Implement IN operator for C++ broker selectorsAndrew Stitcher2013-03-181-2/+50
| | | | | | | | | - Implemented parser for IN operator - Implement In operator evaluator and unit tests - Syntax is a bit wider than the spec allowing full expressions in the contents of the IN expression not just strings. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457998 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4658: Update statistics even when no binding key matches routing keyJustin Ross2013-03-181-5/+7
| | | | | | | | | This is a patch from Pavel Moravec. Thanks to Ernie Allen for testing it and fixit it for latest trunk. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457924 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4621: Arithmetic operations for C++ broker selectorsAndrew Stitcher2013-03-185-216/+408
| | | | | | | | | | | | | | | - Rearranged Syntax and parser to support arithmetic - Implemented arithmetic syntax - Implemented arithmetic operators - Added some tests for arithmetic operations - Added explicit lexical tokens for all the comparison and arithmetic operations - Added the missing ',' token for us in the 'IN' comparison - Rearranged the lexer so that everything is not uniformly inside the hand crafted state machine. - Moved a bunch of testing code from the tokeniser to the unit test (much of this code might actually not be very useful anymore) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457912 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4586: some management related tweaks and fixesGordon Sim2013-03-1815-38/+63
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457898 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4623: Fixed unknown semantics of "between" comparisonAndrew Stitcher2013-03-151-26/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457058 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4623: Implemented parser and evaluator for BETWEEN comparisonsAndrew Stitcher2013-03-151-19/+50
| | | | | | | | | - The implementation uses a custom between operator rather than desugaring the syntax, because we can avoid repeated evaluation of the expression bing compared that way (this will also be true for the IN comparison operator). git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457029 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4586: add ability to have qpidd establish outgoing connectionsGordon Sim2013-03-1435-246/+2187
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1456621 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4622: Implement 'LIKE' string matching operations in selectorAndrew Stitcher2013-03-142-18/+215
| | | | | | | | | - This implements <expression> [NOT] LIKE <string> [ESCAPE <character>] - The implementation uses the posix regex library (in BRE mode) on Unix systems - It uses std::tr1::regex on Visual Studio (in std::tr1::regex::basic mode) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1456561 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Fix string iterator being dereferenced 1 beyond end().Andrew Stitcher2013-03-141-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1456464 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4559 - Added handling of the queue-delete preconditions in the qmf ↵Ted Ross2013-03-132-1/+23
| | | | | | | | | broker method. Patch contributed by Ernie Allen. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1456081 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4595: ensure completions for previously received messages are sent when ↵Gordon Sim2013-03-121-0/+1
| | | | | | credit is flushed git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1455630 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4625: Extract amqp 1.0 application-properties from messagesAndrew Stitcher2013-03-126-5/+81
| | | | | | | | - A working implementaion to qpid::amqp::Message::processProperties() so that qpid::broker::Message::getProperty() will work. * This is used by the selector implementation. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1455579 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4641: C++ build errors re virtual functions but non-virtual destructorAlan Conway2013-03-121-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1455529 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4590: check management object exists before using itGordon Sim2013-03-121-2/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1455484 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4632 - Improvement to queue threshold alertingTed Ross2013-03-084-78/+67
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1454601 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4633, QPID-4634: RHEL 5 related compilation problemsAndrew Stitcher2013-03-085-8/+8
| | | | | | | - Some things that the gcc 4.1/boost 1.33 environment in RHEL5 cares about. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1454595 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4626: Amqp 0-10 Message getProperty() does not correctly return booleansAndrew Stitcher2013-03-085-19/+44
| | | | | | | - Improve amqp 0-10 message property handling to correct deal with floats/double and bools. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1454437 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4626: Amqp 0-10 Message getProperty() does not correctly return booleansAndrew Stitcher2013-03-081-0/+5
| | | | | | - Add codec function to convert FieldValue to Variant to support this change git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1454436 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4630: HA Fix starting from persistent store.Andrew Stitcher2013-03-082-44/+86
| | | | | | | Reengineered code for converting a Variant to a FieldValue by reinstating code previously removed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1454435 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ broker - don't use boost::make_shared<>()Andrew Stitcher2013-03-071-2/+1
| | | | | | (It's not available in boost 1.33 - which is what RHEL5 has available - sigh) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1454105 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4630: HA fix inconsistent header file paths in legacystore.Alan Conway2013-03-073-7/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1453972 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4630: HA Fix starting from persistent store.Alan Conway2013-03-075-19/+27
| | | | | | | | | | This was implemented in r1390123 but broken by subsequent changes. When re-starting a persistent HA cluster, the broker that becomes primary keeps its recovered queues while backup brokers discard their recovered queues and catch up from the primary. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1453971 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ broker - fixes windows builds and 32-bit buildsCharles E. Rolke2013-03-073-15/+24
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1453898 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4629 Improve validation of received frames.Andrew Stitcher2013-03-052-24/+37
| | | | | | | | | | | | | | | | | - Added checks to Buffer to ensure no buffer overruns occur; - Fixed an unsigned comparison error in the checking function. - Improved FieldValue decoding to check we've actually got data before allocating the space for it. - Disallowed large arrays (greater than 256 elements) of zero length elements - avoids potential memory exhaustion problems. [Fixes from Florian Weimer, Red Hat Product Security Team, lightly modified] This change fixes these vulnerabilities CVE-2012-4458 CVE-2012-4459 CVE-2012-4460 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1453031 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ brokerAndrew Stitcher2013-03-051-8/+7
| | | | | | | | - Small fixes: * Missing include file (accidentally included under gcc) * Workaround some strange VS 2008 issue. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452960 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ brokerAndrew Stitcher2013-03-048-186/+720
| | | | | | | | | | | | | - Added numeric and boolean values * To literals and identifier values * To the code that extracts values from message properties - Added the full set of comparison operators - Implemented full "unknown" semantics for all operators. - Implemented extended "is null" and "is not null" operators that allow expressions as well as just identifiers. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452525 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ brokerAndrew Stitcher2013-03-047-2/+59
| | | | | | | | - Added in amqp 1.0 support that uses a filter for the selector - This change requires at least qpid-proton 0.4 (or a lot of warning messages are produced by the broker) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452524 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ brokerAndrew Stitcher2013-03-046-5/+936
| | | | | | | | | | | | | | | | | | | - Initial Selectors implemented: * Only string values supported (no numerics or bools) - Parses and executes the forms: * A=B * A<>B * I IS NULL * I IS NOT NULL - where A, B are strings or identifiers - I is an identifier * Conditional expressions can include the AND, OR and NOT operators and use parentheses. - Only limited special identifiers return useful values (although they are all recognised) - Unit tests for selector language git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452523 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4558: Selectors for C++ brokerAndrew Stitcher2013-03-045-2/+188
| | | | | | | | | | | | | | | | - Add support to 0-10 protocol codepaths in client messaging library and the broker to transmit a selector when subscribing to a queue - This is specified by using a link property qpid.selector in the queue address. - The selector is actually transmitted under 0-10 as an user vlaue named qpid.selector in the arguments table of the subscription. - Added simple selector framework to broker. - Added in infrastructure for selector evaluation -- Put in place a trivial (but real) selector: The expression specifies a message property and returns true if it is present. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452522 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Changed subject filter to use described value now proton bug should ↵Andrew Stitcher2013-03-041-5/+4
| | | | | | be fixed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452520 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4604: C++ Broker queue limits controlled by ACL file. Patch from Ernie ↵Charles E. Rolke2013-03-017-92/+220
| | | | | | | | | | Allen. See https://reviews.apache.org/r/9703/ git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1451737 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4615: Allow unix qpidd to pass in existing socket fds on cmdline.Andrew Stitcher2013-03-014-5/+103
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1451446 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4610: Remove duplicated transport code from C++ brokerAndrew Stitcher2013-03-0110-813/+727
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1451443 13f79535-47bb-0310-9956-ffa450edef68