Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ fattach(3C) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fdetach(1M)

fdetach(3C)

isastream(3C)

streamio(7)






       fattach(3C)                                              fattach(3C)


       NAME
             fattach - attach STREAMS-based file descriptor to file system
             object

       SYNOPSIS
             #include <unistd.h>
             int fattach(int fildes, const char *path);

       DESCRIPTION
             The fattach routine 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 effective user ID of the
             calling process must be the owner of the file and have write
             permissions, or the calling process must have appropriate
             privilege (P_OWNER).  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 associated with it.

             The attributes of the named stream [see stat(2)], are
             initialized 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
             If successful, fattach returns 0; otherwise it returns -1 and
             sets errno to indicate an error.

          Errors
             Under the following conditions, the function fattach fails and
             sets errno to:
             EACCES            Search permission is denied on a component
                               of the path prefix.
             EACCES            The user is the owner of the file named by
                               path but does not have write permissions on
                               path or fildes is locked.
             EBADF             fildes is not a valid open file descriptor.
             ENOENT            path does not exist.




                           Copyright 1994 Novell, Inc.               Page 1













      fattach(3C)                                              fattach(3C)


            ENOTDIR           A component of a path prefix is not a
                              directory.
            EINVAL            fildes does not represent a STREAMS file.
            EPERM             The effective user ID of the calling process
                              is not the owner of the file named by path
                              nor does the process have appropriate
                              privilege (P_OWNER).
            EBUSY             path is currently a mount point or has a
                              STREAMS file descriptor attached it.
            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.
            ELOOP             Too many symbolic links were encountered in
                              translating path.
            EREMOTE           path is a file in a remotely mounted
                              directory.

      REFERENCES
            fdetach(1M), fdetach(3C), isastream(3C), streamio(7)





























                          Copyright 1994 Novell, Inc.               Page 2








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026