typedef __SIZE_TYPE__ size_t; typedef unsigned int __u_int; typedef unsigned long __u_long; __extension__ typedef unsigned long long int __u_quad_t; __extension__ typedef long long int __quad_t; typedef struct { int __val[2]; } __fsid_t; typedef long int __blksize_t; typedef long int __blkcnt_t; typedef __quad_t __blkcnt64_t; typedef __u_long __fsblkcnt_t; typedef __u_quad_t __fsblkcnt64_t; typedef __u_long __fsfilcnt_t; typedef __u_quad_t __fsfilcnt64_t; typedef __u_quad_t __ino64_t; extern void *memcpy (void *__restrict __dest, __const void *__restrict __src, size_t __n) ; struct statfs { int f_type; int f_bsize; __fsblkcnt_t f_blocks; __fsblkcnt_t f_bfree; __fsblkcnt_t f_bavail; __fsfilcnt_t f_files; __fsfilcnt_t f_ffree; __fsid_t f_fsid; int f_namelen; int f_spare[6]; }; struct statfs64 { int f_type; int f_bsize; __fsblkcnt64_t f_blocks; __fsblkcnt64_t f_bfree; __fsblkcnt64_t f_bavail; __fsfilcnt64_t f_files; __fsfilcnt64_t f_ffree; __fsid_t f_fsid; int f_namelen; int f_spare[6]; }; extern int __statfs (__const char *__file, struct statfs *__buf); extern int __statfs64 (__const char *__file, struct statfs64 *__buf); int __statfs64 (const char *file, struct statfs64 *buf) { struct statfs buf32; if (__statfs (file, &buf32) < 0) return -1; buf->f_type = buf32.f_type; buf->f_bsize = buf32.f_bsize; buf->f_blocks = buf32.f_blocks; buf->f_bfree = buf32.f_bfree; buf->f_bavail = buf32.f_bavail; buf->f_files = buf32.f_files; buf->f_ffree = buf32.f_ffree; buf->f_fsid = buf32.f_fsid; buf->f_namelen = buf32.f_namelen; memcpy (buf->f_spare, buf32.f_spare, sizeof (buf32.f_spare)); return 0; }