includes: statvfs support, contributed by Buccapatnam Tirumala, Gautam

This commit is contained in:
Ben Gras 2010-06-23 23:46:10 +00:00
parent ac310cbe09
commit 79d62892ad
3 changed files with 39 additions and 2 deletions

View file

@ -100,6 +100,8 @@ typedef short nlink_t; /* number of links to a file */
typedef long off_t; /* offset within a file */
typedef int pid_t; /* process id (must be signed) */
typedef short uid_t; /* user id */
typedef unsigned long fsblkcnt_t; /* File system block count */
typedef unsigned long fsfilcnt_t; /* File system file count */
/* Signal handler type, e.g. SIG_IGN */
typedef void _PROTOTYPE( (*sighandler_t), (int) );

View file

@ -7,8 +7,8 @@ INCS= asynchio.h dir.h file.h ioc_cmos.h ioc_disk.h \
ioctl.h ioc_tty.h ipc.h jmp_buf.h kbdio.h mman.h \
mount.h mtio.h param.h ptrace.h queue.h resource.h \
select.h sem.h shm.h sigcontext.h signal.h socket.h \
soundcard.h statfs.h stat.h svrctl.h timeb.h \
soundcard.h statfs.h statvfs.h stat.h svrctl.h timeb.h \
time.h times.h types.h ucontext.h uio.h un.h utsname.h video.h vm.h \
wait.h cdefs.h
wait.h cdefs.h
.include <minix.kinc.mk>

35
include/sys/statvfs.h Normal file
View file

@ -0,0 +1,35 @@
/* Statvfs implementation corresponding to:
* http://www.opengroup.org/onlinepubs/009695399/basedefs/sys/statvfs.h.html
*/
#ifndef _STATVFS_H
#define _STATVFS_H
#include <minix/types.h>
struct statvfs {
unsigned long f_bsize; /* File system block size. */
unsigned long f_frsize; /* Fundamental file system block size. */
fsblkcnt_t f_blocks; /* Total number of blocks on file system */
/* in units of f_frsize. */
fsblkcnt_t f_bfree; /* Total number of free blocks. */
fsblkcnt_t f_bavail; /* Number of free blocks available to */
/* non-privileged process. */
fsfilcnt_t f_files; /* Total number of file serial numbers. */
fsfilcnt_t f_ffree; /* Total number of free file serial numbers. */
fsfilcnt_t f_favail; /* Number of file serial numbers available */
/* to non-privileged process. */
unsigned long f_fsid; /* File system ID. */
unsigned long f_flag; /* Bit mask of f_flag values. */
unsigned long f_namemax; /* Maximum filename length. */
unsigned char __padding[32]; /* Padding for future compatibility */
};
_PROTOTYPE( int fstatvfs, (int fd, struct statvfs *st) );
_PROTOTYPE( int statvfs, (const char *path, struct statvfs *st));
/* Possible values for statvfs->f_flag */
#define ST_RDONLY 0x1
#define ST_NOSUID 0x2
#endif /* _STAVTFS_H */