READLINK

read value of a symbolic link

SYNOPSIS

#include <unistd.h>
int readlink(const char *path char *buf int bufsiz);

LIBRARY

Standard C Library (libc, -lc)

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 succeeds, 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 translating the pathname.
  • [EINVAL] The named file is not a symbolic link.
  • [EIO] An I/O error occurred while reading from the file system.
  • [EFAULT] The buf argument extends outside the process’s allocated address space.

HISTORY

The readlink system call appeared in

Comments

Add Comment
  1. Submitting...