FreeBSD Manual Pages
BREAD(3) BSD Library Functions Manual BREAD(3) NAME bread, bwrite -- read and write blocks of a UFS file system LIBRARY UFS File System Access Library (libufs, -lufs) 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); int berase(struct uufsd *disk, ufs2_daddr_t blockno, ufs2_daddr_t size); DESCRIPTION The bread(), bwrite() and berase() functions provide a block read, write and erase 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. The berase() function returns non-zero on error. ERRORS The function bread() may fail and set errno for any of the errors speci- fied for the library functions ufs_disk_write(3) or pread(2). The function bwrite() may fail and set errno for any of the errors speci- fied for the library function pwrite(2). The function berase() may fail and set errno for any of the errors speci- fied for the library function ioctl(2). Additionally all three functions may follow the libufs(3) error method- ologies in situations where the amount of data written is not equal to the amount requested, or in case of a device error. SEE ALSO libufs(3), ufs_disk_write(3) HISTORY These functions first appeared as part of libufs(3) in FreeBSD 5.0. AUTHORS Juli Mallett <jmallett@FreeBSD.org> BSD June 4, 2003 BSD
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=bread&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>