[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] [TOOLS] Make sure to explicitly close the connection if we're using HTTP/1.0. This



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID dab24595e52989a5c23471cdb9908e38b2d087b9
# Parent  c2e8e9b1e19242477de1a0b78bdc64b6e08da202
[TOOLS] Make sure to explicitly close the connection if we're using HTTP/1.0.  
This
shouldn't be needed but it appears to be necessary as the Python client
just does a wfile.read() instead of only reading the reported Content-Length.

Signed-off-by: Anthony Liguori <aliguori@xxxxxxxxxx>
---
 tools/python/xen/util/xmlrpclib2.py |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff -r c2e8e9b1e192 -r dab24595e529 tools/python/xen/util/xmlrpclib2.py
--- a/tools/python/xen/util/xmlrpclib2.py       Thu Jun 22 15:09:48 2006 +0100
+++ b/tools/python/xen/util/xmlrpclib2.py       Thu Jun 22 15:10:48 2006 +0100
@@ -58,8 +58,6 @@ class XMLRPCRequestHandler(SimpleXMLRPCR
     #    propagate so that it shows up in the Xend debug logs
     # 2) we don't bother checking for a _dispatch function since we don't
     #    use one
-    # 3) we never shutdown the connection.  This appears to be a bug in
-    #    SimpleXMLRPCServer.py as it breaks HTTP Keep-Alive
     def do_POST(self):
         data = self.rfile.read(int(self.headers["content-length"]))
         rsp = self.server._marshaled_dispatch(data)
@@ -71,6 +69,8 @@ class XMLRPCRequestHandler(SimpleXMLRPCR
 
         self.wfile.write(rsp)
         self.wfile.flush()
+        if self.close_connection == 1:
+            self.connection.shutdown(1)
 
 class HTTPUnixConnection(HTTPConnection):
     def connect(self):

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.