Re: Retiring lpr and lpd
Dag-Erling Smørgrav <[email protected]> Sat, 21 Feb 2026 02:07:54 +0100
| Newsgroups | gmane.os.freebsd.architechture |
|---|---|
| Message-ID | <[email protected]> |
"Enji Cooper (yaneurabeya)" <[email protected]> writes: > How hard would it be to remove the set*uid bit and just require the > process be run as a non-root user/the cdevs be writable to a printer > group using devfs rules and devd? The issue is not access to the device (only lpd(8) needs that, and it's a service), the issue is access to the spool directory: lpr(1) and lprm(1) add and remove print jobs by direct manipulation of the spool directory, lpd(8) picks jobs up from there and sends them to the printer (and also accepts incoming print jobs from network clients), lpq(1) needs to read the spool control files to display the print queue. The only program that shouldn't need to be setugid (but still is, and I don't know why) is lpc(8), which is only intended to be run by an administrator. DES -- Dag-Erling Smørgrav - [email protected]