*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> symlink (2)              
Title
Content
Arch
Section
 

SYMLINK(2)

Contents


NAME    [Toc]    [Back]

     symlink - make symbolic link to a file

SYNOPSIS    [Toc]    [Back]

     #include <unistd.h>

     int
     symlink(const char *name1, const char *name2);

DESCRIPTION    [Toc]    [Back]

     A symbolic link name2 is created to name1 (name2 is the name
of the file
     created,  name1  is the string used in creating the symbolic
link).  Either
     name may be an arbitrary path name; the files need not be on
the same
     file  system, and the file specified by name1 need not exist
at all.

RETURN VALUES    [Toc]    [Back]

     Upon successful completion, a zero value is returned.  If an
error occurs,
  the  error  code is stored in errno and a -1 value is
returned.

ERRORS    [Toc]    [Back]

     The symbolic link succeeds unless:

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

     [ENAMETOOLONG]
                   A  component of a pathname exceeded {NAME_MAX}
characters,
                   or an entire  path  name  exceeded  {PATH_MAX}
characters.

     [ENOENT]      The named file does not exist.

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


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

     [EEXIST]      name2 already exists.

     [EIO]          An I/O error occurred while making the directory entry for
                   name2, or allocating the inode for  name2,  or
writing out
                   the link contents of name2.

     [EROFS]        The  file  name2  would reside on a read-only
file system.

     [ENOSPC]      The directory in which the entry for  the  new
symbolic link
                   is  being  placed  cannot  be extended because
there is no
                   space left on the file system  containing  the
directory.

     [ENOSPC]       The  new  symbolic link cannot be created because there is no
                   space left on the file system that  will  contain the symbolic
 link.

     [ENOSPC]      There are no free inodes on the file system on
which the
                   symbolic link is being created.

     [EDQUOT]      The directory in which the entry for  the  new
symbolic link
                   is being placed cannot be extended because the
user's quota
                   of disk blocks on the file  system  containing
the directory
                   has been exhausted.

     [EDQUOT]       The  new  symbolic link cannot be created because the user's
                   quota of disk blocks on the file  system  that
will contain
                   the symbolic link has been exhausted.

     [EDQUOT]       The user's quota of inodes on the file system
on which the
                   symbolic link is being created  has  been  exhausted.

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

     [EFAULT]      name1 or name2 points  outside  the  process's
allocated address
 space.

SEE ALSO    [Toc]    [Back]

      
      
     ln(1), link(2), readlink(2), unlink(2), symlink(7)

HISTORY    [Toc]    [Back]

     The symlink() function call appeared in 4.2BSD.

OpenBSD      3.6                           June      4,      1993
[ Back ]
 Similar pages
Name OS Title
ln Tru64 Make a hard link or a symbolic link to a file
symlink Tru64 Make a symbolic link to a file
symlink IRIX make a symbolic link to a file
mkcdsl Tru64 Make a context-dependent symbolic link (CDSL)
resymlink IRIX force a recreation of a symbolic link file
link FreeBSD make a hard file link
link OpenBSD make a hard file link
link NetBSD make a hard file link
symlink HP-UX symbolic link
symlink FreeBSD symbolic link handling
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service