From unknown Sat May 16 05:52:16 2026
X-Loop: owner@bugs.x2go.org
Subject: Bug#258: Clipboard mode configuration via X2Go Client session profiles
Reply-To: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>, 258@bugs.x2go.org
Resent-From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
Resent-To: x2go-dev@lists.x2go.org
Resent-CC: X2Go Developers <x2go-dev@lists.x2go.org>
X-Loop: owner@bugs.x2go.org
Resent-Date: Sun, 29 Jun 2014 15:05:02 +0000
Resent-Message-ID: <handler.258.B258.140405408120890@bugs.x2go.org>
Resent-Sender: owner@bugs.x2go.org
X-X2Go-PR-Message: followup 258
X-X2Go-PR-Package: x2goclient
X-X2Go-PR-Keywords: security
Received: via spool by 258-submit@bugs.x2go.org id=B258.140405408120890
          (code B ref 258); Sun, 29 Jun 2014 15:05:02 +0000
Received: (at 258) by bugs.x2go.org; 29 Jun 2014 15:01:21 +0000
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on
	ymir.das-netzwerkteam.de
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham
	version=3.3.2
Received: from freya.das-netzwerkteam.de (freya.das-netzwerkteam.de [88.198.48.199])
	by ymir.das-netzwerkteam.de (Postfix) with ESMTPS id BE13D5DB53
	for <258@bugs.x2go.org>; Sun, 29 Jun 2014 17:01:20 +0200 (CEST)
Received: from grimnir.das-netzwerkteam.de (grimnir.das-netzwerkteam.de [78.46.204.98])
	by freya.das-netzwerkteam.de (Postfix) with ESMTPS id 5454F3A53;
	Sun, 29 Jun 2014 17:01:20 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
	by grimnir.das-netzwerkteam.de (Postfix) with ESMTP id 2E95F3C703;
	Sun, 29 Jun 2014 17:01:20 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at grimnir.das-netzwerkteam.de
Received: from grimnir.das-netzwerkteam.de ([127.0.0.1])
	by localhost (grimnir.das-netzwerkteam.de [127.0.0.1]) (amavisd-new, port 10024)
	with ESMTP id jbsfXEjr1y1J; Sun, 29 Jun 2014 17:01:20 +0200 (CEST)
Received: from grimnir.das-netzwerkteam.de (localhost [127.0.0.1])
	by grimnir.das-netzwerkteam.de (Postfix) with ESMTPS id EC48E3BA23;
	Sun, 29 Jun 2014 17:01:19 +0200 (CEST)
Received: from p4FCFCF33.dip0.t-ipconnect.de (p4FCFCF33.dip0.t-ipconnect.de
 [79.207.207.51]) by mail.das-netzwerkteam.de (Horde Framework) with HTTP;
 Sun, 29 Jun 2014 15:01:19 +0000
Date: Sun, 29 Jun 2014 15:01:19 +0000
Message-ID: <20140629150119.Horde.MLdrTEOqKCSTi_kUqzY0cA2@mail.das-netzwerkteam.de>
From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
To: o.schneyder@phoca-gmbh.de
Cc: 258@bugs.x2go.org
User-Agent: Internet Messaging Program (IMP) H5 (6.1.7)
Accept-Language: en,de
Organization: DAS-NETZWERKTEAM
X-Originating-IP: 79.207.207.51
X-Remote-Browser: Mozilla/5.0 (X11; Linux x86_64; rv:30.0) Gecko/20100101
 Firefox/30.0 Iceweasel/30.0
Content-Type: multipart/signed; boundary="=_8G8WNFFfC1mLt_HxrNZj9Q3";
 protocol="application/pgp-signature"; micalg=pgp-sha1
MIME-Version: 1.0

This message is in MIME format and has been PGP signed.

--=_8G8WNFFfC1mLt_HxrNZj9Q3
Content-Type: text/plain; charset=UTF-8; format=flowed; DelSp=Yes
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hi Alex,

I have recently added means to set the clipboard (security) mode in=20=20
X2Go=20sessions. That there is no way of restricting clipboard=20=20
functionality=20in X2Go sessions has been quite an issue a while back on=20=
=20
our=20mailing list and on the Debian bug tracker.

So, what I have done...


NX:

First, a patch for NX was necessary [1]. This patch adds the clipboard=20=
=20
NX=20option to nxagent/x2goagent. There was some code for that already=20=
=20
present=20in NX, but it looked like the feature never got finished (or=20=
=20
other).


X2Go=20Server:

