OpenPrinting / OpenPrinting/cups
CUPS doesn't hold jobs using a password, preventing iOS clients from displaying the PIN needed to release them.
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 1.8k
- Forks
- 331
- Avg merge
- 9h 42m
- Merged PRs (30d)
- 6
Description
Need to implement a short (10-30 second) hold for jobs using the job-password attribute for PIN/passcode/password printing, otherwise iOS clients won't show the PIN they generated.
Discussed in https://github.com/OpenPrinting/cups/discussions/1453
Originally posted by mdk6c December 10, 2025
We are trying to implement PIN release printing in CUPS for iOS devices.
We have added the following to the bottom of our PPD file, as per the documentation.
*cupsMandatory: "job-password job-password-encryption"
*cupsJobPassword: "1111"
Our printer is visible from iOS devices and the print options sheet shows "This printer requires a PIN to print" as expected.
However, when we tap "Print" to submit the print job, no PIN is ever presented to the user via the expected iOS PIN dialog (screenshot below).
I can see from the error_log that a job password is being generated and passed along to the filters.
Maybe this issue is on the iOS side, not CUPS. I'm sorry to report it as a bug. But we have found scant guidance or implementation examples for PIN printing in our research thus far.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing Discussion 1453 and the attached error_log.txt, then trace CUPS handling of the job-password attribute. Confirm the behavior for password-protected jobs and verify that a short hold allows iOS clients to display the generated PIN before release.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, ios
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100