[cups.development] Deleting printers that have no backend

Michael Sweet mike at easysw.com
Wed Aug 31 10:53:32 PDT 2005


Jim Fehlig wrote:
> I have encountered configurations where it is possible to have printers 
> installed with no corresponding backend to communicate with the target 
> device.  Details can be provided at how I arrived at such a 
> configuration, but don't believe it is terribly relevant.
> 
> I would like to get the community's thoughts on providing a patch that 
> would delete printers for which there is no corresponding backend to 
> service the queue.  I have looked into deleting the printer when a job 
> is processed and we find that exec()ing the backend fails with ENOENT.  
> Such a patch appears to be fairly simple but wanted to get some feedback 
> before creating it.
> 
> An alternate approach would be to check for necessary programs (filters 
> and backends?) for installed printers during initialization of cupsd and 
> removing those for which there is no hope for success.  Perhaps a config 
> item or command line option to control this behavior?
> 
> I may be overlooking scenarios where such behavior is undesirable, but 
> will happily provide a patch if this functionality is deemed appropriate.

I think the current code will stop the queue if it is pointing at
a now non-existent backend.  IMHO, this is the correct behavior and
deleting the printer is the wrong thing to do.

That said, I would have no problem with a sanity check in
LoadAllPrinters() that logged an error and stopped the printer...

-- 
______________________________________________________________________
Michael Sweet, Easy Software Products           mike at easysw dot com
Internet Printing and Document Software          http://www.easysw.com




More information about the cups-devel mailing list