bread(3)
NAME
bread, bwrite - read and write blocks of a UFS file system
LIBRARY
library ``libufs''
SYNOPSIS
#include <sys/param.h> #include <sys/mount.h> #include <ufs/ufs/ufsmount.h> #include <ufs/ufs/dinode.h> #include <ufs/ffs/fs.h> #include <libufs.h> ssize_t bread(struct uufsd *disk, ufs2_daddr_t blockno, void *data, size_t size); ssize_t bwrite(struct uufsd *disk, ufs2_daddr_t blockno, const void *data, size_t size);
DESCRIPTION
- The bread() and bwrite() functions provide a block read and
- write API for
libufs(3) consumers. They operate on a userland UFS disk - structure, and
perform the read and write at a given block address, which - uses the current d_bsize value of the structure.
RETURN VALUES
- The bread() and bwrite() functions return the amount read or
- written, or
-1 in case of any error, including short read.
ERRORS
- The function bread() may fail and set errno for any of the
- errors specified for the library functions ufs_disk_write(3) or
- pread(2). Additionally, it may follow the libufs(3) error methodologies in
- situations where
the amount of data read is not equal to the amount request - ed, or in case
of device error. - The function bwrite() may fail and set errno for any of the
- errors specified for the library function pwrite(2). Additionally, it
- may follow the
libufs(3) error methodologies in situations where the amount - of data
written is not equal to the amount requested, or in case of - a device
error.
SEE ALSO
HISTORY
- These functions first appeared as part of libufs(3) in
- FreeBSD 5.0.
AUTHORS
- Juli Mallett <jmallett@FreeBSD.org>
- BSD June 4, 2003