OpenPrinting / OpenPrinting/libcups
S/MIME APIs
Open
@michaelrsweet is already working on this.
Since May 16, 2023.
enhancement
priority-low
- Dominant language
- C
- Stars
- 81
- Forks
- 48
- Avg merge
- 23h 58m
- Merged PRs (30d)
- 2
Description
The prototype IPP Encrypted Jobs and Documents v1.0 (TRUSTNOONE) specification sends sensitive IPP attributes and document data in S/MIME containers. Since this might be done with OpenSSL or GNU TLS, we need a CUPS API to expose this functionality.
- Function to convert an IPP attribute (1setOf text(MAX)) to a single string with newlines separating each value - this will allow X.509 certificates in attributes to be used.
- Function to convert a single string with newlines to an IPP attribute (1setOf text(MAX)) - necessary for servers to advertise their certificates and for clients to provide their certificate.
- Function to write an encrypted S/MIME container with attributes, file, X.509 certificate, and optional password
- Function to read an encrypted S/MIME container using a private key and optional password, producing attributes and an optional file (preferably with a callback vs. writing directly to disk)
The read/write functions should support the typical IO callback (like the IPP functions do).
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.
Assessment
This issue has not been assessed yet.