DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

fdetach(S)


fdetatch -- detach a name from a STREAMS-based file descriptor

Syntax

cc . . . -lc
int fdetach(const char *path);

Description

The fdetach routine detaches a STREAMS-based file descriptor from a name in the filesystem. path is the pathname of the object in the filesystem name space, which was previously attached (see fattach(S)). The user must be the owner of the file or a user with the appropriate privileges. All subsequent operations on path will operate on the filesystem node and not on the STREAMS file. The permissions and status of the node are restored to the state the node was in before the STREAMS file was attached to it.

Return values

If successful, fdetach returns 0; otherwise it returns -1 and sets errno to indicate an error.

Diagnostics

Under the following conditions, the function fdetach fails and sets errno to:

[EPERM]
The effective user ID is not the owner of path or is not a user with appropriate permissions.

[ENOTDIR]
A component of the path prefix is not a directory.

[ENOENT]
path does not exist.

[EINVAL]
path is not attached to a STREAMS file.

[ENAMETOOLONG]
The size of path exceeds {PATH_MAX}, or a pathname component is longer than {NAME_MAX} while {_POSIX_NO_TRUNC} is in effect.

[ELOOP]
Too many symbolic links were encountered in translating path.

Files


/lib/libc.a
linking library

See also

fattach(S), streamio(M)

Standards conformance

fdetach is conformant with:

AT&T SVID Issue 3.


© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003