TCP Socket 3

강윤경·2022년 10월 31일
0

Network

목록 보기
6/17

클라이언트에서 자주 사용하는 함수


inet_addr()

  • 헤더
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <arpa/inet.h>
  • 함수 원형

    unsigned long int inet_addr(const char *cp);
    • Dotted-Decimal Notation IP 문자열을 long형의 숫자 IP 주소로 바꿔준다.
  • 인수

    const char *cp
    • IP
  • 반환

    • 성공 : IP 주소
    • 실패 : -1

htons()

  • 헤더
    #include <net inet/in.h>
  • 함수 원형
    unsigned short htons(unsigned short int hostshort);
  • 인수
    unsigned short int hostshort
    • short int(2byte) 데이터를 네트워크 byte order(little Endian)로 변경
  • 반환
    • 리틀 엔디안 방식으로 된 2byte 값

connect()

  • 헤더
#include <sys/types.h>
#include <sys/socket.h>
  • 함수 원형

    int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen);
    • 생성한 소켓을 통해 서버로 접속 요청
  • 인수

    int sockfd
    • 소켓 디스크립터

      struct [sockaddr](https://www.notion.so/TCP-Socket-99e47688fbbc4a74aa87349388607bbc) *serv_addr
    • 서버 주소 정보에 대한 포인터

      socklen_t addrlen
    • struct sockaddr *serv_addr 포인터가 가르키는 구조체의 크기

    • socklen_t : 헤더 <sys/socket.h>, 길이 및 크기 값에 대한 정의

  • 반환

    • 성공 : 0
    • 실패 : -1

0개의 댓글