I ran into this particular problem in VMware: My guest OS would see my attached virtual printer, but whenever I tried to print anything to it, I would get the following warning:
Printer warning Printer ‘Brother’: ‘cups-insecure-filter’.
This never happened when I was printing locally, only in the VM. After getting some mixed informaton from searching, this is what I finally found:
cups-insecure-filter-warning – a filter or backend (or the directory containing the filter or backend) has insecure file permissions. CUPS will not execute programs with world write permissions or setuid programs. When run as root (the default), CUPS also does not execute programs that are not owned by root. – Source: cups.org
So I took a look in /usr/lib/cups/filter, and sure enough:
-rwsr-xr-x 1 root root 724784 2011-04-03 23:23 thnucups
That filter is setuid root. Cups notices this and refuses to process the print job. Easy enough to fix:
sudo chmod u-s thnucups
Tried a test page from the VM, prints fine. Ubuntu prints fine too. Problem solved.
Have anything to add to the above? Share your thoughts in the comments section below.