53f3d5f
diff -up syncevolution-1.5.3/test/syncevo-http-server.py.python3-2 syncevolution-1.5.3/test/syncevo-http-server.py
53f3d5f
--- syncevolution-1.5.3/test/syncevo-http-server.py.python3-2	2020-05-11 12:10:50.479969706 +0200
53f3d5f
+++ syncevolution-1.5.3/test/syncevo-http-server.py	2020-05-11 12:12:43.627963000 +0200
53f3d5f
@@ -131,7 +131,7 @@ class SyncMLSession:
53f3d5f
         then remove the session'''
53f3d5f
         logger.debug("destructing connection %s with code %s message %s", self.conpath, code, message)
53f3d5f
         if self.request:
53f3d5f
-            self.request.setResponseCode(code, message)
53f3d5f
+            self.request.setResponseCode(code, message.encode())
53f3d5f
             self.request.finish()
53f3d5f
             self.request = None
53f3d5f
         if self.connection:
53f3d5f
@@ -179,7 +179,7 @@ class SyncMLSession:
53f3d5f
             OldRequest.type = type
53f3d5f
             if request:
53f3d5f
                 request.setHeader('Content-Type', type)
53f3d5f
-                request.setHeader('Content-Length', len(data))
53f3d5f
+                request.setHeader('Content-Length', str(len(data)))
53f3d5f
                 request.setResponseCode(http.OK)
53f3d5f
                 request.write(data)
53f3d5f
                 request.finish()
53f3d5f
@@ -243,7 +243,6 @@ class SyncMLSession:
53f3d5f
                                         'org.syncevolution',
53f3d5f
                                         self.conpath,
53f3d5f
                                         path_keyword='conpath',
53f3d5f
-                                        utf8_strings=True,
53f3d5f
                                         byte_arrays=True)
53f3d5f
         self.reply_match = \
53f3d5f
         Context.bus.add_signal_receiver(self.reply,
53f3d5f
@@ -252,7 +251,6 @@ class SyncMLSession:
53f3d5f
                                         'org.syncevolution',
53f3d5f
                                         self.conpath,
53f3d5f
                                         path_keyword='conpath',
53f3d5f
-                                        utf8_strings=True,
53f3d5f
                                         byte_arrays=True)
53f3d5f
 
53f3d5f
         # feed new data into SyncEvolution and wait for reply
53f3d5f
@@ -319,16 +317,16 @@ class SyncMLPost(resource.Resource):
53f3d5f
             config = ""
53f3d5f
         type = request.getHeader('content-type')
53f3d5f
         len = request.getHeader('content-length')
53f3d5f
-        sessionid = request.args.get('sessionid')
53f3d5f
+        sessionid = request.args.get(b'sessionid')
53f3d5f
         if sessionid:
53f3d5f
-            sessionid = sessionid[0]
53f3d5f
+            sessionid = sessionid[0].decode()
53f3d5f
         logger.debug("POST from %s config %s type %s session %s args %s length %s",
53f3d5f
                      request.getClientIP(), config, type, sessionid, request.args, len)
53f3d5f
         if not sessionid:
53f3d5f
             logger.info("new SyncML session for %s", request.getClientIP())
53f3d5f
             session = SyncMLSession()
53f3d5f
             session.start(request, config,
53f3d5f
-                          urllib.parse.urljoin(self.url.geturl(), request.path))
53f3d5f
+                          urllib.parse.urljoin(self.url.geturl(), request.path.decode()))
53f3d5f
             return server.NOT_DONE_YET
53f3d5f
         else:
53f3d5f
             data = request.content.read()
53f3d5f
@@ -587,7 +585,7 @@ syncevo-http-server itself is installed"
53f3d5f
 
53f3d5f
     url = urllib.parse.urlparse(args[0])
53f3d5f
     root = resource.Resource()
53f3d5f
-    root.putChild(url.path[1:], SyncMLPost(url))
53f3d5f
+    root.putChild(url.path[1:].encode(), SyncMLPost(url))
53f3d5f
     site = server.Site(root)
53f3d5f
     if url.scheme == "https":
53f3d5f
         if not options.cert: