[X2Go-Commits] python-x2go.git - release/0.4.0.x (branch) updated: e3fa36a46adeb8516579f9e38c6d0d5aa00d1415
X2Go dev team
git-admin at x2go.org
Tue Jan 7 16:16:12 CET 2014
The branch, release/0.4.0.x has been updated
via e3fa36a46adeb8516579f9e38c6d0d5aa00d1415 (commit)
from baa434a6db77809e7172d7811221f7e3d21ac33d (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:
x2go/__init__.py | 4 +-
x2go/backends/__init__.py | 2 +-
x2go/backends/control/__init__.py | 2 +-
x2go/backends/control/_stdout.py | 2 +-
x2go/backends/info/__init__.py | 2 +-
x2go/backends/info/_stdout.py | 2 +-
x2go/backends/printing/__init__.py | 2 +-
x2go/backends/printing/_file.py | 2 +-
x2go/backends/printing/_gconf.py | 2 +-
x2go/backends/printing/_winreg.py | 2 +-
x2go/backends/profiles/__init__.py | 2 +-
x2go/backends/profiles/_file.py | 2 +-
x2go/backends/profiles/_gconf.py | 2 +-
x2go/backends/profiles/_httpsbroker.py | 2 +-
x2go/backends/profiles/_winreg.py | 2 +-
x2go/backends/proxy/__init__.py | 2 +-
x2go/backends/proxy/_nx3.py | 2 +-
x2go/backends/proxy/base.py | 2 +-
x2go/backends/settings/__init__.py | 2 +-
x2go/backends/settings/_file.py | 2 +-
x2go/backends/settings/_gconf.py | 2 +-
x2go/backends/settings/_winreg.py | 2 +-
x2go/backends/terminal/__init__.py | 2 +-
x2go/backends/terminal/_stdout.py | 2 +-
x2go/cache.py | 2 +-
x2go/cleanup.py | 2 +-
x2go/client.py | 2 +-
x2go/defaults.py | 2 +-
x2go/forward.py | 2 +-
x2go/gevent_subprocess.py | 36 ++---
x2go/guardian.py | 2 +-
x2go/inifiles.py | 2 +-
x2go/log.py | 5 +-
x2go/mime_export.py | 279 --------------------------------
x2go/printactions.py | 3 +-
x2go/printqueue.py | 28 ++--
x2go/registry.py | 2 +-
x2go/rforward.py | 2 +-
x2go/session.py | 3 +-
x2go/sftpserver.py | 2 +-
x2go/sshproxy.py | 5 +-
x2go/utils.py | 20 ++-
x2go/x2go_exceptions.py | 2 +-
x2go/xserver.py | 4 +-
44 files changed, 94 insertions(+), 361 deletions(-)
delete mode 100644 x2go/mime_export.py
The diff of changes is:
diff --git a/x2go/__init__.py b/x2go/__init__.py
index 138c5e1..e4623c4 100644
--- a/x2go/__init__.py
+++ b/x2go/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -153,7 +153,7 @@ Contact
"""
__NAME__ = 'python-x2go'
-__VERSION__ = '0.0.30'
+__VERSION__ = '0.0.31'
from gevent import monkey
monkey.patch_all()
diff --git a/x2go/backends/__init__.py b/x2go/backends/__init__.py
index d2ad588..6ae2e10 100644
--- a/x2go/backends/__init__.py
+++ b/x2go/backends/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/control/__init__.py b/x2go/backends/control/__init__.py
index fb83b48..02c4845 100644
--- a/x2go/backends/control/__init__.py
+++ b/x2go/backends/control/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/control/_stdout.py b/x2go/backends/control/_stdout.py
index 52e157b..7ea520d 100644
--- a/x2go/backends/control/_stdout.py
+++ b/x2go/backends/control/_stdout.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/info/__init__.py b/x2go/backends/info/__init__.py
index 4a27bfd..48f01cf 100644
--- a/x2go/backends/info/__init__.py
+++ b/x2go/backends/info/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/info/_stdout.py b/x2go/backends/info/_stdout.py
index 9abbdd1..22a3141 100644
--- a/x2go/backends/info/_stdout.py
+++ b/x2go/backends/info/_stdout.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/printing/__init__.py b/x2go/backends/printing/__init__.py
index 683b424..db5dc76 100644
--- a/x2go/backends/printing/__init__.py
+++ b/x2go/backends/printing/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/printing/_file.py b/x2go/backends/printing/_file.py
index 17c908c..913e738 100644
--- a/x2go/backends/printing/_file.py
+++ b/x2go/backends/printing/_file.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/printing/_gconf.py b/x2go/backends/printing/_gconf.py
index d36aa9a..3078bf1 100644
--- a/x2go/backends/printing/_gconf.py
+++ b/x2go/backends/printing/_gconf.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/printing/_winreg.py b/x2go/backends/printing/_winreg.py
index 23254ee..12f83af 100644
--- a/x2go/backends/printing/_winreg.py
+++ b/x2go/backends/printing/_winreg.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/profiles/__init__.py b/x2go/backends/profiles/__init__.py
index 0da4513..7e2c53f 100644
--- a/x2go/backends/profiles/__init__.py
+++ b/x2go/backends/profiles/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/profiles/_file.py b/x2go/backends/profiles/_file.py
index 5e0c127..37e94a4 100644
--- a/x2go/backends/profiles/_file.py
+++ b/x2go/backends/profiles/_file.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/profiles/_gconf.py b/x2go/backends/profiles/_gconf.py
index 7546466..f630639 100644
--- a/x2go/backends/profiles/_gconf.py
+++ b/x2go/backends/profiles/_gconf.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/profiles/_httpsbroker.py b/x2go/backends/profiles/_httpsbroker.py
index 27e6d87..26ffc45 100644
--- a/x2go/backends/profiles/_httpsbroker.py
+++ b/x2go/backends/profiles/_httpsbroker.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/profiles/_winreg.py b/x2go/backends/profiles/_winreg.py
index 1d3badd..66ba624 100644
--- a/x2go/backends/profiles/_winreg.py
+++ b/x2go/backends/profiles/_winreg.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/proxy/__init__.py b/x2go/backends/proxy/__init__.py
index 7371fa4..a755e65 100644
--- a/x2go/backends/proxy/__init__.py
+++ b/x2go/backends/proxy/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/proxy/_nx3.py b/x2go/backends/proxy/_nx3.py
index 4ce30dd..e7d7a08 100644
--- a/x2go/backends/proxy/_nx3.py
+++ b/x2go/backends/proxy/_nx3.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/proxy/base.py b/x2go/backends/proxy/base.py
index b84e69f..d193e60 100644
--- a/x2go/backends/proxy/base.py
+++ b/x2go/backends/proxy/base.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/settings/__init__.py b/x2go/backends/settings/__init__.py
index 2883edc..e63d281 100644
--- a/x2go/backends/settings/__init__.py
+++ b/x2go/backends/settings/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/settings/_file.py b/x2go/backends/settings/_file.py
index 4dc9b68..eabc439 100644
--- a/x2go/backends/settings/_file.py
+++ b/x2go/backends/settings/_file.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/settings/_gconf.py b/x2go/backends/settings/_gconf.py
index 4b9ff9a..3f3521a 100644
--- a/x2go/backends/settings/_gconf.py
+++ b/x2go/backends/settings/_gconf.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/settings/_winreg.py b/x2go/backends/settings/_winreg.py
index 27c73d9..d1f8906 100644
--- a/x2go/backends/settings/_winreg.py
+++ b/x2go/backends/settings/_winreg.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/terminal/__init__.py b/x2go/backends/terminal/__init__.py
index ff73773..d3307d6 100644
--- a/x2go/backends/terminal/__init__.py
+++ b/x2go/backends/terminal/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/backends/terminal/_stdout.py b/x2go/backends/terminal/_stdout.py
index a021b6b..03d83d1 100644
--- a/x2go/backends/terminal/_stdout.py
+++ b/x2go/backends/terminal/_stdout.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/cache.py b/x2go/cache.py
index fd24d03..2a41b8c 100644
--- a/x2go/cache.py
+++ b/x2go/cache.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/cleanup.py b/x2go/cleanup.py
index ace141e..6894847 100644
--- a/x2go/cleanup.py
+++ b/x2go/cleanup.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/client.py b/x2go/client.py
index 46a96f2..a9fb1b3 100644
--- a/x2go/client.py
+++ b/x2go/client.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
diff --git a/x2go/defaults.py b/x2go/defaults.py
index 3538b23..dd567fe 100644
--- a/x2go/defaults.py
+++ b/x2go/defaults.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/forward.py b/x2go/forward.py
index 4e258a9..df4a8a9 100644
--- a/x2go/forward.py
+++ b/x2go/forward.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/gevent_subprocess.py b/x2go/gevent_subprocess.py
index 6f462f1..c483f75 100644
--- a/x2go/gevent_subprocess.py
+++ b/x2go/gevent_subprocess.py
@@ -1,6 +1,23 @@
# -*- coding: utf-8 -*-
-# found here: http://groups.google.com/group/gevent/browse_thread/thread/dba1a5d29e0a60ff
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# Python X2go is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Python X2go is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# gevent_subprocess was found here: http://groups.google.com/group/gevent/browse_thread/thread/dba1a5d29e0a60ff
# Mark Visser <mjmvisser at gmail.com>
###
@@ -19,23 +36,6 @@
### for cases in that it is used in context of the X2go project.
###
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
-#
-# Python X2go is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# Python X2go is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the
-# Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
-
"""Implementation of the standard :mod:`subprocess` module that spawns greenlets"""
import errno
diff --git a/x2go/guardian.py b/x2go/guardian.py
index f10c39a..a068586 100644
--- a/x2go/guardian.py
+++ b/x2go/guardian.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/inifiles.py b/x2go/inifiles.py
index 88ca068..3186d2d 100644
--- a/x2go/inifiles.py
+++ b/x2go/inifiles.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/log.py b/x2go/log.py
index db76d1b..17ef354 100644
--- a/x2go/log.py
+++ b/x2go/log.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -87,6 +87,9 @@ class X2goLogger(object):
if tag is None:
tag = self.tag
if loglevel & self.loglevel:
+
+ msg = msg.replace('\n', ' ')
+
if self.tag is not None:
self.destination.write('%s[%s] (%s) %s: %s\n' % (self.name, self.progpid, tag, self._loglevel_NAMES[loglevel].upper(), msg))
else:
diff --git a/x2go/mime_export.py b/x2go/mime_export.py
deleted file mode 100644
index 7302ca0..0000000
--- a/x2go/mime_export.py
+++ /dev/null
@@ -1,279 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
-#
-# Python X2go is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# Python X2go is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the
-# Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
-
-"""\
-STILL UNDOCUMENTED
-
-"""
-__NAME__ = 'x2gomimetypes-pylib'
-
-# modules
-import sys, os, shutil, copy
-import subprocess
-import types
-import threading
-import gevent
-import inifiles
-import cStringIO
-import ConfigParser
-
-if sys.platform == 'win32':
- import win32api
-
-
-# Python X2go modules
-import log
-import defaults
-# we hide the default values from epydoc (that's why we transform them to _UNDERSCORE variables)
-from defaults import X2GO_CLIENTPRINTING_DEFAULTS as _X2GO_CLIENTPRINTING_DEFAULTS
-from defaults import X2GO_PRINTING_CONFIGFILES as _X2GO_PRINTING_CONFIGFILES
-import utils
-import inifiles
-
-class X2goMimeExportAction(object):
-
- __name__ = 'MIME'
- __description__ = 'Execute a command depending on an incoming file\'s MIME type'
-
- def __init__(self, logger=None, loglevel=log.loglevel_DEFAULT):
- """\
- STILL UNDOCUMENTED
-
- @param logger: you can pass an L{X2goLogger} object to the
- L{X2goMimeExportAction} constructor
- @type logger: C{instance}
- @param loglevel: if no L{X2goLogger} object has been supplied a new one will be
- constructed with the given loglevel
- @type loglevel: C{int}
-
- """
- if logger is None:
- self.logger = log.X2goLogger(loglevel=loglevel)
- else:
- self.logger = copy.deepcopy(logger)
- self.logger.tag = __NAME__
-
- def do_execute(self, mime_file, mime_type_dir, ):
- """\
- Perform the defined print action (doing nothing in L{X2goPrintAction} parent class).
-
- @param mime_file: name of the incoming file
- @type mime_file: C{str}
- @param mime_type_dir: location of the X2go client's spool directory for incoming MIME files
- @type mime_type_dir: C{str}
-
- """
- if sys.platform == "win32":
- self.logger('processing an incoming MIME file with Python\'s os.startfile(): %s' % mime_file, loglevel=log.loglevel_DEBUG)
- os.startfile(mime_file)
- else:
- cmd_line = [ 'xdg-open', mime_file, ]
- self.logger('processing an incoming MIME file with command: %s' % ' '.join(cmd_line), loglevel=log.loglevel_DEBUG)
- p = subprocess.Popen(cmd_line, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, env=_PRINT_ENV)
- # this is nasty!!!!
- self.logger('giving PDF viewer 20s to get the PDF file %s loaded' % _hr_filename, loglevel=log.loglevel_DEBUG)
- gevent.sleep(20)
- os.remove(mime_file)
-
-
-class X2goMimeExportQueue(threading.Thread):
- """\
- STILL UNDOCUMENTED
-
- """
- print_action = None
-
- spooldir = None
- active_jobs = {}
- job_history = []
-
- def __init__(self, logger=None, loglevel=log.loglevel_DEFAULT):
- """\
- STILL UNDOCUMENTED
-
- @param logger: you can pass an L{X2goLogger} object to the
- L{X2goMimeExportQueue} constructor
- @type logger: C{instance}
- @param loglevel: if no L{X2goLogger} object has been supplied a new one will be
- constructed with the given loglevel
- @type loglevel: C{int}
-
- """
- if logger is None:
- self.logger = log.X2goLogger(loglevel=loglevel)
- else:
- self.logger = copy.deepcopy(logger)
- self.logger.tag = __NAME__
-
- threading.Thread.__init__(self)
- self.daemon = True
- self._accept_jobs = True
-
- def __del__(self):
- self.stop_thread()
-
- def pause(self):
- """\
- Prevent acceptance of new incoming MIME type files. The processing of MIME type files
- that are currently still active will be completed, though.
-
- """
- if self._accept_jobs == True:
- self._accept_jobs = False
- self.logger('paused thread: %s' % repr(self), loglevel=log.loglevel_DEBUG)
-
- def resume(self):
- """\
- Resume operation of the X2go MIME type thread and continue accepting new incoming
- MIME type files.
-
- """
- if self._accept_jobs == False:
- self._accept_jobs = True
- self.logger('resumed thread: %s' % repr(self), loglevel=log.loglevel_DEBUG)
-
- def stop_thread(self):
- """\
- Stops this L{X2goMimeExportQueue} thread completely.
-
- """
- self.pause()
- self._keepalive = False
- self.logger('stopping thread: %s' % repr(self), loglevel=log.loglevel_DEBUG)
-
- @property
- def _incoming_mime_files(self):
-
- l = os.listdir(self.mime_type_dir)
- mime_files = []
- for _job_file in job_files:
- j = open(os.path.join(self.spool_dir, _job_file), 'r')
- content = j.read()
- (pdf_filename, job_title) = content.split('\n')[0:2]
- j.close()
- jobs.append((_job_file, pdf_filename, job_title))
- return [ j for j in jobs if j[1] not in self.active_jobs.keys() ]
-
- def set_print_action(self, print_action, **kwargs):
- """\
- Modify the print action of this L{X2goPrintQueue} thread during runtime. The
- change of print action will be valid for the next incoming print job.
-
- """
- if print_action in defaults.X2GO_PRINT_ACTIONS.keys():
- print_action = defaults.X2GO_PRINT_ACTIONS[print_action]
-
- if print_action in defaults.X2GO_PRINT_ACTIONS.values():
- self.print_action = print_action(**kwargs)
-
- def run(self):
- """\
- Start this L{X2goPrintQueue} thread...
-
- """
- self.logger('starting print queue thread: %s' % repr(self), loglevel=log.loglevel_DEBUG)
-
- self._keepalive = True
- while self._keepalive:
-
- while self._accept_jobs:
-
- if self._incoming_print_jobs:
-
- for _job in self._incoming_print_jobs:
- self.logger('incoming print job: %s' % _job[1], loglevel=log.loglevel_DEBUG)
- _new_printjob_thread = X2goPrintJob(target=x2go_printjob_handler,
- kwargs={
- 'job_file': _job[0],
- 'pdf_file': _job[1],
- 'job_title': _job[2],
- 'print_action': self.print_action,
- 'parent_thread': self,
- 'logger': self.logger,
- }
- )
- self.active_jobs['%s' % _job[1]] = _new_printjob_thread
- _new_printjob_thread.start()
-
- gevent.sleep(3)
-
- gevent.sleep(1)
-
-
-def x2go_printjob_handler(job_file=None, pdf_file=None, job_title=None, print_action=None, parent_thread=None, logger=None, ):
- """\
- This function is called as a handler function for each incoming X2go print job
- represented by the class L{X2goPrintJob}.
-
- The handler function will (re-)read the »printing« configuration file (if no
- explicit C{print_action} is passed to this function...). It then will
- execute the C{<print_action>.do_print()} command.
-
- @param pdf_file: PDF file name as placed in to the X2go spool directory
- @type pdf_file: C{str}
- @param job_title: human readable print job title
- @type job_title: C{str}
- @param print_action: an instance of either of the possible C{X2goPrintActionXXX} classes
- @type print_action: C{X2goPrintActionXXX} nstance
- @param parent_thread: the L{X2goPrintQueue} thread that actually created this handler's L{X2goPrintJob} instance
- @type parent_thread: C{instance}
- @param logger: the L{X2goPrintQueue}'s logging instance
- @type logger: C{instance}
-
- """
- if print_action is None:
- _printing = X2goClientPrinting(logger=logger)
- print_action = _printing.print_action
-
- logger('action for printing is: %s' % print_action, loglevel=log.loglevel_DEBUG)
- print_action.do_print(pdf_file=os.path.join(parent_thread.spool_dir, pdf_file),
- job_title=job_title,
- spool_dir=parent_thread.spool_dir,
- )
-
- logger('removing print job files for %s' % pdf_file, loglevel=log.loglevel_DEBUG)
- os.remove(os.path.join(parent_thread.spool_dir, job_file))
- os.remove(os.path.join(parent_thread.spool_dir, pdf_file))
-
- del parent_thread.active_jobs['%s' % pdf_file]
- parent_thread.job_history.append(pdf_file)
-
-
-class X2goPrintJob(threading.Thread):
- """\
- For each X2go print job we create a sub-thread that let's
- the print job be processed in the background.
-
- As a handler for this class the function L{x2go_printjob_handler()}
- is used.
-
- """
- def __init__(self, **kwargs):
- """\
- Construct the X2go print job thread...
-
- All parameters (**kwargs) are passed through to the constructor
- of C{threading.Thread()}.
-
- """
- threading.Thread.__init__(self, **kwargs)
- self.daemon = True
-
-
diff --git a/x2go/printactions.py b/x2go/printactions.py
index 6de16b7..4b8c66b 100644
--- a/x2go/printactions.py
+++ b/x2go/printactions.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -287,7 +287,6 @@ class X2goPrintActionPRINT(X2goPrintAction):
pdf_file,
None,
None,
- #os.path.dirname(pdf_file),
0,
)
else:
diff --git a/x2go/printqueue.py b/x2go/printqueue.py
index c0c7a2d..647f879 100644
--- a/x2go/printqueue.py
+++ b/x2go/printqueue.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -34,8 +34,9 @@ import threading
import gevent
# Python X2go modules
-import log
import defaults
+import utils
+import log
# we hide the default values from epydoc (that's why we transform them to _UNDERSCORE variables)
from backends.printing import X2goClientPrinting as _X2goClientPrinting
@@ -44,16 +45,6 @@ if defaults.X2GOCLIENT_OS != 'Windows':
from defaults import X2GO_PRINTING_FILENAME as _X2GO_PRINTING_FILENAME
-def _patiently_remove_file(_dir, _file):
- _not_removed = True
- while _not_removed:
- try:
- os.remove(os.path.join(_dir, _file))
- _not_removed = False
- except WindowsError:
- # file is probably locked
- gevent.sleep(5)
-
class X2goPrintQueue(threading.Thread):
"""\
@@ -78,6 +69,8 @@ class X2goPrintQueue(threading.Thread):
@param print_action_args: depending of the chosen C{print_action} this dictionary may contain different
values; the C{print_action_args} will be passed on to the X2go print action instance constructor, so
refer to either of these: L{X2goPrintActionPDFVIEW}, L{X2goPrintActionPRINT} et al.
+ @param client_instance: the underlying L{X2goClient} instance
+ @type client_instance: C{instance}
@param printing_backend: the client printing configuration backend class
@type printing_backend: C{instance}
@param logger: you can pass an L{X2goLogger} object to the
@@ -246,14 +239,19 @@ def x2go_printjob_handler(job_file=None, pdf_file=None, job_title=None, print_ac
logger('removing print job files for %s' % pdf_file, loglevel=log.loglevel_DEBUG)
- _patiently_remove_file(parent_thread.spool_dir, job_file)
+ utils.patiently_remove_file(parent_thread.spool_dir, job_file)
logger('removed print job file %s' % job_file, loglevel=log.loglevel_DEBUG)
- _patiently_remove_file(parent_thread.spool_dir, pdf_file)
+ utils.patiently_remove_file(parent_thread.spool_dir, pdf_file)
logger('removed print pdf file %s' % pdf_file, loglevel=log.loglevel_DEBUG)
-
+
del parent_thread.active_jobs['%s' % pdf_file]
parent_thread.job_history.append(pdf_file)
+ # in case we print a lot we do not want to risk an endlessly growing
+ # print job history
+ if len(parent_thread.job_history) > 100:
+ parent_thread.job_history = parent_thread.job_history[-100:]
+
class X2goPrintJob(threading.Thread):
"""\
diff --git a/x2go/registry.py b/x2go/registry.py
index b028f7b..3f0a423 100644
--- a/x2go/registry.py
+++ b/x2go/registry.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/rforward.py b/x2go/rforward.py
index 3422804..93fa5a0 100644
--- a/x2go/rforward.py
+++ b/x2go/rforward.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/session.py b/x2go/session.py
index 2f2ea79..5356acb 100644
--- a/x2go/session.py
+++ b/x2go/session.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -817,3 +817,4 @@ class X2goSession(object):
"""
if self.has_terminal_session():
self.terminal_session.release_proxy()
+ self.terminal_session = None
diff --git a/x2go/sftpserver.py b/x2go/sftpserver.py
index 89300f5..7e6af39 100644
--- a/x2go/sftpserver.py
+++ b/x2go/sftpserver.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
# The Python X2go sFTPServer code was originally written by Richard Murri,
# for further information see his website: http://www.richardmurri.com
diff --git a/x2go/sshproxy.py b/x2go/sshproxy.py
index c566543..d194262 100644
--- a/x2go/sshproxy.py
+++ b/x2go/sshproxy.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -79,7 +79,8 @@ class X2goSSHProxy(paramiko.SSHClient, threading.Thread):
if sshproxy_host:
if sshproxy_host.find(':'):
self.hostname = sshproxy_host.split(':')[0]
- self.port = int(sshproxy_host.split(':')[1])
+ try: self.port = int(sshproxy_host.split(':')[1])
+ except IndexError: pass
else:
self.hostname = sshproxy_host
if sshproxy_user: self.username = sshproxy_user
diff --git a/x2go/utils.py b/x2go/utils.py
index a5460b4..37eca39 100644
--- a/x2go/utils.py
+++ b/x2go/utils.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -31,9 +31,9 @@ import copy
import paramiko
# Python X2go modules
+from defaults import X2GOCLIENT_OS as _X2GOCLIENT_OS
+from defaults import X2GO_SESSIONPROFILE_DEFAULTS as _X2GO_SESSIONPROFILE_DEFAULTS
from defaults import _pack_methods_nx3
-from defaults import X2GO_SESSIONPROFILE_DEFAULTS
-
def is_in_nx3packmethods(method):
@@ -111,7 +111,7 @@ def _convert_SessionProfileOptions_2_SessionParams(_options):
_params = copy.deepcopy(_options)
# get rid of unknown session profile options
- _known_options = X2GO_SESSIONPROFILE_DEFAULTS.keys()
+ _known_options = _X2GO_SESSIONPROFILE_DEFAULTS.keys()
for p in _params.keys():
if p not in _known_options:
del _params[p]
@@ -262,3 +262,15 @@ def known_encodings():
return _encname_list
+def patiently_remove_file(_dir, _file):
+ if _X2GOCLIENT_OS != 'Windows':
+ from x2go_exceptions import WindowsError
+ _not_removed = True
+ while _not_removed:
+ try:
+ os.remove(os.path.join(_dir, _file))
+ _not_removed = False
+ except WindowsError:
+ # file is probably locked
+ gevent.sleep(5)
+
diff --git a/x2go/x2go_exceptions.py b/x2go/x2go_exceptions.py
index 8b7bf97..73faf76 100644
--- a/x2go/x2go_exceptions.py
+++ b/x2go/x2go_exceptions.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/x2go/xserver.py b/x2go/xserver.py
index 2e92a63..4da260e 100644
--- a/x2go/xserver.py
+++ b/x2go/xserver.py
@@ -1,8 +1,6 @@
# -*- coding: utf-8 -*-
-# -*- coding: utf-8 -*-
-
-# Copyright (C) 2010 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
#
# Python X2go is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
hooks/post-receive
--
python-x2go.git (Python X2Go Client API)
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 "python-x2go.git" (Python X2Go Client API).
More information about the x2go-commits
mailing list