Bug 3804 - XPS support in rdesktop
Summary: XPS support in rdesktop
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: | rdesktop (deprecated) (show other bugs)
Target Milestone: 4.10.0
Assignee: Pierre Ossman
Depends on:
Blocks: 2036
  Show dependency treegraph
Reported: 2011-04-07 10:51 CEST by Pierre Ossman
Modified: 2019-02-07 15:51 CET (History)
0 users

See Also:
Acceptance Criteria:


Description Pierre Ossman cendio 2011-04-07 10:51:51 CEST
Microsoft's solution to driver-less printing via RDP is by sending XPS documents. This is very similar to how our thinlocal works.

These days there is a libgxps library (written so evince can read XPS) that we could possibly use to add XPS support to rdesktop. It would probably make printing work a lot better from Windows machines.
Comment 2 Pierre Ossman cendio 2013-07-03 12:48:07 CEST
I did some quick tests by using Microsoft's XPS Writer printer:

 - Firefox, aftonbladet.se
 - Internet Explorer, msn.com
 - Adobe Reader, a complex PDF

In all three cases evince displayed the files identical to how Windows does.

Comment 3 Pierre Ossman cendio 2013-07-03 13:36:16 CEST
Bah. Microsoft have avoided specifying a lot of the details by pretending that the RDP channel is just a transparent tunnel to an XPS capable printer driver on the client. So it seems that this function will not work with just any printer when using Microsoft's client.

The details are probably available in the XPS/printer API documentation, but it makes things a bit more complicated to decipher.

The good news is that it seems to be properly generic. XPS includes something equivalent to PPDs, and this is what RDP uses to exchange capabilities and print job options.

The actual print job is sent over the standard printer redirection, but with a special flag indicating that it is XPS data. Not entirely clear where the job options are transferred. There are a bunch of calls to convert the XPS options to a DEVMODE blob, so it might be included that with the print job.

On weird section are the messages to display a configuration UI. They indicate that the UI should be presented on the client, not the server. It has references to RAIL though, so it might only be relevant in that case.
Comment 4 Pierre Ossman cendio 2019-02-07 15:43:37 CET
rdesktop (and associated tools) is being removed from the ThinLinc product.

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