#include "unp.h"
int main(int argc, char *argv[])
{
int listenfd, connfd;
pid_t childpid;
socklen_t clilen;
struct sockaddr_in cliaddr, servaddr; //一般是程序員填寫sockaddr_in 然後轉化成sockaddr類型傳到內核
listenfd = Socket(AF_INET, SOCK_STREAM, 0); //用制定的協議創建一個socket,AF_INET表示ipv4,SOCK_STREAM表示TCP
bzero(&servaddr, sizeof(servaddr)); //將服務器地址結構體清零
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s.addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(SERV_PORT);
Bind(listenfd, (SA*) &servaddr, sizeof(servaddr);
Listen(listenfd, LISTENQ);
while(1)
{
connfd = fork();
if(0 == connfd)
{
Close(listenfd);
str_echo(connfd);
exit(0)
}
Close(connfd);
}
return 0;
}
TCP echo server demo
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.