summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorSandy Walsh <sandy.walsh@rackspace.com>2011-07-07 09:53:46 -0700
committerSandy Walsh <sandy.walsh@rackspace.com>2011-07-07 09:53:46 -0700
commitea44598a8be91c2da8b2650b838fef9e028e5b67 (patch)
treeeb49c2d45a315e672dd5d2143cdaf31ce9b0e95e /bin
parentf2b107981c9b37043fe6c68e92cb170b2b701a18 (diff)
parentcd903f6c813010c8f09adc0cb63d787108a52b8b (diff)
downloadnova-ea44598a8be91c2da8b2650b838fef9e028e5b67.tar.gz
nova-ea44598a8be91c2da8b2650b838fef9e028e5b67.tar.xz
nova-ea44598a8be91c2da8b2650b838fef9e028e5b67.zip
trunk merge
Diffstat (limited to 'bin')
-rwxr-xr-xbin/nova-vncproxy15
1 files changed, 15 insertions, 0 deletions
diff --git a/bin/nova-vncproxy b/bin/nova-vncproxy
index 72271df3a..bdbb30a7f 100755
--- a/bin/nova-vncproxy
+++ b/bin/nova-vncproxy
@@ -63,6 +63,19 @@ flags.DEFINE_flag(flags.HelpshortFlag())
flags.DEFINE_flag(flags.HelpXMLFlag())
+def handle_flash_socket_policy(socket):
+ LOG.info(_("Received connection on flash socket policy port"))
+
+ fd = socket.makefile('rw')
+ expected_command = "<policy-file-request/>"
+ if expected_command in fd.read(len(expected_command) + 1):
+ LOG.info(_("Received valid flash socket policy request"))
+ fd.write('<?xml version="1.0"?><cross-domain-policy><allow-'
+ 'access-from domain="*" to-ports="%d" /></cross-'
+ 'domain-policy>' % (FLAGS.vncproxy_port))
+ fd.flush()
+ socket.close()
+
if __name__ == "__main__":
utils.default_flagfile()
FLAGS(sys.argv)
@@ -101,4 +114,6 @@ if __name__ == "__main__":
host=FLAGS.vncproxy_host,
port=FLAGS.vncproxy_port)
server.start()
+ server.start_tcp(handle_flash_socket_policy, 843, host=FLAGS.vncproxy_host)
+
server.wait()