lionheart / openradar-mirror

A mirror of radars pulled from http://openradar.me/.
246 stars 17 forks source link

45715123: Print Dialog Extensions don't load in Apple apps #20651

Open openradar-mirror opened 5 years ago

openradar-mirror commented 5 years ago

Description

Summary:

Many printer drivers (particularly for those used in commercial settings) use Print Dialog Extensions to provide custom user interfaces.

In Mojave the PDEs aren't loaded in Apple apps and in many cases this results in the printer being unusable from those apps. If a printer requires authentication to use it (for example, a Xerox copier) then if a PDE is loaded the user may not be able to enter authentication information. In that case the user will NOT be able to print.

Steps to Reproduce:

  1. Set up a Xerox C70 copier to require username/password authentication.
  2. Install the Xerox printer drivers on a Mac running Mojave.
  3. Configure the Mac to print to the Xerox C70.
  4. Open the Print dialog in Safari or TextEdit.
  5. Choose the C70
  6. Go to the Printer Features settings
  7. Attempt to configure authentication
  8. You can't, because there's no place to enter the username/password.
  9. Thus you can't print at all, because the copier rejects the unauthenticated print job.

Note: This is NOT a bug in the Xerox driver. The same thing happens with ANY printer driver that uses a PDE, even if the "PMSandboxCompatiblePDEs" key is set in Info.plist (as it is in the Xerox driver). I'm just using the Xerox one as an example because I happen to be trying to print something to my department's C70 copier at the moment.

It still works normally in a non-Apple app even when sandboxed.

The only workaround is to print to PDF and then print the PDF from Acrobat Reader (NOT Apple's Preview, obviously). But that's a painful workaround.

I'm guessing one could also get around it by disabling SIP but I don't want to do that.

Expected Results:

The print dialog should load the Print Dialog Extension to provide a custom user interface for Printer Features.

Actual Results:

The print dialog fails to load the Print Dialog Extension and instead falls back to the generic UI generated by parsing the PPD.

This is the error listed in Console.app for an app that's bundled with the operating system:

Library Validation failed: Rejecting '/Library/Printers/Xerox/PDEs/XeroxFeatures.plugin/Contents/MacOS/XeroxFeatures' (Team ID: G59Y3XFNFR, platform: no) for process 'Safari(38982)' (Team ID: none, platform: yes), reason: mapping process is a platform binary, but mapped file is not

And the error for an app that isn't:

Library Validation failed: Rejecting '/Library/Printers/Xerox/PDEs/XeroxFeatures.plugin/Contents/MacOS/XeroxFeatures' (Team ID: G59Y3XFNFR, platform: no) for process 'Pages(38906)' (Team ID: K36BKF7T3D, platform: no), reason: mapping process and mapped file (non-platform) have different Team IDs

Version/Build:

macOS 10.14.1 Beta (18B73a)

Configuration: iMac (Retina 5K, 27-inch, Late 2014) 4 GHz Intel Core i7 16 GB 1600 MHz DDR3 Internal SSD AMD Radeon R9 M295X 4096 MB

- Product Version: 10.14 Created: 2018-10-31T22:56:36.299007 Originated: 2018-10-31T00:00:00 Open Radar Link: http://www.openradar.me/45715123

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853

openradar-mirror commented 5 years ago

Modified: 2018-11-05T23:47:46.042853