Provided by: manpages-pl-dev_20051117-1_all bug

NAZWA

       readlink - odczytanie wartości dowiązania symbolicznego

SKŁADNIA

       #include <unistd.h>

       int readlink(const char *path, char *buf, size_t bufsiz);

OPIS

       readlink  umieszcza  zawartość  dowiązania symbolicznego path w buforze
       buf, którego wielkość wynosi bufsiz.  readlink nie  dokleja  do  bufora
       buf znaku NUL.  W przypadku, gdy bufor jest za mały, aby pomieścić całą
       zawartość dowiązania,  jest  ona  obcinana  (do  ilości  znaków  równej
       długości bufsiz).

WARTOŚĆ ZWRACANA

       Wywołanie   to,  gdy  się  zakończy  pomyślnie,  zwraca  liczbę  znaków
       umieszczonych w buforze, lub -1  w  przypadku  wystąpienia  błędu.  Kod
       błędu jest umieszczany w errno.

BŁĘDY

       ENOTDIR
              Składnik ścieżki nie jest katalogiem.

       EINVAL bufsiz nie jest dodatnie.

       ENAMETOOLONG
              Scieżka, lub składnik ścieżki były za długie.

       ENOENT Plik o podanej nazwie nie istnieje.

       EACCES Brak praw przeszukiwania dla składnika ścieżki.

       ELOOP  Natrafiono   na   zbyt   wiele  dowiązań  symbolicznych  podczas
              tłumaczenia ścieżki.

       EINVAL Podany plik nie jest dowiązaniem symbolicznym.

       EIO    Podczas odczytu z systemu plików wystąpił błąd we/wy.

       EFAULT buf wskazuje poza przydzieloną procesowi przestrzeń adresową.

       ENOMEM Zabrakło dostępnej pamięci kernela.

ZGODNE Z

       X/OPEN, 4.4BSD (funkcja readlink pojawiła się w BSD 4.2).

ZOBACZ TAKŻE

       stat(2), lstat(2), symlink(2)