Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ unlink(2) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

close(2)

link(2)

open(2)

rmdir(2)

rm(1)



unlink(2)                 SYSTEM CALLS                  unlink(2)



NAME
     unlink - remove directory entry

SYNOPSIS
     #include <unistd.h>

     int unlink(const char *path);

DESCRIPTION
     unlink removes the directory entry named by  the  path  name
     pointed  to  by  path.  and decrements the link count of the
     file referenced by the directory entry.  When all links to a
     file have been removed and no process has the file open, the
     space occupied by the file is freed and the file  ceases  to
     exist.  If one or more processes have the file open when the
     last link is removed, space occupied  by  the  file  is  not
     released  until all references to the file have been closed.
     If path is a symbolic link, the symbolic  link  is  removed.
     path  should  not  name  a  directory unless the process has
     appropriate privileges.  Applications should  use  rmdir  to
     remove directories.  Upon successful completion unlink marks
     for update the stctime and stmtime fields  of  the  parent
     directory.  Also,  if the file's link count is not zero, the
     stctime field of the file is marked for update.

     The named file is unlinked unless one or more of the follow-
     ing are true:

     EACCES              Search permission is denied for  a  com-
                         ponent of the path prefix.

     EACCES              Write permission is denied on the direc-
                         tory containing the link to be removed.

     EACCES              The parent directory has the sticky  bit
                         set  and the file is not writable by the
                         user; the user does not own  the  parent
                         directory  and the user does not own the
                         file;

     EBUSY               The entry to be unlinked  is  the  mount
                         point for a mounted file system.

     EFAULT              path points outside the process's  allo-
                         cated address space.

     EINTR               A signal was caught  during  the  unlink
                         system call.

     ELOOP               Too many symbolic links were encountered
                         in translating path.




                                                                1





unlink(2)                 SYSTEM CALLS                  unlink(2)



     EMULTIHOP           Components of path  require  hopping  to
                         multiple  remote  machines  and the file
                         system does not allow it.

     ENAMETOOLONG        The length of the path argument  exceeds
                         {PATHMAX}, or the length of a path com-
                         ponent    exceeds    {NAMEMAX}    while
                         POSIXNOTRUNC is in effect.

     ENOENT              The named file does not exist  or  is  a
                         null   pathname.   The  user  is  not  a
                         super-user.

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

     EPERM               The named file is a  directory  and  the
                         effective  user ID of the process is not
                         super-user.

     ETXTBSY             The entry to be  unlinked  is  the  last
                         link  to  a pure procedure (shared text)
                         file that is being executed.

     EROFS               The directory entry to  be  unlinked  is
                         part of a read-only file system.

     ENOLINK             path points to a remote machine and  the
                         link   to  that  machine  is  no  longer
                         active.

SEE ALSO
     close(2), link(2), open(2), rmdir(2).
     rm(1) in the User's Reference Manual.

DIAGNOSTICS
     Upon successful completion, a value of 0 is returned.   Oth-
     erwise,  a value of -1 is returned and errno is set to indi-
     cate the error.
















                                                                2



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