| LFS_BMAPV(2) | System Calls Manual | LFS_BMAPV(2) | 
lfs_bmapv —
#include <sys/types.h>
#include <ufs/lfs/lfs.h>
int
  
  lfs_bmapv(fsid_t
    *fsidp, BLOCK_INFO
    *blkiov, int
    blkcnt);
lfs_bmapv() fills in the bi_daddr field for every block
  listed in the block array blkiov with the disk address
  corresponding to the logical block bi_lbn of the file
  with inode bi_inode. If bi_lbn is
  LFS_UNUSED_LBN, the disk location of the inode block containing the file's
  inode will be returned in bi_daddr instead.
The fsidp argument contains the id of the file system to which the inodes and blocks belong. The blkiov argument is an array of BLOCK_INFO structures (see below). The blkcnt argument determines the size of the blkiov array.
typedef struct block_info {
    ino_t       bi_inode;     /* inode # */
    ufs_daddr_t bi_lbn;       /* logical block w/in file */
    ufs_daddr_t bi_daddr;     /* disk address of block */
    time_t      bi_segcreate; /* origin segment create time */
    int         bi_version;   /* file version number */
    void       *bi_bp;        /* data buffer */
    int         bi_size;      /* size of the block (if fragment) */
} BLOCK_INFO;
lfs_bmapv() returns 0 on success, or -1 on error.
lfs_bmapv() indicates:
lfs_bmapv() function call appeared in
  4.4BSD.
| May 23, 2000 | NetBSD 9.3 |