HPlogo HP-UX Reference Volume 4 of 5 > f

fdetach(3C)

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

NAME

fdetach() — detach a name from a STREAMS file descriptor

SYNOPSIS

#include <stropts.h>

int fdetach(const char *path);

DESCRIPTION

The fdetach() function detaches a file descriptor from a name in the file system designated by path. path specifies the pathname of an existing object in the file system name space that was previously attached (see the fattach() reference page). As a result of the fdetach() operation, the node's status and permissions return to the state prior to the file attaching to the node. Any later operations on path will affect only the file system node and not the attached file. The user must either be superuser or own path and have write permission.

RETURN VALUE

Upon successful completion, the fdetach() function returns a value of 0 (zero). Otherwise, it returns a value of -1 is returned, and errno is set to indicate the error.

ERRORS

If any of the following conditions occurs, the fdetach() function sets errno to the value that corresponds to the condition.

[EFAULT]

The path parameter points outside the process' allocated address space.

[EACCES]

The user is not the owner of the file or does not have the correct permissions to access the file.

[EINVAL]

The object pointed to by the path parameter is not fattached to a STREAMS device or pipe.

[ELOOP]

When path was translated, too many symbolic links were found.

[ENOENT]

The path parameter points to a pathname that does not exist.

[ENOTDIR]

The directory portion of the path parameter does not exist.

[ENAMETOOLONG]

The size of a pathname component is longer than [NAME_MAX] when [_POSIX_NO_TRUNC] is in effect, or the pathname length is longer than [PATH_MAX].

[EPERM]

The current effective user ID is not the owner of the existing object specified by the path parameter, or the current effective user ID does not specify a user with the correct permissions.

STANDARDS COMPLIANCE

fdetach(): SVID3

© Hewlett-Packard Development Company, L.P.