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?


avj1605's Profile: http://forums.novell.com/member.php?userid=118567
View this thread: http://forums.novell.com/showthread.php?t=447401