You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Teleport appears to enforce a 1MB limit for copy-pasting text. If this limit is hit, the following error is returned:
Assuming text gets UCS-2/UTF-16 encoded, this limit is ~500.000 characters.
What problem does this solve?
I tried to copy-paste an SQL dump backup over Teleport-RDP. This works when using RDP directly, but fails when using Teleport. Saving the clipboard contents to a file and saving it as utf16 with notepad.exe, it's ~4MB large.
Thanks for filing this. Here's the nerdy explanation for those who care about the details:
Our protocol as it exists today isn't suitable for payloads as large as 2GB. A lot of remote desktop protocols (Teleport's included) use a pretty naive approach where any time data on the remote machine is copied (added to the clipboard), that data is sent to the client.
Microsoft RDP has an optimization called delayed rendering, so when you copy 2GB of data in a session, instead of sending all 2GB to the client, you send the client a notification which says that 2GB of data is available. This way, if the client never needs to actually paste the data then no network bandwidth was wasted moving those 2GB of data around, but if the client does need to paste the data it must make another request to fetch it.
This delayed rendering approach works great for Microsoft, but it requires some low-level integration on the RDP client side (you've got to be able to intercept system-level paste events). Our browser-based client is not capable of intercepting paste events that occur outside the browser, so delayed rendering is not an option for us.
tl;dr we probably won't be able to support 2GB in the browser based client, but we can probably push things a little further than 1MB. We are also working on adding desktop support to our native Teleport Connect client, which might help us bypass some of the restrictions we face due to running in a browser.
What would you like Teleport to do?
Teleport appears to enforce a 1MB limit for copy-pasting text. If this limit is hit, the following error is returned:
Assuming text gets UCS-2/UTF-16 encoded, this limit is ~500.000 characters.
What problem does this solve?
I tried to copy-paste an SQL dump backup over Teleport-RDP. This works when using RDP directly, but fails when using Teleport. Saving the clipboard contents to a file and saving it as utf16 with notepad.exe, it's ~4MB large.
If a workaround exists, please include it.
I guess this limit is set here:
teleport/lib/srv/desktop/tdp/proto.go
Line 1701 in 536dc9d
is there a reason this was set to 1MB or was this just a (reasonable) guess? If possible, I'd like to ask for it to be increased
The text was updated successfully, but these errors were encountered: