READLINK(2)

HOME || NAME LIBRARY SYNOPSIS DESCRIPTION RETURN VALUES ERRORS SEE ALSO HISTORY
NAME
     readlink -- read value of a symbolic link
LIBRARY
     Standard C Library (libc, -lc)
SYNOPSIS
     #include <unistd.h>

     int
     readlink(const char *path, char *buf, int bufsiz);
DESCRIPTION
     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 NUL character to buf.
RETURN VALUES
     The call returns the count of characters placed in the buffer if it suc-
     ceeds, or a -1 if an error occurs, placing the error code in the global
     variable errno.
ERRORS
     The readlink() system call will fail if:

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

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

     [ENOENT]		The named file does not exist.

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

     [ELOOP]		Too many symbolic links were encountered in translat-
			ing the pathname.

     [EINVAL]		The named file is not a symbolic link.

     [EIO]		An I/O error occurred while reading from the file sys-
			tem.

     [EFAULT]		The buf argument extends outside the process's allo-
			cated address space.
SEE ALSO
     lstat(2), stat(2), symlink(2), symlink(7)
HISTORY
     The readlink() system call appeared in 4.2BSD.