[
https://issues.apache.org/jira/browse/QPID-3415?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13098270#comment-13098270
]
[email protected] commented on QPID-3415:
-----------------------------------------------------
bq. On 2011-09-06 18:12:46, rajith attapattu wrote:
bq. >
/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java,
line 38
bq. > <https://reviews.apache.org/r/1608/diff/1/?file=34085#file34085line38>
bq. >
bq. > I believe you forgot to add ClientConnectionDelegate ?
bq. > I can't seem to find this in the current source tree.
bq. >
bq. > Perhaps some of the missing code from ClientDelegate is moved to
this class?
Well damn, thatll teach me to say something looks fine without looking at the
diff to make sure its actually what I looked it ;(
Pretty much all of your comments stem from this one issue as the missing code
will indeed be in the ClientConnectionDelegate, which is used in place of
ClientDelegate for actual client use now as can be seen further down the class.
ClientDelegate is really mainly used in ConnectionTest after this (the same way
ServerDelegate was really only used in ConnectionTest, but the real broker uses
the ServerConnectionDelegate subclass). The diff posted to ReviewBoard is
basically incomplete for some reason. I dont have a copy of the original patch
that I actually looked over a couple weeks ago and Keith is on holiday just
now, but I'm sure he will post the corrected version on his return next
week...until then, no need to test what wont evne compile... :S
bq. On 2011-09-06 18:12:46, rajith attapattu wrote:
bq. >
/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/ConnectionSettings.java,
line 61
bq. > <https://reviews.apache.org/r/1608/diff/1/?file=34091#file34091line61>
bq. >
bq. > I would think it's better to default to PLAIN as that would be the
one that will be universally supported.
bq. > However I believe you now retrieve the default from the sasl config
file ?
It doesnt default to a particular mechanism now, and instead chooses from all
of the supported mechanisms of the client like the 0-8/9 codebase did (though
the changes also improves that to be deterministic). The null default here
indicates the user hasnt asked for a specific set of mechs to be the supported
ones, whereas a non-null result will be used to override the clients supported
list and specify exactly what should be used as the supported mechs, as it did
previously.
- Robbie
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1608/#review1767
-----------------------------------------------------------
On 2011-08-22 08:58:27, Keith Wall wrote:
bq.
bq. -----------------------------------------------------------
bq. This is an automatically generated e-mail. To reply, visit:
bq. https://reviews.apache.org/r/1608/
bq. -----------------------------------------------------------
bq.
bq. (Updated 2011-08-22 08:58:27)
bq.
bq.
bq. Review request for qpid and rajith attapattu.
bq.
bq.
bq. Summary
bq. -------
bq.
bq. This patch changes the 0-10 code path to create the SASL callback handler
using the CallbackHandlerRegistry. This allows the 0-10 code path to support
SASL mechanisms requiring other callback handlers, such as CRAM-MD5-HASHED.
Support for the sasl_mechs client connection option has been retained and now
applies to the 0-8..0-9-1 code paths too.
bq.
bq. If the user *specifies* a sasl_mechs client connection option the
behaviour of the code is unchanged from the previous version: it restricts the
list of SASL mechanisms in use.
bq.
bq. If the user *does not specify* a sasl_mechs client connection option, the
old code used a hardcoded PLAIN default. This is no longer the case. Now the
client will use the first SASL mechanism from the list
CallbackHandlerRegistry.properties that is also available on the server.
bq.
bq. Removed dead code and strengthen unit tests.
bq.
bq.
bq.
bq. This addresses bug QPID-3415.
bq. https://issues.apache.org/jira/browse/QPID-3415
bq.
bq.
bq. Diffs
bq. -----
bq.
bq.
/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java
1160136
bq.
/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java
1160136
bq.
/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.java
1160136
bq.
/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.properties
1160136
bq.
/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/ClientDelegate.java
1160136
bq.
/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java
1160136
bq.
/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/ConnectionSettings.java
1160136
bq.
/trunk/qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionTest.java
1160136
bq.
/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/client/connection/ConnectionTest.java
1160136
bq.
/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/message/UTF8Test.java
1160136
bq.
bq. Diff: https://reviews.apache.org/r/1608/diff
bq.
bq.
bq. Testing
bq. -------
bq.
bq. Improved unit testing. Run java, cpp and cpp.ssl profiles. I am not able
to test GSSAPI locally.
bq.
bq.
bq. Thanks,
bq.
bq. Keith
bq.
bq.
> CRAM-MD5-HASHED not supported by 0-10 protocol (+ no suppport for custom SASL
> mechanisms).
> ------------------------------------------------------------------------------------------
>
> Key: QPID-3415
> URL: https://issues.apache.org/jira/browse/QPID-3415
> Project: Qpid
> Issue Type: Bug
> Components: Java Client
> Affects Versions: 0.10
> Reporter: Keith Wall
> Assignee: Rajith Attapattu
> Fix For: 0.13
>
>
> If the Java broker is configured to use the Base64MD5Password password
> database the Java client is unable to connect even if they use the sasl_mechs
> broker option in the connection URL (sasl_mechs='CRAM-MD5-HASHED').
> Instead the user sees:
> {code}
> org.apache.qpid.AMQException: Cannot connect to broker: Callback handler with
> support for AuthorizeCallback required
> {code}
> The user can work around the problem by passing the -Dqpid.amqp.version
> system property to the client, and selecting a protocol < 0-10.
> The problem is happening because on the 0-10 code path on the client, the
> SASL CallbackHandler in use is hardcoded to UsernamePasswordCallbackhandler
> (ClientDelegate), rather than using the facilities of CallbackHandlerRegistry
> (as does the 0-8 and 0-9* code paths). CRAM-MD5-HASHED requires the use of a
> different Callbackhandler.
> This also inhibits the use of custom SASL methods by the client.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]