# rpmdb/falloc.h File Reference

File space allocation routines. More...

Go to the source code of this file.

## Functions

long int | fadGetFileSize (FD_t fd)
void | fadSetFileSize (FD_t fd, long int fileSize)
unsigned int | fadGetFirstFree (FD_t fd)
void | fadSetFirstFree (FD_t fd, unsigned int firstFree)
FD_t | fadOpen (const char *path, int flags, mode_t perms)
unsigned int | fadAlloc (FD_t fd, unsigned int size)
void | fadFree (FD_t fd, unsigned int offset)
int | fadFirstOffset (FD_t fd)
int | fadNextOffset (FD_t fd, unsigned int lastoff)

## Detailed Description

File space allocation routines.

Best fit allocation is used, free blocks are compacted. Minimal fragmentation is more important then speed. This uses 32 bit offsets on all platforms and should be byte order independent.

Definition in file falloc.h.

## Function Documentation

long int fadGetFileSize | ( | FD_t | fd | ) | `[inline, static]`

| Definition at line 19 of file falloc.h. References FD_t, and _FD_s::fileSize. Referenced by doGetRecord(), fadAlloc(), fadNextOffset(), fadOpen(), and fadSanity().

unsigned int fadGetFirstFree | ( | FD_t | fd | ) | `[inline, static]`

| Definition at line 29 of file falloc.h. References FD_t, and _FD_s::firstFree. Referenced by fadAlloc(), and fadFree().

void fadSetFileSize | ( | FD_t | fd,
|  | long int | fileSize
| ) | `[inline, static]`

| Definition at line 23 of file falloc.h. References FD_t, and _FD_s::fileSize. Referenced by fadAlloc(), and fadOpen().

void fadSetFirstFree | ( | FD_t | fd,
|  | unsigned int | firstFree
| ) | `[inline, static]`

| Definition at line 33 of file falloc.h. References FD_t, and _FD_s::firstFree. Referenced by fadAlloc(), fadFree(), and fadOpen().