Mono Class Library: Mono.Unix.Native.Syscall Overview | Members

Mono.Unix.Native.Syscall.readlink Method

Gets the destination of a symlink as a string.

public static int readlink (string path, System.Text.StringBuilder buf, ulong bufsiz)

See Also

Syscall.lstat
Syscall.stat
Syscall.symlink

Parameters

path
Documentation for this section has not yet been entered.
buf
Documentation for this section has not yet been entered.
bufsiz
Documentation for this section has not yet been entered.

Returns

The call returns the count of characters placed in the buffer if it succeeds, or a -1 if an error occurs, placing the error code in the global variable Stdlib.GetLastError .

Usage

The readlink() system call will fail if:

Error Details
Errno.ENOTDIR

A component of the path prefix is not a directory.

Errno.ENAMETOOLONG

A component of a pathname exceeded 255 characters, or an entire path name exceeded 1023 characters.

Errno.ENOENT

The named file does not exist.

Errno.EACCES

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

Errno.ELOOP

Too many symbolic links were encountered in translating the pathname.

Errno.EINVAL

The named file is not a symbolic link.

Errno.EIO

An I/O error occurred while reading from the file system.

Errno.EFAULT

The buf argument extends outside the process's allocated address space.

Remarks

The readlink() system call places the contents of the symbolic link path in the buffer buf , which has size bufsiz . The readlink() system call does not append a null character to buf .

Requirements

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