fattach(3C)fattach(3C)NAMEfattach() - attach a STREAMS file descriptor to an object in the file
system name space
The function attaches the fd file descriptor to an object in the file
system name space designated by path. fd specifies an open file
descriptor to a STREAMS device or STREAMS-based pipe. path specifies
the pathname of an existing object in the file system. A STREAMS
device or pipe can be attached to more than one node in the file system
name space. In other words, a STREAMS device or pipe is allowed to have
several associated names. Until the STREAMS device or pipe is detached
from the node (with fdetach(3C) or fdetach(1M)), all operations on path
will act on the STREAMS device or pipe instead of the file system
The stream's attributes (see the stat(2) reference page) are set
according to the following scheme:
· The group ID, user ID, times, and permissions are set to those of
· The size as well as the device number are set to those of the
STREAMS device or pipe designated by the fd parameter. Note that
although the attributes of the STREAMS device or pipe may change
(see the chmod(2) reference page), the attributes of the underlying
file system object path will not be changed.
· The number of links is set to 1.
Upon successful completion, the function returns a value of 0 (zero).
Otherwise, it returns a value of -1, and is set to indicate the error.
If any of the following conditions occurs, the function sets to the
value that corresponds to the condition.
[EACCES] Although the user is the owner of path, the user
has no write permissions for it.
[EBADF] The fd parameter is an invalid file descriptor.
[EBUSY] The existing object specified by the path parame‐
ter is already mounted or has a file descriptor
attached to it.
[EFAULT] The path parameter points to a location outside
of the allocated address space of the process.
[EINVAL] The fd parameter does not refer to a STREAMS
device or STREAMS-based pipe.
[ELOOP] When path was translated, too many symbolic links
[ENOENT] path does not exist.
[ENOTDIR] The directory portion of the path parameter does
[ENAMETOOLONG] The size of a pathname component is longer than
when is in effect, or the pathname length is
[EPERM] The current effective user ID is not the owner of
the existing object specified by the path parame‐
SEE ALSOfdetach(3C), isastream(3C), chmod(2), stat(2), fdetach(1M),