Hi,
We have observed one problem for “fstat” system call.
We are running a program which checks the type of STDIN ( program name
stdin64) on SuSE Linux Enterprise 11 server.
fstat call returns wrong value for non-root user - ID - 8283.
When type of STDIN is FIFO, it returns socket.
( $ echo “test” | ./stdin64)
For root, when type of STDIN is FIFO, it returns right value; i.e. FIFO
( # echo “test” | ./stdin64)
For other file types,i.e. when STDIN type is regular file, for root as
well as non-root user(ID 8283), fstat returns right value.
$ ./stdin64 < sample)
Why fstat behaves differently for non-root and root?