[cups-devel] CUPS-Create-Local-Printer prohibited by remote hosts

Michael Sweet msweet at apple.com
Fri Feb 17 10:12:50 PST 2017


> On Feb 14, 2017, at 2:07 AM, Stephan <stephanwib at googlemail.com> wrote:
> Hi!
> In our use case a controller needs to add IPP Everywhere print queues
> on a bunch of print servers. The CUPS-Create-Local-Printer IPP
> function suits perfectly, however, it cannot be invoked by remote
> hosts because it is prohibited in the code. The condition is checked
> in scheduler/ipp.c by the create_local_printer() function:
>  if (!httpAddrLocalhost(httpGetAddress(con->http)))
>  {
>    send_ipp_status(con, IPP_STATUS_ERROR_FORBIDDEN, _("Only local
> users can create a local printer."));
>    return;
>  }
> Removing this check makes things work as needed.
> Would it be possible to make this configurable?

No, first of all the purpose of this operation is to create a local (non-shared) and transient (goes away) print queue, not to create a long-lived queue.

To create a static (long-lived) queue, use lpadmin or the web interface with the "everywhere" model.  (lpadmin can work remotely)

Michael Sweet, Senior Printing System Engineer

More information about the cups mailing list