Second, I added a new cmdline arg to x2gostartagent and=20=20
x2goresume-session=20[2]. Clients, that want to set the clipboard mode,=20=
=20
have=20to send "both", "server", "client", or "none" as 10th cmdline=20=20
parameter=20to x2gostartagent and as 8th cmdline parameter to=20=20
x2goresume-session.=20If the client does not send that field, X2Go=20=20
Server=20uses the default mode ("both").

If you want to test if an X2Go Server supports the clipboard mode=20=20
feature,=20you can query

   $ x2gofeature X2GO_CLIPBOARD_MODES
   ok


Client-side:

Third, and this is what this mail is about, X2Go Client needs to send=20=20
the=20clipboard mode to the server (x2gostartagent, x2goresume-session).=20=
=20
In=20Python X2Go / PyHoca-GUI, I have already implemented this.

Python X2Go stores the clipboard information in ~/.x2goclient/sessions=20=
=20
under=20the option name "clipboard=3D<str>" where its values can be=20=20
"both",=20"server", "client", "none".

Relevant commits are: [3], [4], [5].

In X2Go Client's session profile window, the clipboard mode has to be=20=20
made=20configurable.

Whenever you have time, can you take a look at that? Thanks.

light+love,
Mike



NX:

[1]=20=20
http://code.x2go.org/gitweb?p=3Dnx-libs.git;a=3Dcommitdiff;h=3D0cf283dca109=
ff29e18cd36fdbd2e51dadd52772;hp=3Dc62b81304ca9906fe608f7387025162107d8d8ab

X2Go Server:

[2]=20=20
http://code.x2go.org/gitweb?p=3Dx2goserver.git;a=3Dcommitdiff;h=3D669b3aabb=
8f574a2bb30d415fb38b1ccf6837f0d

Python X2Go (combine the two commits to make sense):

[3]=20=20
http://code.x2go.org/gitweb?p=3Dpython-x2go.git;a=3Dcommitdiff;h=3D08ff7423=
34427cbe52ee02c354b9d73c53459f2e
[4]=20=20
http://code.x2go.org/gitweb?p=3Dpython-x2go.git;a=3Dcommitdiff;h=3D2aa779ef=
e39a045e6492ff891e5c5ce34393d6fc

PyHoca-GUI (session profile manager):

[5]=20=20
http://code.x2go.org/gitweb?p=3Dpyhoca-gui.git;a=3Dcommitdiff;h=3Dd9d413b00=
fc92e35e4c9f752c853ba72c1399384
--=20

DAS-NETZWERKTEAM
mike=20gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.x=
fb

--=_8G8WNFFfC1mLt_HxrNZj9Q3
Content-Type: application/pgp-signature
Content-Description: Digitale PGP-Signatur
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABAgAGBQJTsCo/AAoJEJr0azAldxsxakIP/0TtacXSIsHVjC/qvbLW4s/g
sMRbAzCbiikeqvJHX2y7ywrjzFCU/qYilc/ivtJEeNhv6qDNoB4rtCf3xwNADHEc
AZ5LvlwWFP+Dztkf5VxYkgml1OQlxYri/CP4Hhs+r+IwBZ+Nz6V2LC6iakNlGgNE
L2cGYNX9qLPX3Q3y4fXYU2JwiqiG3aEcP9G1SaWmLklo01lsJPyVtivbtdY24byK
Oeq1AIfDruwrpS4lwN6xOhmXMirYh54iyCLRangHI6EcZ+duiINiQznIhI1dp2VW
aD0aR0S61YFjDi601FT4B2hJGP3gIofDudB1TFCUZTx7Xk5JYlSbdrHgLoD5YR3W
5qW61j2eB4lzmKwsiCoeF2XsWmy7hicMcAljF+HbmStcd2Iahfoy+DWEpvV2x69/
teZilmqXFTZTeq2j1bSK7j5cdCVzBPX2T48osZtNMGUOzKEvvTDPHrP4b7x5FBDe
GxKzW6lssVNItZr3nSz96ipCXSkCPzg4CEf4Yh+9jYxOM6U+A3uzVEDERSdK3PpX
I5lF6+EVZfvKyT43bmJqathjc9VR0yC/9F+/H2nFa85csTmyBIWlJH2cia2xjywv
Z3Lq6y9eiVT67OQG/Q3jTUXkxdj/EAaU8/LFAocHvuqbKsvKPfFmDjbnAtieGEVn
yPO0mYd008eWiUrF6qp3
=oG0z
-----END PGP SIGNATURE-----

--=_8G8WNFFfC1mLt_HxrNZj9Q3--
