Manpages

이 름

getservent, getservbyname, getservbyport, setservent, endservent - 서 비 스 엔 트 리 를 가 져 온 다 .

사 용 법

#include <netdb.h>

struct servent *getservent(void);

struct servent *getservbyname(const char *name, const char *proto);

struct servent *getservbyport(int port, const char *proto);

void setservent(int stayopen);

void endservent(void);

설 명

getservent() 함 수 는 파 일 /etc/services에 서 다 음 라 인 을 읽 고 그 라 인 에 서 뽑 아 낸 필 드 들 을 포 함 하 는 구 조 체 servent를 반 한 한 다 . /etc/services 파 일 은 필 요 하 다 면 열 려 진 다 .

getservbyname() 함 수 는 /etc/services에 서 프 로 토 콜 proto을 사 용 하 며 서 비 스 name 과 일 치 하 는 라 인 에 해 당 하 는 servent 구 조 체 를 반 환 한 다 .

getservbyport() 함 수 는 프 로 토 콜 proto을 사 용 하 며 네 트 웍 바 이 트 순 서 로 주 어 진 포 트 port과 일 치 하 는 servent 구 조 체 를 반 환 한 다 .

setservent() 함 수 는 /etc/services 파 일 을 열 고 다 시 원 래 대 로 돌 려 놓 는 다 . 만 일 stayopen 가 참 (1)이 라 면 , 파 일 은 getservbyname()getservbyport() 호 출 시 닫 혀 지 지 않 는 다 .

endservent() 함 수 는 /etc/services를 닫 는 다 .

servent 구 조 체 는 다 음 처 럼 <netdb.h>에 정 의 되 어 있 다 :

struct servent {

char

*s_name;

/* 공 식 적 인 서 비 스 이 름 */

char

**s_aliases;

/* 별 칭 리 스 트 */

int

s_port;

/* 포 트 번 호 */

char

*s_proto;

/* 사 용 하 는 프 로 토 콜 */

}

servent 구 조 체 의 멤 버 는 :

s_name

서 비 스 의 공 식 적 인 이 름 .

s_aliases

서 비 스 를 위 해 선 택 할 수 있 는 널 로 종 료 된 리 스 트

s_port

네 트 웍 바 이 트 순 서 로 주 어 진 서 비 스 의 포 트 번 호

s_proto

이 서 비 스 에 서 사 용 하 는 프 로 토 콜 이 름

반 환 값

getservent(), getservbyname() 그 리 고 getservbyport() 함 수 는 servent 구 조 체 를 반 환 하 거 나 , 만 일 에 러 가 일 어 나 거 나 파 일 의 끝 에 도 착 한 다 면 NULL 포 인 터 를 반 환 한 다 .

파 일

/etc/services

서 비 스 데 이 터 파 일

호 환

BSD 4.3

관 련 항 목

getprotoent(3), getnetent(3), services(5)

역 자

정 강 훈 <skyeyes [AT] soback.net>, 2001년 4월 30일