Mono.Unix.Native.Syscall.symlink Method
Create a symbolic link from oldpath to newpath.

Syntax

public static int symlink (string oldpath, string newpath)

See Also

Syscall.lstat
Syscall.stat
Syscall.symlink

Parameters

oldpath
Documentation for this section has not yet been entered.
newpath
Documentation for this section has not yet been entered.

Returns

On success, zero is returned. On error, -1 is returned and Stdlib.GetLastError returns the translated error.

Usage

The symbolic link succeeds unless:

Error Details
Errno.ENOTDIR

A component of the name2 prefix is not a directory.

Errno.ENAMETOOLONG

A component of either pathname exceeded 255 characters, or the entire length of either path name exceeded 1023 characters.

Errno.ENOENT

The named file does not exist.

Errno.EACCES

A component of the name2 path prefix denies search permission.

Errno.ELOOP

Too many symbolic links were encountered in translating the pathname.

Errno.EEXIST

The path name pointed at by the name2 argument already exists.

Errno.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 .

Errno.EROFS

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

Errno.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.

Errno.ENOSPC

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

Errno.ENOSPC

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

Errno.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.

Errno.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.

Errno.EDQUOT

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

Errno.EIO

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

Errno.EFAULT

The name1 or name2 argument points outside the process's allocated address space.

Remarks

A symbolic link newpath is created to oldpath . newpath is the name of the file created, oldpath 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.

Requirements

Namespace: Mono.Unix.Native
Assembly: Mono.Posix (in Mono.Posix.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0, 4.0.0.0