summaryrefslogtreecommitdiff
path: root/demoscript/Ice
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2012-10-22 17:51:17 +0200
committerBenoit Foucher <benoit@zeroc.com>2012-10-22 17:51:17 +0200
commit2f7784b69f888e9a84a99a1aff8843d8841d51a2 (patch)
tree2cf0762030c52c483afbdecea35650cd195f7879 /demoscript/Ice
parentICE-4831 - bogus comparison operators in Python (diff)
downloadice-2f7784b69f888e9a84a99a1aff8843d8841d51a2.tar.bz2
ice-2f7784b69f888e9a84a99a1aff8843d8841d51a2.tar.xz
ice-2f7784b69f888e9a84a99a1aff8843d8841d51a2.zip
Fixed ICE-4556 - --interface option not working on some platforms, enabled Java IPv6 tests on Windows
Diffstat (limited to 'demoscript/Ice')
-rw-r--r--demoscript/Ice/multicast.py21
1 files changed, 14 insertions, 7 deletions
diff --git a/demoscript/Ice/multicast.py b/demoscript/Ice/multicast.py
index 17905d1d048..d1f84d3698a 100644
--- a/demoscript/Ice/multicast.py
+++ b/demoscript/Ice/multicast.py
@@ -64,12 +64,19 @@ def run(clientCmd, serverCmd):
runDemo(clientCmd, serverCmd)
print("ok")
- if Util.getMapping() == "java" and Util.isWin32():
- sys.stdout.write("skipping testing multicast discovery (IPv6) under Windows...")
+ sys.stdout.write("testing multicast discovery (IPv6)... ")
+ sys.stdout.flush()
+
+ #
+ # On OS X, using the interface-local address doesn't work, the client fails with
+ # a "Host not reachable" error, instead we use a link-local address with on loopback.
+ #
+ if Util.isDarwin():
+ endpoint = 'udp -h \\"ff02::1:1\\" -p 10000 --interface \\"lo0\\"'
else:
- sys.stdout.write("testing multicast discovery (IPv6)... ")
- sys.stdout.flush()
- serverCmd += ' --Ice.IPv6=1 --Discover.Endpoints="udp -h \\"ff01::1:1\\" -p 10000"'
- clientCmd += ' --Ice.IPv6=1 --Discover.Proxy="discover:udp -h \\"ff01::1:1\\" -p 10000"'
- runDemo(clientCmd, serverCmd)
+ endpoint = 'udp -h \\"ff01::1:1\\" -p 10000'
+ serverCmd += ' --Ice.IPv6=1 --Discover.Endpoints="%s"' % (endpoint)
+ clientCmd += ' --Ice.IPv6=1 --Discover.Proxy="discover:%s"' % (endpoint)
+
+ runDemo(clientCmd, serverCmd)
print("ok")