readlink

명칭
     readlink — 기호 연결의 값을 독해

프로그램 라이브러리
     Standard C Library (libc, -lc)

서식
     <unistd.h> int readlink(const char *path, char *buf, int bufsiz)

해설
     readlink() (은)는, bufsiz 사이즈인 버퍼 buf 안에 기호 연결 path 의 내용을 배치합니다.  readlink()
     함수는 buf 의 말미에 NUL 캐릭터를 추가하지 않습니다.

반환값
     호출이 정상적으로 완료했을 경우, 버퍼내에 배치한 캐릭터수를 돌려줍니다.  에러가 일어났을 경우는 -1 을 돌려주어, 에러 코드가
     글로벌 변수 errno (으)로 설정됩니다.

에러
     readlink() (은)는 다음의 경우에 실패합니다.

     [ENOTDIR]          패스의 원가요소중에 디렉토리 이외의 것이 포함되어 있습니다.

     [ENAMETOOLONG]     패스명의 원가요소가 255 캐릭터를 넘고 있는지, 또는 패스명 전체가 1023 캐릭터를 넘고
                        있습니다.

     [ENOENT]           지정된 파일이 존재하지 않습니다.

     [EACCES]           지정된 패스에는, 검색이 허가되어 있지 않은 디렉토리가 포함되어 있습니다.

     [ELOOP]            패스명을 변환할 경우에 검출된 기호 연결이 너무 많습니다.

     [EINVAL]           지정의 파일이 기호 연결이 아닙니다.

     [EIO]              파일 시스템으로부터 독해간에 입출력 에러가 발생했습니다.

     [EFAULT]           buf (은)는, 프로세스에 할당할 수 있었던 address 공간의 범위외를 가리키고 있습니다.

관련 항목
     lstat(2), stat(2), symlink(2), symlink(7)

역사
     readlink() 함수는 4.2BSD 그리고 등장했습니다.