READLINK(2)

NOMBRE
readlink - lee el valor de un enlace simbólico

SINOPSIS
#include <unistd.h>

int readlink(const char *camino, char *buf, size_t tambuf);

DESCRIPCIÓN
Readlink pone los contenidos del enlace simbólico camino en el búfer buf, que tiene de tamaño tambuf. Readlink no añade un carácter NUL a buf. Truncará los contenidos (hasta una longitud de tambuf caracteres), en caso de que el búfer sea demasiado pequeño para alojar todo el contenido.

VALORES DEVUELTOS
La llamada devuelve el número de caracteres puestos en el búfer si acaba con éxito, o un -1 si ocurre un error, poniendo el código correspondiente de error en la variable global errno.

ERRORES

ENOTDIR
    Un componente del prefijo del camino no es un directorio.

EINVAL
    El nombre de camino contiene un carácter con el bit más significativo a 1.

ENAMETOOLONG
    Un componente del nombre de camino se excedía de 255 caracteres, o un nombre de camino entero se excedía de 1023 caracteres.

ENOENT
    El fichero nombrado no existe.

EACCES
    Se deniega el permiso de búsqueda para un componente del prefijo del camino.

ELOOP
    Se encontraron demasiados enlaces simbólicos al traducir el nombre del fichero.

EINVAL
    El fichero nombrado no es un enlace simbólico.

EIO Ocurrió un error de E/S al leer del sistema de ficheros.

EFAULT
    Buf se extiende afuera del espacio de direcciones reservado por el proceso.

CONFORME CON
4.4BSD (la llamada al sistema readlink apareció en 4.2BSD).

CONSULTE TAMBIÉN
stat(2), lstat(2), symlink(2)