READLINK(2) READLINK(2)
NAME
readlink - read value of a symbolic link
SYNOPSIS
int readlink(path, buf, bufsiz)
char *path, *buf;
int bufsiz;
DESCRIPTION
readlink places the contents of the symbolic link name in
the buffer buf which has size bufsiz . The contents of the
link are not null terminated when returned.
RETURN VALUE
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 errno.
ERRORS
readlink will fail and the file mode will be unchanged if:
[EPERM] The path argument contained a byte with the
high-order bit set.
[ENAMETOOLONG]
A component of a pathname exceeded NAME_MAX
characters, or an entire pathname exceeded
PATH_MAX.
[ELOOP] Too many symbolic links were encountered in
translating a pathname.
[ENOTDIR] A component of the path prefix is not a
directory.
[ENOENT] The named file does not exist.
[EACCES] Search permission is denied on a component of
the path prefix.
Page 1 May 1989
READLINK(2) READLINK(2)
[EPERM] The effective user ID does not match the owner
of the file and the effective user ID is not
the superuser.
[EINVAL] The named file is not a symbolic link.
[EFAULT] buf extends outside the process' allocated
address space.
SEE ALSO
stat(2), lstat(2), symlink(2).
Page 2 May 1989