home *** CD-ROM | disk | FTP | other *** search
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <dos/dosextens.h>
- #ifdef __GNUC__
- #include <inline/dos.h>
- #endif
-
- extern int __stat(struct stat *buf,struct FileInfoBlock *fib);
- extern void __seterrno(void);
-
- extern unsigned long *__stdfiledes;
-
- int fstat(int d,struct stat *buf)
- { struct FileInfoBlock *fib;
- int ret=-1;
-
- if((fib=(struct FileInfoBlock *)AllocDosObject(DOS_FIB,NULL))!=NULL)
- {
- if(ExamineFH(__stdfiledes[d],fib)!=DOSFALSE)
- ret=__stat(buf,fib);
- else
- __seterrno();
- FreeDosObject(DOS_FIB,fib);
- }
- else
- __seterrno();
- return ret;
- }
-