Merge branch '2123_crash_while_copy'
[midnight-commander.git] / src / fsusage.h
blobbd580d6be2ff76ffe798658c2cc6169a0c1a314b
1 /* fsusage.h -- declarations for file system space usage info
3 Copyright (C) 1991, 1992, 1997, 2003, 2004, 2005, 2006 Free Software
4 Foundation, Inc.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software Foundation,
18 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
20 /* Space usage statistics for a file system. Blocks are 512-byte. */
22 /** \file fsusage.h
23 * \brief Header: return space usage of mounted file systems
25 * Space usage statistics for a file system. Blocks are 512-byte
29 #if !defined MC_FSUSAGE_H
30 # define MC_FSUSAGE_H
32 # if HAVE_INTTYPES_H
33 # include <inttypes.h>
34 # endif
36 struct fs_usage
38 uintmax_t fsu_blocksize; /* Size of a block. */
39 uintmax_t fsu_blocks; /* Total blocks. */
40 uintmax_t fsu_bfree; /* Free blocks available to superuser. */
41 uintmax_t fsu_bavail; /* Free blocks available to non-superuser. */
42 int fsu_bavail_top_bit_set; /* 1 if fsu_bavail represents a value < 0. */
43 uintmax_t fsu_files; /* Total file nodes. */
44 uintmax_t fsu_ffree; /* Free file nodes. */
47 int get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp);
49 #endif