CONFSTR(3)

명칭
confstr - 캐릭터 라인치의 설정 가능 변수를 얻는다

프로그램 라이브러리
libc

서식
<unistd.h> size_t confstr(int name, char *buf, size_t len)

해설
이 인터페이스는, sysctl(3) 에 의해 구식이 되어 있습니다.

confstr() 함수는, 시스템 구성에 의해 정의되고 있는 캐릭터 라인치를, 어플리케이션이 취득하기 위한 방식을 제공합니다.

name 인수는, 조회되는 시스템 변수를 지정합니다. 각 이름의 값이 되는 상징적 정수는, 인클루드 파일 <unistd.h> 의 안에 있습니다. len 인수는, 인수 buf 하지만 참조하는 버퍼의 사이즈를 지정합니다. len 하지만 0 이 아닌 경우, buf (은)는 NULL 가 아닌 포인터로, name (은)는 값을 가지고 있어 그 값 중 최고 len - 1 바이트가 버퍼 buf 에 카피됩니다. 카피된 값의 말미는 반드시 눌 캐릭터입니다.

이용 가능한 값은 다음과 같습니다.

_CS_PATH
    전표준 유틸리티를 검출한다 PATH 환경 변수의 값을 돌려줍니다.

반환값
confstr() 의 호출이 정상적으로 완료하지 않는 경우,-1 가 돌려주어져 해당한다 errno 하지만 설정됩니다. 또 변수에, 시스템 구성에 의해 정의되고 있는 값이 없는 경우 0 이 돌려주어 errno (은)는 변경되지 않습니다. 그 이외의 경우는, 설정 정의되었다 값전체를 넣는데 필요한 버퍼 사이즈가 돌려주어집니다. 이 사이즈가 인수 len 보다 큰 경우, buf 안의 캐릭터 라인은 잘라 버릴 수 있고 있습니다.

에러
confstr() 함수가 에러가 되면(자), 프로그램 라이브러리 함수 malloc(3) (와)과 sysctl(3) 그리고 규정되고 있는 에러를 errno (으)로 설정하는 일이 있습니다.

게다가 다음의 에러가 리포트되는 일이 있습니다.

[EINVAL]
    name 인수의 값은 무효입니다.

관련 항목
sysctl(3)

역사
confstr() 함수는 4.4BSD 그리고 처음 등장했습니다.