/dev/zero should be world writable, but is not. This is true of the Rawhide and Starbuck releases as well as the 5.2 release, and presumably other releases. The manpage for /dev/null and /dev/zero ("man null") say that both devices should be world-writable, but only /dev/null is. (/dev/zero is owner and group writable only). Strangely, MAKEDEV seems to want to make both devices 0666, but I haven't verified that it does so. The problem shows itself with JDK1.2pre-v1: JDK1.2 uses /dev/zero internally to throw stuff away, and expects it to be world-writable; I imagine this may be confusing some people who are trying to use it. e.g. (on starbuck): % setenv THREADS_FLAG green % java -Djava.compiler= -version devzero: Permission denied Thanks, //James//
I have verified this to be true in the test lab. It is being assigned to a developer.
This was originally changed because someone voiced a security-related concern. That concern (that /dev/zero does not erase the buffer passed to it) is not a legitimate concern and while programs really should use /dev/null to throw things away, I'll change the dev package to make /dev/zero world writable in dev-2.6.4