Repository: qpid-jms Updated Branches: refs/heads/master 75f3cf8d2 -> bdf91953d
QPIDJMS-127 Throw an error if the connection URI contains user-info values. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/bdf91953 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/bdf91953 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/bdf91953 Branch: refs/heads/master Commit: bdf91953d8276d12df5572b1800891ba8667a6de Parents: 75f3cf8 Author: Timothy Bish <tabish...@gmail.com> Authored: Mon Oct 12 17:47:31 2015 -0400 Committer: Timothy Bish <tabish...@gmail.com> Committed: Mon Oct 12 17:47:31 2015 -0400 ---------------------------------------------------------------------- .../org/apache/qpid/jms/JmsConnectionFactory.java | 4 ++++ .../integration/ConnectionFactoryIntegrationTest.java | 14 ++++++++++++++ 2 files changed, 18 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/bdf91953/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java index 3b90b18..ae93eed 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionFactory.java @@ -276,6 +276,10 @@ public class JmsConnectionFactory extends JNDIStorable implements ConnectionFact } this.remoteURI = createURI(remoteURI); + if (this.remoteURI.getRawUserInfo() != null) { + throw new IllegalArgumentException("The supplied URI cannot contain a User-Info section"); + } + try { if (this.remoteURI.getQuery() != null) { Map<String, String> map = PropertyUtil.parseQuery(this.remoteURI.getQuery()); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/bdf91953/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConnectionFactoryIntegrationTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConnectionFactoryIntegrationTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConnectionFactoryIntegrationTest.java index d72d521..016f188 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConnectionFactoryIntegrationTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConnectionFactoryIntegrationTest.java @@ -97,6 +97,20 @@ public class ConnectionFactoryIntegrationTest extends QpidJmsTestCase { } @Test(timeout=20000) + public void testCreateAmqpConnectionWithUserInfoThrowsJMSEx() throws Exception { + try (TestAmqpPeer testPeer = new TestAmqpPeer();) { + // DONT create a test fixture, we will drive everything directly. + String uri = "amqp://user:pass@127.0.0.1:" + testPeer.getServerPort(); + try { + new JmsConnectionFactory(uri); + fail("Should not be able to create a factory with user info value set."); + } catch (Exception ex) { + LOG.debug("Caught expected exception on invalid message ID format: {}", ex); + } + } + } + + @Test(timeout=20000) public void testSetInvalidMessageIDFormatOption() throws Exception { try (TestAmqpPeer testPeer = new TestAmqpPeer();) { // DONT create a test fixture, we will drive everything directly. --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org