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

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
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout