The filebuf_open_nostat function opens a new file buffer for a previously opened file. The function returns a new buffer structure. Buffered files provide more efficient file access by guaranteeing the use of buffered file I/O in environments where it is not supported by the operating system.
This function is the same as filebuf_open but is more efficient because this function does not need to call the request_stat_path function. This function requires that the stat information be passed in.
filebuf* filebuf_open_nostat(SYS_FILE fd, int sz, struct stat *finfo);
A pointer to a new buffer structure to hold the data if successful, or NULL if no buffer could be opened.
SYS_FILE fd is the platform-independent file descriptor of the file that has already been opened.
int sz is the size, in bytes, to be used for the buffer.
struct stat *finfo is the file information of the file. Before calling the filebuf_open_nostat function, you must call the request_stat_path function to retrieve the file information.
filebuf *buf = filebuf_open_nostat(fd, FILE_BUFFERSIZE, &finfo);if (!buf) { system_fclose(fd);}