fattach(3C)
NAME
fattach - attach a STREAMS-based file descriptor to an
object in the file system name space
SYNOPSIS
#include <stropts.h>
int fattach(int fildes, const char *path);
DESCRIPTION
The fattach() function attaches a STREAMS-based file
descriptor to an object in the file system name space,
effectively associating a name with fildes. fildes must be a
valid open file descriptor representing a STREAMS file. path
is a path name of an existing object and the user must have
appropriate privileges or be the owner of the file and have
write permissions. All subsequent operations on path will
operate on the STREAMS file until the STREAMS file is
detached from the node. fildes can be attached to more than
one path, that is, a stream can have several names associ-
ated with it.
The attributes of the named stream (see stat(2)), are ini-
tialized as follows: the permissions, user ID, group ID, and
times are set to those of path, the number of links is set
to 1, and the size and device identifier are set to those of
the streams device associated with fildes. If any attributes
of the named stream are subsequently changed (for example,
chmod(2)), the attributes of the underlying object are not
affected.
RETURN VALUES
Upon successful completion, fattach() returns 0. Otherwise
it returns -1 and sets errno to indicate an error.
ERRORS
The fattach() function will fail if:
EACCES
The user is the owner of path but does not have write
permissions on path or fildes is locked.
EBADF The fildes argument is not a valid open file descrip-
tor.
EBUSY The path argument is currently a mount point or has a
STREAMS file descriptor attached it.
EINVAL
The path argument is a file in a remotely mounted
directory.
EINVAL
The fildes argument does not represent a STREAMS file.
ELOOP Too many symbolic links were encountered in translat-
ing path.
ENAMETOOLONG
The size of path exceeds {PATH_MAX}, or the component
of a path name is longer than {NAME_MAX} while
{_POSIX_NO_TRUNC} is in effect.
ENOENT
The path argument does not exist.
ENOTDIR
A component of a path prefix is not a directory.
EPERM The effective user ID is not the owner of path or a
user with the appropriate privileges.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
fdetach(1M), chmod(2), mount(2), stat(2), fdetach(3C), isas-
tream (3C), attributes(5), streamio(7I)
STREAMS Programming Guide
Man(1) output converted with
man2html