unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (HP-UX-11.11)
Page:
Section:
Apropos / Subsearch:
optional field



 link(2)							     link(2)




 NAME
      link() - link to a file

 SYNOPSIS
      #include <&lt&lt&lt;unistd.h>&gt&gt&gt;

      int link(const char *path1, const char *path2);

 DESCRIPTION
      The link() system call creates a new link (directory entry) for the
      existing file.  path1 points to a path name naming an existing file.
      path2 points to a path name naming the new directory entry to be
      created.

 RETURN VALUE
      Upon successful completion, link() returns zero.	Otherwise, it
      returns -1 and sets errno (see errno(2)) to indicate the error.

 ERRORS
      The link() system call fails and no link is created if one or more of
      the following is true:

	   [EACCES]		    A component of either path prefix denies
				    search permission.

	   [EACCES]		    The requested link requires writing in a
				    directory that does not permit writing.

	   [EDQUOT]		    The user's disk quota block limit has
				    been reached for this file system.

	   [EEXIST]		    The link named by path2 exists.

	   [ENOENT]		    The file named by path1 does not exist.

	   [ENOENT]		    A component of either path prefix does
				    not exist.

	   [ENOENT]		    path2 points to a null path name.

	   [ENOSPC]		    The directory to contain the file cannot
				    be extended.

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

	   [EPERM]		    The file named by path1 is a directory
				    and the effective user ID is not a user
				    who has appropriate privileges.  Some
				    file systems return this error whenever
				    path1 names a directory, regardless of



 Hewlett-Packard Company	    - 1 -   HP-UX Release 11i: November 2000






 link(2)							     link(2)




				    the user ID.

	   [EXDEV]		    The link named by path2 and the file
				    named by path1 are on different logical
				    devices (file systems).

	   [EROFS]		    The requested link requires writing in a
				    directory on a read-only file system.

	   [EFAULT]		    path points outside the allocated
				    address space of the process.  The
				    reliable detection of this error is
				    implementation dependent.

	   [ENOENT]		    path1 or path2 is null.

	   [EMLINK]		    The maximum number of links to a file
				    would be exceeded.

	   [ENAMETOOLONG]	    Either the specified path exceeds
				    PATH_MAX bytes, or a component of either
				    specified path exceeds NAME_MAX while
				    POSIX_NO_TRUNC is in effect.

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

 DEPENDENCIES
    Series 700
      If path2 names a symbolic link, link() fails without creating the
      link, it returns -1, and sets errno to the following value:

	   [EEXIST]		    path2 names a symbolic link.

 SEE ALSO
      cp(1), link(1M), symlink(2), unlink(2), symlink(4).

 STANDARDS CONFORMANCE
      link(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1















 Hewlett-Packard Company	    - 2 -   HP-UX Release 11i: November 2000