VMS Help  —  CRTL  symlink
    Creates a symbolic link containing the specified contents.

    This function is supported on OpenVMS Integrity servers and
    Alpha only.

    Format

      #include  <unistd.h>

      int symlink  (const char *link_contents, const char *link_name);

1  –  Arguments

 link_contents

    Contents of the symbolic link file, specified as a text string
    representing the pathname to which the symbolic link will point.

 link_name

    The text string representing the name of the symbolic link file.

2  –  Description

    A symbolic link is a special kind of file that points to another
    file. It is a directory entry that associates a filename with a
    text string that is interpreted as a POSIX pathname when accessed
    by certain services. A symbolic link is implemented on OpenVMS
    systems as a file of organization SPECIAL and type SYMBOLIC_LINK.

    The symlink function creates a symbolic link (link_name)
    containing the specified contents (link_contents). No attempt
    is made at link creation time to interpret the symbolic link
    contents.

    See also readlink, unlink, realpath, lchown, and lstat.

3  –  Return Values

    0                  Successful completion
    -1                 Indicates an error. errno is set to indicate
                       the error:

                       o  EACCES - Write permission is denied in the
                          directory where the symbolic link is being
                          created, or search permission is denied
                          for a component of the path prefix of link_
                          name.

                       o  EEXIST - The link_name argument names an
                          existing file or symbolic link.

                       o  ENAMETOOLONG - The length of the link_name
                          argument exceeds PATH_MAX, or a pathname
                          component is longer than NAME_MAX, or the
                          length of the link_contents argument is
                          longer than SYMLINK_MAX.

                       o  ENOSPC - The directory in which the entry
                          for the new symbolic link is being placed
                          cannot be extended because no space is
                          left on the file system containing the
                          directory, or the new symbolic link cannot
                          be created because no space is left on the
                          file system that would contain the link, or
                          the file system is out of file-allocation
                          resources.

                       o  Any errno value from creat, fsync, lstat,
                          or write.
Close Help