int Socket(int domain,int type,int protocol)
{
int sockfd=socket(domain,type,protocol);
if(sockfd<0)
err_quit("socket error");
return sockfd;
}
int Bind(int sockfd,const struct sockaddr* addr,socklen_t addrlen)
{
int ret=bind(sockfd,addr,addrlen);
if(ret<0)
err_quit("bind error");
return ret;
}
int Listen(int sockfd,int backlog)
{
int ret=listen(sockfd,backlog);
if(ret<0)
err_quit("listen error");
return ret;
}
int Accept(int sockfd,struct sockaddr* addr,socklen_t* addrlen)
{
int ret;
again:
ret=accept(sockfd,addr,addrlen);
if(ret<0)
{
if(errno==EINTR)
goto again;
else
err_quit("accept error");
}
return ret;
}
ssize_t Read(int fd,void* buf,size_t count)
{
int ret=read(fd,buf,count);
if(ret<0)
err_quit("read error");
return ret;
}
ssize_t Write(int fd,const void* buf,size_t count)
{
int ret=write(fd,buf,count);
if(ret<0)
err_quit("write error");
return ret;
}
int Close(int fd)
{
int ret=close(fd);
if(ret<0)
err_quit("close error");
return ret;
}
void err_quit(const char* msg)
{
perror(msg);
exit(0);
}
持续更新!