The branch, build-main has been updated via aa84ed46e7d201c60b72b70b2be26c02bdbcecee (commit) from d1b123d29807d11997c79697ac7b998264ed2fea (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: debian/changelog | 1 + x2gobroker/web/plain.py | 9 +++++++++ 2 files changed, 10 insertions(+) The diff of changes is: diff --git a/debian/changelog b/debian/changelog index 4d452a2..58fad73 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,6 +10,7 @@ x2gobroker (0.0.0.6-0~x2go1) UNRELEASED; urgency=low runs as super-user root). - Switch from webpy to using tornado as http engine. - Divert tornado log requests into the broker's logger instances. + - Add workaround to handle bug #138 in x2goclient. * /debian/*.default: - Be more explanatory about the X2GOBROKER_DEBUG option and allow to enable debug mode for the different services independently. diff --git a/x2gobroker/web/plain.py b/x2gobroker/web/plain.py index 006a539..0505573 100644 --- a/x2gobroker/web/plain.py +++ b/x2gobroker/web/plain.py @@ -22,6 +22,7 @@ # modules import tornado.web +from tornado.escape import native_str, parse_qs_bytes import types # Python X2Go Broker modules @@ -41,6 +42,8 @@ class X2GoBrokerWeb(tornado.web.RequestHandler): for http_header_item in self.http_header_items.keys(): self.add_header(http_header_item, self.http_header_items[http_header_item]) + def initialize(self, **kwargs): + def get(self, backend): if x2gobroker.defaults.X2GOBROKER_DEBUG: self._gen_http_header() @@ -66,6 +69,12 @@ class X2GoBrokerWeb(tornado.web.RequestHandler): if not broker_backend.is_enabled(): raise tornado.web.HTTPError(404) + # FIXME: this is to work around a bug in X2Go Client (http://bugs.x2go.org/138) + content_type = self.request.headers.get("Content-Type", "") + if not content_type.startswith("application/x-www-form-urlencoded"): + for name, values in parse_qs_bytes(native_str(self.request.body)).iteritems(): + self.request.arguments.setdefault(name, []).extend(values) + # set the client address for the broker backend ip = self.request.remote_ip if ip: hooks/post-receive -- x2gobroker.git (HTTP(S) Session broker for X2Go) This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "x2gobroker.git" (HTTP(S) Session broker for X2Go).