fattach(3c) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨페이지이름
검색(S)

fattach(3c)

Name
     fattach - attach a STREAMS- or doors-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-  or  doors-based
     file  descriptor to an object in the file system name space,
     effectively associating a name with fildes. The fildes argu-
     ment  must  be  a  valid open file descriptor representing a
     STREAMS or doors file. The path argument 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  per-
     missions.  All subsequent operations on path will operate on
     the STREAMS or doors file until the STREAMS or doors file is
     detached  from the node. The fildes argument can be attached
     to more than one path, that is, a stream or  door  can  have
     several names associated with it.


     The attributes of the named stream or  door  (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 or doors device associated with fildes.
     If  any  attributes  of  the named stream or door are subse-
     quently 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
                     descriptor.


     EBUSY
                     The path argument is currently a mount point
                     or  has  a  STREAMS or doors file descriptor
                     attached to it.


     EINVAL
                     The path argument is a file  in  a  remotely
                     mounted directory.


     EINVAL
                     The fildes argument  does  not  represent  a
                     STREAMS or doors file.


     ELOOP
                     Too many symbolic links were encountered  in
                     translating 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 direc-
                     tory.


     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:



     tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i)  ATTRI-
     BUTE  TYPEATTRIBUTE  VALUE  _ Interface StabilityCommitted _
     MT-LevelMT-Safe _ StandardSee standards(5).

See Also
     fdetach(1M), chmod(2), mount(2),  stat(2),  door_create(3C),
     fdetach(3C),   isastream(3C),  attributes(5),  standards(5),
     streamio(7I)


     STREAMS Programming Guide
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3