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.
VALOR DEVUELTO¶
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
errno.
ERRORES¶
- ENOTDIR
- Un componente del prefijo del camino no es un directorio.
- EINVAL
- tambuf no es positivo.
- ENAMETOOLONG
- El camino o un componente del camino es demasiado largo.
- 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.
- ENOMEM
- No hay suficiente memoria en el núcleo.
X/OPEN, 4.4BSD (la llamada al sistema
readlink apareció en
4.2BSD).
VÉASE TAMBIÉN¶
stat(2),
lstat(2),
symlink(2)