www.cendio.com
Bug 2289 - SeamlessRDP session sharing
: SeamlessRDP session sharing
Status: CLOSED FIXED
: ThinLinc
| rdesktop (deprecated)
: 1.5.0
: PC Linux
: P2 Enhancement
: 4.1.0
Assigned To:
:
:
:
: 4499
  Show dependency treegraph
 
Reported: 2006-12-18 09:03 by
Modified: 2013-06-27 14:04 (History)
Acceptance Criteria:


Attachments
rdesktop.patch (10.89 KB, patch)
2006-12-18 09:04, Peter Åstrand
Details
seamless.patch (931 bytes, patch)
2006-12-18 09:05, Peter Åstrand
Details


Note

You need to log in before you can comment on or make changes to this bug.


Description From cendio 2006-12-18 09:03:23
Currently, we create a new WTS session for each new application launched by
tl-run-winapp-seamless. Instead, we could have new applications launched inside
the current WTS session. That would minimize the resource usage and the WTS and
perhaps also give better integration, say, with drag-and-drop. 

I've presented this idea on the rdesktop mailing list some time ago. Now, Lloyd
Hazlett <sf@fontis.com.au> has announced that he and Peter Spiller have
implemented this. We should evaluate this.
------- Comment #1 From cendio 2006-12-18 09:04:16 -------
Created an attachment (id=224) [details]
rdesktop.patch

Patch from Lloyd Hazlett <sf@fontis.com.au>. 
------- Comment #2 From cendio 2006-12-18 09:05:32 -------
Created an attachment (id=225) [details]
seamless.patch

Patch from Lloyd Hazlett <sf@fontis.com.au>. 
------- Comment #3 From cendio 2006-12-19 10:34:45 -------
For 1.6.0, at least check if this patch is nice enough to be accepted into the
rdesktop CVS. 
------- Comment #4 From cendio 2007-04-26 15:54:22 -------
This functionality is available from https://www.fontis.com.au/rdesktop. 
------- Comment #5 From cendio 2010-09-06 08:55:10 -------
One good thing about this feature is that it would enhance app publishing from
single user systems such as XP: You would be able to invoke
tl-run-winapp-seamless multiple times. This is currently not possible. 
------- Comment #6 From cendio 2012-08-29 09:12:45 -------
Timest. includes verify and incooperate the patches into rdesktop/seamless
shell with functionality as is and update our rdesktop scripts within thinlinc
to work
with the new feature.
------- Comment #7 From cendio 2013-01-22 08:20:23 -------
The patches lacks some fundamental parts so we had to redesign this
implementation. Breaking it down into 2 parts: IPC for communication between
two rdesktop processes and extension to SeamlessRDP for spawning new processes.

This will greatly increase the time estimation of this bug, the IPC should be
asynchronous to prevent blocking in rdesktop codebase. The IPC needs a protocol
specification and a proper IPC server implementation.

Seamless RDP protocol needs to be extended with a new SPAWN command, also we
need to ensure that proper text encoding are passed though the callchain:

rdesktop commandline -> IPC -> Seamless RDP proto -> seamlesrdpshell.exe ->
CreateProcess()
------- Comment #8 From cendio 2013-01-24 14:43:23 -------
Initial implementation of seamless connection sharing is now comitted
upstream, r1688/r1689
------- Comment #9 From cendio 2013-02-05 12:46:13 -------
Vendordropped into ThinLinc in commit r26505.
------- Comment #10 From cendio 2013-02-05 12:55:40 -------
tl-run-winapp-seamless updated in commit r26506 to support the
new meaning of argument -A and -s of rdesktop command.
------- Comment #11 From cendio 2013-02-05 13:10:38 -------
Vendordrop of seamlessrdp commited in r26510.
------- Comment #12 From cendio 2013-02-05 13:25:13 -------
Upstream commit r1696 documents the new seamless protocol command SPAWN added
for realizing the seamless connection sharing.
------- Comment #13 From cendio 2013-02-26 11:29:45 -------
http://www.cendio.com/seamlessrdp/ needs to be updated so that the
example matches the new commandline argument layout.
------- Comment #14 From cendio 2013-04-04 11:00:26 -------
(In reply to comment #13)
> http://www.cendio.com/seamlessrdp/ needs to be updated so that the
> example matches the new commandline argument layout.

Setting this bug as resolved, and at testing period lift this up so
we can make the proper changes of external web closer to the actual
release.
------- Comment #15 From cendio 2013-04-11 11:12:12 -------
Make tl-run-winapp-seamless to be able to start a in background without
any application.

Commited in 27031
------- Comment #16 From cendio 2013-06-17 16:53:14 -------
Basic functionality works fine:

 - Spawning a program from the first rdesktop
 - Spawning more applications from a second rdesktop
 - Simple arguments

Also trying to torture the encodings seem to show no bugs:

 - Gave ☭ as an argument and it properly showed up in wordpad.exe
 - Space sort-of works. It doesn't seem to be have any different from before at
least.
 - Locale is respected for argument encoding (tried latin1 and utf-8)
 - Embedded linefeed or carriage return
 - Embedded \0 (not sure how it sorted this out)

Side note: Internet Explorer doesn't seem to like SeamlessRDP mode. It just
keeps on crashing.
------- Comment #17 From cendio 2013-06-17 16:54:41 -------
Broken UTF-8 is causing issues though. Ran the following:

bash-3.2$ tl-run-winapp-seamless notepad.exe `echo -e '\xf0\x3a\x3a'`

Which results in a blank dialog from SeamlessRDP Shell.

At the very least, we need to fix the error message.
------- Comment #18 From cendio 2013-06-18 13:25:16 -------
(In reply to comment #17)
> Broken UTF-8 is causing issues though. Ran the following:
> 
> bash-3.2$ tl-run-winapp-seamless notepad.exe `echo -e '\xf0\x3a\x3a'`
> 
> Which results in a blank dialog from SeamlessRDP Shell.
> 
> At the very least, we need to fix the error message.

Fix commited upstream 1714, and in vendordrop commit 27534.
------- Comment #19 From cendio 2013-06-27 14:04:14 -------
(In reply to comment #18)
> (In reply to comment #17)
> > Broken UTF-8 is causing issues though. Ran the following:
> > 
> > bash-3.2$ tl-run-winapp-seamless notepad.exe `echo -e '\xf0\x3a\x3a'`
> > 
> > Which results in a blank dialog from SeamlessRDP Shell.
> > 
> > At the very least, we need to fix the error message.
> 
> Fix commited upstream 1714, and in vendordrop commit 27534.

Tested and seamless rdp reports that a invalid utf-8 sequence was provided in
the commandline which is a good feedback instead of a blank masgbox.