I run with umask 077, and i recently rebooted, and noticed hald failed to start, it segmentation faulted, i investigated this, and found the error to be that hal does ZERO error checking on the pciid opening, and didnt have permissions to open it, as it had gotten rw------- on /usr/share/misc/pci.ids from my update-pciids. a quick chmod fixed it. i looked at /usr/sbin/update-pciids and found the section at the bottom that gunzip's it, which fails to preserve permissions.. Reproducible: Always Steps to Reproduce: 1. umask 077 2. update-pciids 3. ls -l /usr/share/misc 4. /etc/init.d/hald restart
Created attachment 187252 [details, diff] update-pciids.patch
btw, should i create a bug about hald's non-error-checking behavior? it would REALLY be lovely if it could say: "fix your permissions ffs!" instead of leaving this in the syslog: Apr 3 20:08:29 [kernel] [ 15.546819] hald[3798]: segfault at 0 ip 0000000000423685 sp 00007fffdfbb1b10 error 4 in hald[400000+53000]
would be safer to always force perms to a+r at the end of the file and yes, you should file a bug about hald being a pos
should be fixed in cvs now, thanks http://sources.gentoo.org/sys-apps/pciutils/files/pciutils-2.2.7-update-pciids-both-forms.patch?r1=1.1&r2=1.2
in that case you may also want to do a+r the other place where it sets permissions... i just followed their lead :)