NAME
fhopen
, fhstat
,
fhstatvfs
, fhstatvfs1
— access file via file
handle
LIBRARY
library “libc”
SYNOPSIS
#include
<sys/types.h>
#include <sys/mount.h>
int
fhopen
(const
void *fhp, size_t
fh_size, int
flags);
#include
<sys/stat.h>
int
fhstat
(const
void *fhp, size_t
fh_size, struct stat
*sb);
#include
<sys/statvfs.h>
int
fhstatvfs
(const
void *fhp, size_t
fh_size, struct statvfs
*buf);
int
fhstatvfs1
(const
void *fhp, size_t
fh_size, struct statvfs
*buf, int
flags);
DESCRIPTION
These functions provide a means to access a file given the opaque file handle fhp and the size fh_size of the opaque object as returned by getfh(2). As this method bypasses directory access restrictions, these calls are restricted to the superuser.fhopen
()
opens the file referenced by fhp for reading and/or
writing as specified by the argument flags and returns
the file descriptor to the calling process. The flags
are specified by
or'ing
together the flags used for the
open(2) call. All said flags are valid except for
O_CREAT
.
fhstat
(),
fhstatvfs
(),
and
fhstatvfs1
()
provide the functionality of the
fstat(2),
fstatvfs(2), and
fstatvfs1(2) calls except that they return information for the file
referred to by fhp rather than an open file.
RETURN VALUES
Upon successful completion, fhopen
()
returns the file descriptor for the opened file, while
fhstat
(), fhstatvfs
(), and
fhstatvfs1
() return 0. Otherwise, -1 is returned and
errno is set to indicate the error.
ERRORS
In addition to the errors returned by
open(2), fstat(2),
fstatvfs(2), and
fstatvfs1(2), respectively, fhopen
(),
fhstat
(), fhstatvfs
(), and
fhstatvfs1
() will return
- [
EINVAL
] - Calling
fhopen
() withO_CREAT
set or invalid fh_size. - [
ESTALE
] - The file handle fhp is no longer valid.
SEE ALSO
HISTORY
The fhopen
(), and
fhstat
() functions first appeared in
NetBSD 1.5. The fhstatvfs
()
function replaced fhstatfs
() in
NetBSD 3.0.