You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2017/03/15 20:07:10 UTC
[1/4] qpid-proton git commit: PROTON-1438: C url parser allows
unbracketed IPv6
Repository: qpid-proton
Updated Branches:
refs/heads/master 837680004 -> 2f27ee90d
PROTON-1438: C url parser allows unbracketed IPv6
For example the following are considered equivalent:
::1:amqp
[::1]:amqp
amqp://::1
amqp://::1:amqp
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/03ca9bec
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/03ca9bec
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/03ca9bec
Branch: refs/heads/master
Commit: 03ca9bec52d4a7a918a694c64929291edee58824
Parents: 64a05f6
Author: Alan Conway <ac...@redhat.com>
Authored: Wed Mar 15 13:49:12 2017 -0400
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 15 15:56:30 2017 -0400
----------------------------------------------------------------------
proton-c/src/core/event.c | 2 +-
proton-c/src/core/url-internal.c | 2 +-
proton-c/src/tests/parse-url.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/03ca9bec/proton-c/src/core/event.c
----------------------------------------------------------------------
diff --git a/proton-c/src/core/event.c b/proton-c/src/core/event.c
index 7a80a72..f36bd28 100644
--- a/proton-c/src/core/event.c
+++ b/proton-c/src/core/event.c
@@ -277,7 +277,7 @@ pn_event_t *pn_event(void)
pn_event_type_t pn_event_type(pn_event_t *event)
{
- return event->type;
+ return event ? event->type : PN_EVENT_NONE;
}
const pn_class_t *pn_event_class(pn_event_t *event)
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/03ca9bec/proton-c/src/core/url-internal.c
----------------------------------------------------------------------
diff --git a/proton-c/src/core/url-internal.c b/proton-c/src/core/url-internal.c
index fed82b4..a7186b1 100644
--- a/proton-c/src/core/url-internal.c
+++ b/proton-c/src/core/url-internal.c
@@ -104,7 +104,7 @@ void pni_parse_url(char *url, char **scheme, char **user, char **pass, char **ho
}
}
- char *colon = strchr(url, ':');
+ char *colon = strrchr(url, ':'); /* Be flexible about unbracketed IPV6 literals like ::1:<port> */
if (colon) {
*colon = '\0';
*port = colon + 1;
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/03ca9bec/proton-c/src/tests/parse-url.c
----------------------------------------------------------------------
diff --git a/proton-c/src/tests/parse-url.c b/proton-c/src/tests/parse-url.c
index c17ff1f..b632237 100644
--- a/proton-c/src/tests/parse-url.c
+++ b/proton-c/src/tests/parse-url.c
@@ -83,8 +83,8 @@ int main(int argc, char **argv)
// Can't round-trip passwords with ':', not strictly legal but the parser allows it.
TEST(test("user:1243^&^:pw@[::1]:amqp", 0, "user", "1243^&^:pw", "::1", "amqp", 0));
TEST(test("user:1243^&^:pw@[::1]:amqp/Foo.bar:90087", 0, "user", "1243^&^:pw", "::1", "amqp", "Foo.bar:90087"));
- TEST(test("user:1243^&^:pw@[::1:amqp/Foo.bar:90087", 0, "user", "1243^&^:pw", "[", ":1:amqp", "Foo.bar:90087"));
- TEST(test("user:1243^&^:pw@::1]:amqp/Foo.bar:90087", 0, "user", "1243^&^:pw", 0, ":1]:amqp", "Foo.bar:90087"));
+ TEST(test("user:1243^&^:pw@[::1:amqp/Foo.bar:90087", 0, "user", "1243^&^:pw", "[::1", "amqp", "Foo.bar:90087"));
+ TEST(test("user:1243^&^:pw@::1]:amqp/Foo.bar:90087", 0, "user", "1243^&^:pw", "::1]", "amqp", "Foo.bar:90087"));
TEST(testrt("amqp://user@[::1]", "amqp", "user", 0, "::1", 0, 0));
TEST(testrt("amqp://user@[::1]:amqp", "amqp", "user", 0, "::1", "amqp", 0));
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[2/4] qpid-proton git commit: NO-JIRA: Get rid of monkeypatch in
exampletest.py
Posted by ac...@apache.org.
NO-JIRA: Get rid of monkeypatch in exampletest.py
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/64a05f6e
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/64a05f6e
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/64a05f6e
Branch: refs/heads/master
Commit: 64a05f6e33a2b14193fff95794bbb0cc994dcbd2
Parents: 8376800
Author: Alan Conway <ac...@redhat.com>
Authored: Thu Mar 9 00:24:19 2017 -0500
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 15 15:56:30 2017 -0400
----------------------------------------------------------------------
examples/c/proactor/test.py | 12 ++++++------
examples/exampletest.py | 28 ++++++++++++++++------------
2 files changed, 22 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/64a05f6e/examples/c/proactor/test.py
----------------------------------------------------------------------
diff --git a/examples/c/proactor/test.py b/examples/c/proactor/test.py
index 84c519e..4950cef 100644
--- a/examples/c/proactor/test.py
+++ b/examples/c/proactor/test.py
@@ -34,8 +34,8 @@ class Broker(object):
self.test = test
def __enter__(self):
- with bind0() as sock:
- self.addr = "127.0.0.1:%s/examples" % (sock.port())
+ with TestPort() as port:
+ self.addr = "127.0.0.1:%s" % port
self.proc = self.test.proc(["broker", self.addr])
self.proc.wait_re("listening")
return self
@@ -67,8 +67,8 @@ class CExampleTest(ExampleTestCase):
def test_send_direct(self):
"""Send to direct server"""
- with bind0() as sock:
- addr = "127.0.0.1:%s" % sock.port()
+ with TestPort() as port:
+ addr = "127.0.0.1:%s" % port
d = self.proc(["direct", addr])
d.wait_re("listening")
self.assertEqual("10 messages sent and acknowledged\n", self.proc(["send", addr]).wait_out())
@@ -76,8 +76,8 @@ class CExampleTest(ExampleTestCase):
def test_receive_direct(self):
"""Receive from direct server"""
- with bind0() as sock:
- addr = "127.0.0.1:%s" % sock.port()
+ with TestPort() as port:
+ addr = "127.0.0.1:%s" % port
d = self.proc(["direct", addr])
d.wait_re("listening")
self.assertEqual(receive_expect(10), self.proc(["receive", addr]).wait_out())
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/64a05f6e/examples/exampletest.py
----------------------------------------------------------------------
diff --git a/examples/exampletest.py b/examples/exampletest.py
index 5c820fd..71aa463 100644
--- a/examples/exampletest.py
+++ b/examples/exampletest.py
@@ -31,18 +31,22 @@ from os.path import dirname as dirname
DEFAULT_TIMEOUT=10
-def bind0():
- """Bind a socket with bind(0) and SO_REUSEADDR to get a free port to listen on"""
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
- sock.bind(('', 0))
- return sock
-
-# Monkeypatch add port() and with support to socket.socket
-socket.socket.port = lambda(self): socket.getnameinfo(self.getsockname(), 0)[1]
-socket.socket.__enter__ = lambda(self): self
-def socket__exit__(self, *args): self.close()
-socket.socket.__exit__ = socket__exit__
+class TestPort(object):
+ """Get an unused port using bind(0) and SO_REUSEADDR and hold it till close()"""
+ def __init__(self):
+ self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+ self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
+ self.sock.bind(('', 0))
+ self.port = socket.getnameinfo(self.sock.getsockname(), 0)[1]
+
+ def __enter__(self):
+ return self.port
+
+ def __exit__(self, *args):
+ self.close()
+
+ def close(self):
+ self.sock.close()
class ProcError(Exception):
"""An exception that captures failed process output"""
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[3/4] qpid-proton git commit: PROTON-1439: messenger tests fail
sporadically with interrupt error
Posted by ac...@apache.org.
PROTON-1439: messenger tests fail sporadically with interrupt error
Different messenger tests fail randomly with "Interrupt: [-8]: None"
Disabled the tests by default as the messenger is no longer being maintained,
They can be run with 'proton-tests "*.messenger.*"'
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/98676a12
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/98676a12
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/98676a12
Branch: refs/heads/master
Commit: 98676a12cf9acaf896bade79da0bba4bbd933ae4
Parents: 03ca9be
Author: Alan Conway <ac...@redhat.com>
Authored: Wed Mar 15 15:57:32 2017 -0400
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 15 15:57:32 2017 -0400
----------------------------------------------------------------------
tests/python/proton-test | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/98676a12/tests/python/proton-test
----------------------------------------------------------------------
diff --git a/tests/python/proton-test b/tests/python/proton-test
index d8f49d5..951fea8 100755
--- a/tests/python/proton-test
+++ b/tests/python/proton-test
@@ -91,6 +91,9 @@ class Config:
opts, args = parser.parse_args()
+# Known bad tests, skipped unless specifically matched on the command line
+known_bad = ["proton_tests.messenger.*"]
+
includes = []
excludes = ["*__*__"]
config = Config()
@@ -119,9 +122,6 @@ for v in opts.ignore_file:
for a in args:
includes.append(a.strip())
-if not includes:
- includes.append("*")
-
def is_ignored(path):
for p in excludes:
if match(path, p):
@@ -134,7 +134,10 @@ def is_included(path):
for p in includes:
if match(path, p):
return True
- return False
+ for p in known_bad:
+ if match(path, p):
+ return False
+ return not includes # If includes is empty, include everything
def is_smart():
return sys.stdout.isatty() and os.environ.get("TERM", "dumb") != "dumb"
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[4/4] qpid-proton git commit: NO-JIRA: Remove spurious FIXME comment
Posted by ac...@apache.org.
NO-JIRA: Remove spurious FIXME comment
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/2f27ee90
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/2f27ee90
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/2f27ee90
Branch: refs/heads/master
Commit: 2f27ee90d896f2b0e31b3d2f49946faa537eb1d8
Parents: 98676a1
Author: Alan Conway <ac...@redhat.com>
Authored: Wed Mar 15 15:59:27 2017 -0400
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed Mar 15 15:59:27 2017 -0400
----------------------------------------------------------------------
proton-c/bindings/cpp/src/io/connection_driver.cpp | 1 -
1 file changed, 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/2f27ee90/proton-c/bindings/cpp/src/io/connection_driver.cpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/src/io/connection_driver.cpp b/proton-c/bindings/cpp/src/io/connection_driver.cpp
index 38e5bf2..c00ccf4 100644
--- a/proton-c/bindings/cpp/src/io/connection_driver.cpp
+++ b/proton-c/bindings/cpp/src/io/connection_driver.cpp
@@ -68,7 +68,6 @@ connection_driver::~connection_driver() {
pn_connection_driver_destroy(&driver_);
}
-// FIXME aconway 2016-11-16: rename _engine > _driver
void connection_driver::configure(const connection_options& opts, bool server) {
proton::connection c(connection());
opts.apply_unbound(c);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org