elemental-ircd/doc/technical/file-management.txt

38 lines
968 B
Plaintext

Overview of the file management subsystem
Adrian Chadd <adrian@creative.net.au>
$Id: file-management.txt 6 2005-09-10 01:02:21Z nenolod $
File operations
---------------
The file operations are also wrapped through file_open() and file_close()
which handle calling fd_open() / fd_close() and tracking the filedescriptors
correctly. fbopen() / fbclose() use file_open() / file_close() too.
fileio.c defines the functions:
int
file_open(const char *filename, int mode, int fmode)
A wrapper around open(filename, flags, mode). Read the open manpage for
information. file_open() enforces filedescriptor limits and tags the FD
through fd_open().
void
file_close(int fd)
A wrapper around close() for files. close() handles fd_close()ing the fd.
FBFILE *
fbopen(const char *filename, const char *mode)
void
fbclose(FBFILE *fb)
These are the 'buffered disk IO' routines. You can read the code yourself.
Note that these routines use file_open() and file_close().