Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 1697
- c3 초
- python subprocess
- grafana dashboard
- 정규식 문자열 출력
- 백준
- gcc 업데이트
- python os
- regex_search
- subporcess path
- InfluxDB
- influxdb 설치
- g++ 업데이트
- CentOS7
- semanage
- centos pyhon 설치
- c3 축 없애기
- selinux port 등록
- snmp
- 정규식 컴파일
- 정규식 활용
- telegraf
- python popen
- c++ 정규식
- c3 축 가리기
- snmp test
- c3 second
- linux시간으로 변경
- c3 step graph
- gcc regex
Archives
- Today
- Total
리셋 되지 말자
[함수 설명]계속 업데이트 됨 본문
#include<sys/socket.h>
int socket(int domain, int type, int protocal);
//성공시 파일 디스크립터, 실패시 -1 반환
int bind(int sockfd, struct sockaddr *myaddr, socklen_t addrlen);
//성공시 0, 실패시 -1 반환
int listen(int sockfd, int backlog);
//성공시 0, 실패시 -1 반환
int accept(int sockfd, struct sockaddr *addr, socklen_t* addrlen);
//성공시 파일 디스크립터, 실패시 -1 반환
//연결 요청이 없는 상태에서 accept함수가 호출되면, 연결요청이 있을 때까지 함수는 반환하지않는다.(무한 루프가 됨)
int connect(int sockfd, struct sockaddr* serv_addr, sockeln_t addrlen);
//성공시 0, 실패시 -1 반환
ㅇ 클라이언트 프로그램은 socket 함수호출을 통한 소켓의 생성과 connect 함수호출을 통한 서버로의 연결요청 과정만이 존재한다. (=스크립트가 간단하다)
파일 열기
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
int open(const char *path, int flag);
//성공시 파일 디스크립터, 실패 시 -1 반환
//path 파일 이름을 나타내는 문자열의 주소 값 전달
//flag 파일의 오픈 모드 정보 전달
파일 닫기
#include<unistd.h>
int close(int fd);
//성공 시 0, 실패 시 -1 반환
//fd 닫고자 하는 파일 또는 소켓의 파일 디스크립터 전달
파일에 데이터 쓰기
#include<unistd.h>
ssize_t write(int fd, const void* buf, size_t nbytes);
//성공 시 전달한 바이트 수, 실패 시 -1 반환
//fd 데이터 전송대상을 나타내는 파일 디스크립터 전달
//buf 전송할 데이터가 저장된 버퍼의 주소 값 전달
//nbytes 전송할 데이터의 바이트 수 전달
Window
윈도우 소켓 프로그래밍을 할 대에는 반드시 WSAStartup 함수를 호출해서, 프로그램에서 요구하는 윈도우 소켓의 버전을 알리고, 해당 버전을 지원하는 라이브러리의 초기화 작업을 진행해야 한다.
#include<WinSock2.h>
int WSAStartup(WORD wVersionRequested, LPWSADATA ipWSAData);
//성공 시 0, 실패 시 0이 아닌 에로 코드 값 반환
//wVersionRequested 프로그래머가 사용할 윈도우 소켓의 버전정보 전달
//ipWSAData WSADATA라는 구조체 변수의 주소값 전달
Window
윈도우 소켓 프로그래밍에서 윈도우 소켓 라이브러리 반환
#include<WinSock2.h>
int WSACleanup(void);
//성공 시 0, 실패 시 SOCKET_ERROR 반환
//위 함수를 호출하면, 할달된 윈도우 소켓 라이브러리는 윈도우 운영체제에서 반환이 되어 윈도우 소켓
//관련 함수의 호출이 불가능해진다. 따라서 더 이상 윈도우 소켓 관련 함수의 호출이 불필요할 때,
//위 함수를 호출하는 것이 원칙이나 프로그래임 종료되기 직전에 호출하는 것이 보통이다.
'socket' 카테고리의 다른 글
[windows] WORD, LPWSADATA (0) | 2020.04.03 |
---|---|
[window] socket 종속성 추가(visual studio) (0) | 2020.04.03 |
파일 디스크립터와 소켓 (0) | 2020.04.03 |
file write, read (linux gcc) (0) | 2020.04.03 |
socket 기본 server, client 소스 (0) | 2020.04.02 |
Comments