File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 128128"""
129129
130130import base64
131+ import sys
131132import time
132133import http .client
133134from xml .parsers import expat
@@ -152,7 +153,8 @@ def escape(s):
152153 s = s .replace ("<" , "<" )
153154 return s .replace (">" , ">" ,)
154155
155- __version__ = "1.0.1"
156+ # used in User-Agent header sent
157+ __version__ = sys .version [:3 ]
156158
157159# xmlrpc integer limits
158160MAXINT = 2 ** 31 - 1
@@ -408,7 +410,6 @@ def encode(self, out):
408410 out .write ("<value><base64>\n " )
409411 encoded = base64 .encodebytes (self .data )
410412 out .write (encoded .decode ('ascii' ))
411- out .write ('\n ' )
412413 out .write ("</base64></value>\n " )
413414
414415def _binary (data ):
@@ -1079,7 +1080,7 @@ class Transport:
10791080 """Handles an HTTP transaction to an XML-RPC server."""
10801081
10811082 # client identifier (may be overridden)
1082- user_agent = "xmlrpclib.py /%s (by www.pythonware.com) " % __version__
1083+ user_agent = "Python-xmlrpc /%s" % __version__
10831084
10841085 #if true, we'll request gzip encoding
10851086 accept_gzip_encoding = True
Original file line number Diff line number Diff line change @@ -956,8 +956,13 @@ def __init__(self):
956956
957957
958958if __name__ == '__main__' :
959- print ('Running XML-RPC server on port 8000' )
960959 server = SimpleXMLRPCServer (("localhost" , 8000 ))
961960 server .register_function (pow )
962961 server .register_function (lambda x ,y : x + y , 'add' )
963- server .serve_forever ()
962+ print ('Serving XML-RPC on localhost port 8000' )
963+ try :
964+ server .serve_forever ()
965+ except KeyboardInterrupt :
966+ print ("\n Keyboard interrupt received, exiting." )
967+ server .server_close ()
968+ sys .exit (0 )
Original file line number Diff line number Diff line change @@ -347,6 +347,9 @@ Core and Builtins
347347Library
348348-------
349349
350+ - Fix the xmlrpc.client user agent to return something similar to
351+ urllib.request user agent: "Python-xmlrpc/3.3".
352+
350353- Issue #13293: Better error message when trying to marshal bytes using
351354 xmlrpc.client.
352355
You can’t perform that action at this time.
0 commit comments