For extra pedant points, stdout may be readable, but it's not required to be. There are some very disturbing tricks that depend on the assumption that stdout and stdin refer to the same device, so you can dup one to get a servicable approximation of the other. (That was 1 and 0, not the C objects.) -s