I have written a program to do some file I/O operations. Before opening a file for reading, I am calling "stat()" function call.

Here is my program snipet

struct stat file_info;
char *file_name;

if( stat( file_name, &file_info) == 0 ){
perror(" FILE stat failed" );

This code is running perfectly in Solaris, Linux and HP-UX also.
Gives problems only in Linux if file size is 2 GB.
The stat() function fails and the error message is

" stat failed: Ileegal seek"

I am getting this error only if the file size is too large.
I dont know exactly what is the issue.
Expecting the openion from the experts which will be very helpful for me.

Thanks in Advance.