GETHOSTNAME(2)

이름
gethostname, sethostname - 호스트의 이름을 알아내거나 설정한다.

사용법
#include <unistd.h>

int gethostname(char *name, size_t len);
int sethostname(const char *name, size_t len);

설명
이 함수들은 현재 프로세서(processor)의 호스트 이름을 접근하거나 변경시킬때 사용된다.

반환값
성공시, 0이 리턴된다. 에러시, -1이 리턴되며, errno는 적당한 값으로 설정된다.

에러

EINVAL
    len가 음수이거나, sethostname시에 len이 최대 허용값보다 크거나, Linux/i386에서 gethostname시에 len이 실제 크기보다 작다.

EPERM
    sethostname에서, 호출하는 프로세스의 권한이 슈퍼 유저가 아니다.

EFAULT
    name이 유효한 주소가 아니다.

호환
SVr4, 4.4BSD (이 함수는 4.2BSD에서 처음으로 나타났다). POSIX.1은 이 함수를 정의하지 않았다. 그러나, ISO/IEC 9945-1:1990는 B.4.4.1에서 언급하였다.

버그
gethostname의 다른 구현에서는 name이 길 때 조차도, len 바이트를 성공적으로 리턴한다. Linux/Alpha는 이런 방법으로 컴파일된다. 그러나, Linux/i386는 이런 경우 EINVAL를 리턴한다.

주의
Linux/Alpha에서, gethostname은 시스템 콜이다. Linux/i386에서, gethostname는 uname(2)을 호출하여 라이브러리 차원에서 수행된다.

관련 항목
getdomainname(2), setdomainname(2), uname(2)

역자
정강훈 <skyeyes@soback.kornet.net>, 2000년 5월 2일