int accept(int sockfd, struct sockaddr *clientaddr, socklen_t *addrlen);
第二个参数clientaddr是一个传出参数,accept()返回时传出客户端的地址和端口号。
获取流程:服务器调用accept()阻塞等待,处于监听端口状态,客户端调用connect()发出SYN段并阻塞等待服务器应答,服务器应答一个SYN—ACK段,客户端收到后从connect()返回,同时应答一个ACK段,服务器收到后从accept()返回。
此问答的过程中客户端会将自己的地址和端口号告诉给服务器,填充到clientaddr地址处。