212380e3f4
+ branches/release-2.1 -> 2.2 base + 3.0 -> branches/cxxconversion + backport some immediate 3.0 functionality for 2.2 + other stuff
37 lines
968 B
Text
37 lines
968 B
Text
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().
|
|
|