Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ unlink(2) — DG/UX 4.00

Media Vault

Software Library

Restoration Projects

Artifacts Sought



                                                                unlink(2)



        _________________________________________________________________
        unlink                                                System Call
        Remove a directory entry.
        _________________________________________________________________


        SYNTAX

        int   unlink  (path)
        char *          path;


        PARAMETERS

        path           Address of a pathname.


        DESCRIPTION

        Unlink removes the directory entry named by the pathname pointed
        to by <path> from the filename store.  A symbolic link occurring
        at the end of <path> will not be followed.  The named file must
        reside on a file system device mounted read-write.

        The subject file must be of type `ordinary-disk-file', `block-
        special-file', `character-special-file', `fifo-special-file',
        `socket', or `symbolic-link'.

        It is an error to attempt an unlink call on a directory file.

        Removing a reference to a file in the filename store has the
        following consequences:

        *    The subject file's link count attribute is decremented.

        *    The subject file's `time-last-attribute-changed' attribute
             is set to the current time.

        *    If the subject file has no more links in the filename store
             and no entries in the channel store, the file is removed
             from the flat file store.  Thus, unlink deletes inactive
             files.

        *    If the subject file has no more links in the filename store
             but is still open, then the file is removed from the
             filesystem when it is closed for the last time.

        If unlink fails, no changes are made to the named file.






        DG/UX 4.00                                                 Page 1
               Licensed material--property of copyright holder(s)





                                                                unlink(2)



        ACCESS CONTROL

        The calling process must have permission to resolve <path>.

        The calling process must have write permission to the directory
        containing the entry to be removed.


        RETURN VALUE

        0              The filename was successfully removed.


        -1             An error occurred.  Errno is set to indicate the
                       error.


        EXCEPTIONS

        Errno may be set to one of the following error codes:


        EACCES         Permission to modify the directory containing the
                       entry to be removed is denied to the calling
                       process


        EBUSY          The named file is the mount point of a file system
                       device.


        EPERM          The named file is a directory.


        EROFS          The named file is contained on a read-only file
                       system device.


        ETXTBSY        The last link of a pure procedure may not be
                       removed while a file is executing.


        ENOENT         The file the pathname resolved to does not exist.


        ENOENT         A non-terminal component of the pathname does not
                       exist.


        ENOTDIR        A non-terminal component of the pathname was not a
                       directory or symbolic link.



        DG/UX 4.00                                                 Page 2
               Licensed material--property of copyright holder(s)





                                                                unlink(2)



        ENAMETOOLONG   The pathname exceeds the length limit for
                       pathnames.


        ENAMETOOLONG   A component of the pathname exceeds the length
                       limit for filenames.


        ENOMEM         There are not enough system resources to resolve
                       the pathname or to expand a symbolic link.


        ELOOP          The number of symbolic links encountered during
                       pathname resolution exceeded MAXSYMLINKS.  A
                       symbolic link cycle is suspected.


        EPERM          The pathname contains a character not in the
                       allowed character set.


        EFAULT         The pathname does not completely reside in the
                       process's address space or the pathname does not
                       terminate in the process's address space.


        SEE ALSO

        The related manual sections:  rm(1),
        close(2), link(2), open(2).
























        DG/UX 4.00                                                 Page 3
               Licensed material--property of copyright holder(s)



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