Email printing process hangs with iPrint Appliance

  • 7017250
  • 11-Feb-2016
  • 28-Mar-2016

Environment

iPrint Appliance 1.1 Patch 4 (version 419)

Situation

When an email is sent to iPrint from a Mac (OSX) to the Office 365 mail server, the email isn't printed and the iPrint service stops.  Print requests will not continue until the iPrint service is restarted.

The email server shows that the message has been read by the Appliance, but the message is not deleted from the mailbox.  It is expected that the message is deleted after being processed.

The issue is seen with Mac desktops running Yosemite and El Capitan versions of the Mac OS, and with Apple mail and outlook email clients.  The problem occurs with both plain text and HTML messages. 

Sending commands such as 'List printers' generates the correct email response.

Emails sent from other OSs / mail clients are printed successfully.

If a different email server is used,  like Exchange or gmail, the Mac emails print correctly as well.

Resolution

Disable the use of Content-Type: application/ms-tnef on the Office 365 email server following Microsoft instructions:

https://support.microsoft.com/en-us/kb/2487954

Cause

Office 365 email server uses the proprietary Content-Type: application/ms-tnef encoding which is not compatible with other email systems.

A LAN trace shows that Office 365 changes the data type of messages sent from Apple Mail or Outlook 2016 on Mac to:

Content-Type: application/ms-tnef; name="winmail.dat"

Content-Transfer-Encoding: binary

from:

Content-Type: text/plain; charset="us-ascii"

Content-Transfer-Encoding: 7bit

But it was not changing it when it was sent from a different email client/platform.

Additional Information

iprintmobile0.log shows:

[DATE] com.novell.service.iPrint.mobile.printer.GlobalPrintManager _submit
WARNING: There were failures in job (id - 1.0) submission: 1
[DATE]  com.novell.service.iPrint.mobile.printer.GlobalPrintManager processEmailJob
WARNING: Job 1 could not be submitted.
[DATE]  com.novell.service.iPrint.mobile.printer.GlobalPrintManager submitJobViaIPP
WARNING: Failure in job submission
Request (SERVER_ERROR) - bad status code (0x505)
    at com.novell.service.iPrint.ipp.IPPAttributeSet.readAttributes(Unknown Source)
    at com.novell.service.iPrint.ipp.IPPJob.submitJob(Unknown Source)
    at com.novell.service.iPrint.iprntman.Job.submitPrintReadyFile(Unknown Source)
    at com.novell.service.iPrint.iprntman.Job.submitPrintReadyFile(Unknown Source)
    at com.novell.service.iPrint.mobile.printer.GlobalPrintManager.submitJobViaIPP(GlobalPrintManager.java:567)
    at com.novell.service.iPrint.mobile.printer.GlobalPrintManager._submit(GlobalPrintManager.java:491)
    at com.novell.service.iPrint.mobile.printer.GlobalPrintManager.processEmailJob(GlobalPrintManager.java:315)
    at com.novell.service.iPrint.mobile.printer.GlobalPrintManager.processJob(GlobalPrintManager.java:181)
    at com.novell.service.iPrint.mobile.printer.GlobalPrintManager.access$000(GlobalPrintManager.java:60)
    at com.novell.service.iPrint.mobile.printer.GlobalPrintManager$JobSubmissionRunnable.run(GlobalPrintManager.java:123)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1157)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:627)
    at java.lang.Thread.run(Thread.java:798)