이 름
getsockname − 소 켓 이 름 을 가 진 다
사 용 법
#include <sys/socket.h>
int getsockname(int s , struct sockaddr * name , socklen_t * namelen )
설 명
Getsockname 은 지 정 한 소 켓 의 현 재 이 름 을 반 환 한 다 . namelen 매 개 변 수 는 name. 에 의 해 지 정 된 공 간 의 양 을 측 정 해 야 하 기 때 문 에 초 기 치 로 맞 추 어 야 한 다 . 반 환 시 에 는 , 이 것 은 반 환 된 name의 실 제 크 기 를 포 함 한 다 .(bytes로 )
반 환 값
성 공 시 에 는 .0을 반 환 하 고 에 러 시 에 는 −1을 반 환 한 다 . 그 리 고 , errno 는 적 절 히 설 정 된 다 .
에 러
EBADF |
독 립 변 수 s 가 invalid descriptor이 다 . |
ENOTSOCK
독 립 변 수 s 가 스 텍 이 아 니 고 파 일 이 다 .
ENOBUFS
시 스 템 상 의 리 소 스 가 작 동 하 는 데 충 분 하 지 않 다 .
EFAULT |
name 매 개 변 수 가 프 로 세 스 주 소 영 역 의 가 능 한 부 분 이 아 닌 메 모 리 를 지 정 한 다 . |
호 환
SVr4, 4.4BSD ( getsockname 함 수 호 출 이 4.2BSD에 있 다 ). SVr4 는 부 가 적 인 ENOMEM와 ENOSR 에 러 코 드 에 관 한 설 명 도 포 함 되 어 있 다 .
주 의
getsockname 의 세 번 째 독 립 변 수 는 실 제 로 는 ’int *’ (이 것 은 BSD 4.* 와 libc4 와 libc5가 가 지 고 있 는 것 이 다 .)이 다 . 현 제 의 socklen_t에 는 약 간 의 POSIX confusion이 있 다 . draft standard는 아 직 채 택 되 지 않 았 다 . 하 지 만 glibc2 는 이 미 이 것 을 따 르 고 있 고 , 이 것 은 socklen_t도 가 지 고 있 다 . accept(2) 도 보 자 .
관 련 항 목
역 자
ASPLINUX<man [AT] asp-linux.kr>, 2000년 7월 27일