-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18423/
-----------------------------------------------------------

Review request for qpid, Chug Rolke and Gordon Sim.


Bugs: QPID-5561 and QPID-5565
    https://issues.apache.org/jira/browse/QPID-5561
    https://issues.apache.org/jira/browse/QPID-5565


Repository: qpid


Description
-------

This patch fixes both:

QPID-5561: C++ Broker queue creation ACL checks against wrong limit values
QPID-5565: [C++ broker] ACL queue create rules to take zero as unlimited value

The patch:
- passes to ACL persistency-related / paging queue options only if the queue is 
marked as durable / with paging
- fills proper default values


Potential issues:
- I had to copy constant value "static const u_int32_t defJrnlFileSizePgs = 24" 
and also "defNumJrnlFiles = 8" as there is no simple way (known to me) to test 
if legacy store module is loaded
  - anyway as legacy store is not supposed to be changed (due to linearstore), 
I see this a acceptable
- ACL line like:

acl allow all create queue filemaxcountupperlimit=32

is _not_ matched for a transient queue. That differs from current behaviour, 
anyway I see it as an improvement rather (as is, the above ACL is meaningless 
for transient queues that dont have filecount limit applicable)


Diffs
-----

  /trunk/qpid/cpp/src/qpid/broker/Broker.cpp 1571198 
  /trunk/qpid/cpp/src/qpid/broker/QueueFactory.h 1571198 
  /trunk/qpid/cpp/src/qpid/broker/QueueFactory.cpp 1571198 
  /trunk/qpid/cpp/src/qpid/broker/QueueSettings.h 1571198 
  /trunk/qpid/cpp/src/qpid/broker/QueueSettings.cpp 1571198 
  /trunk/qpid/cpp/src/tests/acl.py 1571198 

Diff: https://reviews.apache.org/r/18423/diff/


Testing
-------

- different variants of use cases (esp. from the JIRAs) passed
- automated tests passed


Thanks,

Pavel Moravec

Reply via email to