I only have an IPv4 entry for localhost (Only IPv4 is in use, but IPv6 is activated for possible diagnosis) in /etc/hosts and the only (network related) "Listen" entry "Listen localhost:631" in cupsd.conf. When starting cupsd (tested for both versions: 1.3.11-r1 and 1.4.2-r1), I have two listening network sockets: 127.0.0.1:631 and ::1:631. In cups source, file http-addrlist.c, I find the following comment in the source of httpAddrGetList(): /* * Unfortunately, some users ignore all of the warnings in the * /etc/hosts file and delete "localhost" from it. If we get here * then we were unable to resolve the name, so use the IPv6 and/or * IPv4 loopback interface addresses... */ This behaviour is incorrect (yet not completely analyzed). If one has an entry for localhost in cupsd.conf, either localhost has to be resolved correctly or an error should be thrown if localhost can't be resolved.
Please take such things upstream by filing a bug in the CUPS bugtracker if you're absolutly sure it's no configuration issue. We generally won't change how a programm works. If your bug gets fixed upstream and a patch is available feel free to reopen this bug, adding the URL to the upstream bug in the URL field and I'll gladly apply the patch to our ebuild.
Upstream handling is not intended by the CUPS folks (please have a look at http://www.cups.org/str.php?L3464 for the discussion). This means, that CUPS will keep this incorrect behaviour, and, taking the generality of your former message for serious, that CUPS on Gentoo will behave the same. That in turn means, that every user will have to maintain a portage overlay only for getting a correct application behaviour. Is that really what is intended?
(In reply to comment #2) > Upstream handling is not intended by the CUPS folks (please have a look at > http://www.cups.org/str.php?L3464 for the discussion). > > This means, that CUPS will keep this incorrect behaviour, and, taking the > generality of your former message for serious, that CUPS on Gentoo will behave > the same. That in turn means, that every user will have to maintain a portage > overlay only for getting a correct application behaviour. Is that really what > is intended? Actually yes. Our Gentoo policy is to not change upstream behaviour of applications. If for some reason (like bugfixes) we do, we usually make sure to get that part upstream so everyone can benefit from the improvement. In this case upstream clearly states that this is intended behaviour and won't get addressed so you either have to live with it, convince upstream to change it, use a local overlay or some other distribution which ship and maintain their own patchsets for applications. I also fail to see the need for a local overlay when you can simply work around your problem by changing the Listen entry in cupsd.conf Apart from that most probably unsatisfying answer I've to thank you very much for taking the time and motivation to file and discuss your problem with upstream.