This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository python-x2go. from 7cb2ca7 Handle duplicate profile names gracefully (i.e. append a " (1)", " (2)", ... to the session profile name). (Fixes: #500). new 2ff5f60 Support server-side Telekinesis versions that ship their own (teki-)sftpserver. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: debian/changelog | 2 ++ x2go/telekinesis.py | 26 +++++++++++++++++++------- 2 files changed, 21 insertions(+), 7 deletions(-) -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/python-x2go.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository python-x2go. commit 2ff5f60484743e2ecd831251f7aff85ad1ef77a1 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Oct 1 11:01:37 2014 +0200 Support server-side Telekinesis versions that ship their own (teki-)sftpserver. --- debian/changelog | 2 ++ x2go/telekinesis.py | 26 +++++++++++++++++++------- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/debian/changelog b/debian/changelog index c8be003..c82ca2d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -92,6 +92,8 @@ python-x2go (0.5.0.0-0x2go1) UNRELEASED; urgency=low - Don't use compression on TeKi sshfs mounts. - Handle duplicate profile names gracefully (i.e. append a " (1)", " (2)", ... to the session profile name). (Fixes: #500). + - Support server-side Telekinesis versions that ship their own + (teki-)sftpserver. * debian/control: + Add dependencies: python-requests, python-simplejson. * python-x2go.spec: diff --git a/x2go/telekinesis.py b/x2go/telekinesis.py index d649c37..1bedf6b 100644 --- a/x2go/telekinesis.py +++ b/x2go/telekinesis.py @@ -326,13 +326,25 @@ class X2GoTelekinesisClient(threading.Thread): if e.errno == 17: # file exists pass - telekinesis_sshfs_command = ['sshfs', - '-o', 'compression=no', - '-o', 'follow_symlinks', - '-o', 'directport={tekidata_port}'.format(tekidata_port=self.local_tekidata_port), - '127.0.0.1:{remote_home}/.x2go/C-{sid}/telekinesis/remote/'.format(remote_home=self.session_instance.get_remote_home(), sid=self.session_info), - '/tmp/.x2go-{local_user}/telekinesis/S-{sid}/'.format(local_user=_CURRENT_LOCAL_USER, sid=self.session_info), - ] + if self.session_instance.has_server_feature('X2GO_TELEKINESIS_TEKISFTPSERVER'): + # the Perl-based SFTP-Server shipped with Telekinesis Server (teki-sftpserver) supports + # chroot'ing. Let's use this by default, if available. + telekinesis_sshfs_command = ['sshfs', + '-o', 'compression=no', + '-o', 'follow_symlinks', + '-o', 'directport={tekidata_port}'.format(tekidata_port=self.local_tekidata_port), + '127.0.0.1:/', + '/tmp/.x2go-{local_user}/telekinesis/S-{sid}/'.format(local_user=_CURRENT_LOCAL_USER, sid=self.session_info), + ] + else: + # very first Telekinesis Server implementation used OpenSSH's sftp-server + # that lacks/lacked chroot capability + telekinesis_sshfs_command = ['sshfs', + '-o', 'compression=no', + '-o', 'follow_symlinks', + '-o', 'directport={tekidata_port}'.format(tekidata_port=self.local_tekidata_port), + '127.0.0.1:{remote_home}/.x2go/C-{sid}/telekinesis/remote/'.format(remote_home=self.session_instance.get_remote_home(), sid=self.session_info), + '/tmp/.x2go-{local_user}/telekinesis/S-{sid}/'.format(local_user=_CURRENT_LOCAL_USER, sid=self.session_info), self.logger('forking threaded subprocess: %s' % " ".join(telekinesis_sshfs_command), loglevel=log.loglevel_DEBUG) self.telekinesis_sshfs = subprocess.Popen(telekinesis_sshfs_command, env=self.TEKICLIENT_ENV, -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/python-x2go.git