[0m


UNLINK(2)	    UNIX Programmer's Manual		UNLINK(2)



[1mNAME
     [0munlink - remove directory entry

[1mSYNOPSIS
     unlink(path)
     char *path;

DESCRIPTION
     [0m_U_n_l_i_n_k removes the entry for the file _p_a_t_h from its direc-
     tory.  If this entry was the last link to the file, and no
     process has the file open, then all resources associated
     with the file are reclaimed.  If, however, the file was open
     in any process, the actual resource reclamation is delayed
     until it is closed, even though the directory entry has
     disappeared.

[1mRETURN VALUE
     [0mUpon successful completion, a value of 0 is returned.  Oth-
     erwise, a value of -1 is returned and _e_r_r_n_o is set to indi-
     cate the error.

[1mERRORS
     [0mThe _u_n_l_i_n_k succeeds unless:

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

     [EINVAL]	    The pathname contains a character with the
		    high-order bit set.

     [ENAMETOOLONG] A component of a pathname exceeded 255 char-
		    acters, or an entire path name exceeded 1023
		    characters.

     [ENOENT]	    The named file does not exist.

     [EACCES]	    Search permission is denied for a component
		    of the path prefix.

     [EACCES]	    Write permission is denied on the directory
		    containing the link to be removed.

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

     [EPERM]	    The named file is a directory and the effec-
		    tive user ID of the process is not the
		    super-user.

     [EPERM]	    The directory containing the file is marked
		    sticky, and neither the containing directory
		    nor the file to be removed are owned by the



Printed 16/2/94     Revision 1.2 of 19/10/88			1






UNLINK(2)	    UNIX Programmer's Manual		UNLINK(2)



		    effective user ID.

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

     [EIO]	    An I/O error occurred while deleting the
		    directory entry or deallocating the inode.

     [EROFS]	    The named file resides on a read-only file
		    system.

     [EFAULT]	    _P_a_t_h points outside the process's allocated
		    address space.

[1mSEE ALSO
     [0mclose(2), link(2), rmdir(2)







































Printed 16/2/94     Revision 1.2 of 19/10/88			2



[0m