2、連接並未建立,等待直到進入TCPF_ESTABLISHED或者TCPF_CLOSE_WAIT
1、ERESTARTSYS ---當前套接字上有事件,調度時間到了
2、EINTR--當前套接字上有事件,被中斷
3、EPIPE --連接狀體沒不是TCPF_SYN_SENT | TCPF_SYN_RECV,直接返回
4、EAGAIN --非阻塞,直接返回
3、檢查當前的shutdown標誌和連接上是否有錯誤
1、EPIPE
4、可能發送緩衝區不足
發送的字節數爲0,需要重新發送
5、可能內存不足
發送的字節數爲0,需要重新發送
6、返回發送的字節數
表示發送的字節數
參考內核代碼版本2.6.32
int tcp_sendmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *msg,size_t size)