Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

lib/fs.c File Reference

More...

#include "system.h"
#include <rpmlib.h>
#include <rpmmacro.h>
#include "debug.h"

Go to the source code of this file.

Data Structures

struct  fsinfo

Functions

void freeFilesystems (void)
 Release storage used by file system usage cache.

int getFilesystemList (void)
 Get information for mounted file systems.

int rpmGetFilesystemList (const char ***listptr, int *num)
 Return (cached) file system mount points.

int rpmGetFilesystemUsage (const char **fileList, int_32 *fssizes, int numFiles, uint_32 **usagesPtr, int flags)
 Determine per-file system usage for a list of files.


Variables

fsinfofilesystems = NULL
const char ** fsnames = NULL
int numFilesystems = 0


Detailed Description

Definition in file fs.c.


Function Documentation

void freeFilesystems void   
 

Release storage used by file system usage cache.

Definition at line 28 of file fs.c.

References _free(), fsnames, fsinfo::mntPoint, and numFilesystems.

Referenced by getFilesystemList(), and main().

int getFilesystemList void    [static]
 

Get information for mounted file systems.

Todo:
determine rdonly for non-linux file systems.
Returns:
0 on success, 1 on error

Definition at line 139 of file fs.c.

References _, _free(), errno, freeFilesystems(), fsnames, getmntent(), fsinfo::mntPoint, MOUNTED, numFilesystems, our_mntent::our_mntdir, RPMERR_MTAB, RPMERR_STAT, rpmError, RPMMESS_DEBUG, rpmMessage, strerror(), xcalloc(), xrealloc(), and xstrdup().

Referenced by rpmGetFilesystemList(), and rpmGetFilesystemUsage().

int rpmGetFilesystemList const char ***    listptr,
int *    num
 

Return (cached) file system mount points.

Return values:
listptr  addess of file system names (or NULL)
num  address of number of file systems (or NULL)
Returns:
0 on success, 1 on error

Definition at line 248 of file fs.c.

References fsnames, getFilesystemList(), and numFilesystems.

Referenced by fsnamesTag(), fssizesTag(), and rpmtsInitDSI().

int rpmGetFilesystemUsage const char **    fileList,
int_32   fssizes,
int    numFiles,
uint_32 **    usagesPtr,
int    flags
 

Determine per-file system usage for a list of files.

Parameters:
fileList  array of absolute file names
fssizes  array of file sizes
numFiles  number of files in list
Return values:
usagesPtr  address of per-file system usage array (or NULL)
Parameters:
flags  (unused)
Returns:
0 on success, 1 on error

Definition at line 262 of file fs.c.

References _, _free(), alloca(), fsinfo::dev, errno, fsnames, getFilesystemList(), int_32, numFilesystems, RPMERR_BADDEV, RPMERR_STAT, rpmError, rpmGetPath(), strerror(), uint_32, and xcalloc().

Referenced by fssizesTag().


Variable Documentation

struct fsinfo* filesystems = NULL [static]
 

Definition at line 21 of file fs.c.

const char** fsnames = NULL [static]
 

Definition at line 24 of file fs.c.

Referenced by freeFilesystems(), getFilesystemList(), rpmGetFilesystemList(), and rpmGetFilesystemUsage().

int numFilesystems = 0 [static]
 

Definition at line 26 of file fs.c.

Referenced by freeFilesystems(), getFilesystemList(), rpmGetFilesystemList(), and rpmGetFilesystemUsage().


Generated on Sun Oct 26 13:02:05 2003 for rpm by doxygen1.2.18