Lines Matching refs:tcphdr
83 /** Allocate a pbuf and create a tcphdr at p->payload, used for output
97 struct tcp_hdr *tcphdr;
102 tcphdr = (struct tcp_hdr *)p->payload;
103 tcphdr->src = htons(pcb->local_port);
104 tcphdr->dest = htons(pcb->remote_port);
105 tcphdr->seqno = seqno_be;
106 tcphdr->ackno = htonl(pcb->rcv_nxt);
107 TCPH_HDRLEN_FLAGS_SET(tcphdr, (5 + optlen / 4), TCP_ACK);
108 tcphdr->wnd = htons(pcb->rcv_ann_wnd);
109 tcphdr->chksum = 0;
110 tcphdr->urgp = 0;
133 if ((TCPH_FLAGS(last_unsent->tcphdr) & (TCP_SYN | TCP_FIN | TCP_RST)) == 0) {
135 TCPH_SET_FLAG(last_unsent->tcphdr, TCP_FIN);
191 seg->tcphdr = (struct tcp_hdr *)seg->p->payload;
192 seg->tcphdr->src = htons(pcb->local_port);
193 seg->tcphdr->dest = htons(pcb->remote_port);
194 seg->tcphdr->seqno = htonl(seqno);
196 TCPH_HDRLEN_FLAGS_SET(seg->tcphdr, (5 + optlen / 4), flags);
198 seg->tcphdr->urgp = 0;
610 ntohl(seg->tcphdr->seqno),
611 ntohl(seg->tcphdr->seqno) + TCP_TCPLEN(seg)));
688 if (seg != NULL && seg->tcphdr != NULL && ((apiflags & TCP_WRITE_FLAG_MORE)==0)) {
689 TCPH_SET_FLAG(seg->tcphdr, TCP_PSH);
778 LWIP_ASSERT("seg->tcphdr not aligned", ((mem_ptr_t)seg->tcphdr % MEM_ALIGNMENT) == 0);
783 ntohl(seg->tcphdr->seqno),
784 ntohl(seg->tcphdr->seqno) + TCP_TCPLEN(seg),
845 struct tcp_hdr *tcphdr;
859 tcphdr = (struct tcp_hdr *)p->payload;
870 tcp_build_timestamp_option(pcb, (u32_t *)(tcphdr + 1));
875 tcphdr->chksum = inet_chksum_pseudo(p, &(pcb->local_ip), &(pcb->remote_ip),
930 ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len > wnd)) {
957 ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len,
958 ntohl(seg->tcphdr->seqno), pcb->lastack));
963 ntohl(seg->tcphdr->seqno) - pcb->lastack + seg->len <= wnd) {
965 (TCPH_FLAGS(seg->tcphdr) & TCP_RST) == 0);
980 ntohl(seg->tcphdr->seqno) + seg->len -
982 ntohl(seg->tcphdr->seqno), pcb->lastack, i));
989 TCPH_SET_FLAG(seg->tcphdr, TCP_ACK);
994 snd_nxt = ntohl(seg->tcphdr->seqno) + TCP_TCPLEN(seg);
1010 if (TCP_SEQ_LT(ntohl(seg->tcphdr->seqno), ntohl(useg->tcphdr->seqno))) {
1014 TCP_SEQ_LT(ntohl((*cur_seg)->tcphdr->seqno), ntohl(seg->tcphdr->seqno))) {
1060 seg->tcphdr->ackno = htonl(pcb->rcv_nxt);
1063 seg->tcphdr->wnd = htons(pcb->rcv_ann_wnd);
1069 opts = (u32_t *)(void *)(seg->tcphdr + 1);
1107 pcb->rtseq = ntohl(seg->tcphdr->seqno);
1112 htonl(seg->tcphdr->seqno), htonl(seg->tcphdr->seqno) +
1115 len = (u16_t)((u8_t *)seg->tcphdr - (u8_t *)seg->p->payload);
1120 seg->p->payload = seg->tcphdr;
1122 seg->tcphdr->chksum = 0;
1134 seg->p->tot_len == (TCPH_HDRLEN(seg->tcphdr) * 4));
1140 IP_PROTO_TCP, seg->p->tot_len, TCPH_HDRLEN(seg->tcphdr) * 4);
1147 seg->tcphdr->chksum = FOLD_U32T(acc);
1149 if (chksum_slow != seg->tcphdr->chksum) {
1152 seg->tcphdr->chksum, chksum_slow));
1153 seg->tcphdr->chksum = chksum_slow;
1158 seg->tcphdr->chksum = inet_chksum_pseudo(seg->p, &(pcb->local_ip),
1200 struct tcp_hdr *tcphdr;
1209 tcphdr = (struct tcp_hdr *)p->payload;
1210 tcphdr->src = htons(local_port);
1211 tcphdr->dest = htons(remote_port);
1212 tcphdr->seqno = htonl(seqno);
1213 tcphdr->ackno = htonl(ackno);
1214 TCPH_HDRLEN_FLAGS_SET(tcphdr, TCP_HLEN/4, TCP_RST | TCP_ACK);
1215 tcphdr->wnd = PP_HTONS(TCP_WND);
1216 tcphdr->chksum = 0;
1217 tcphdr->urgp = 0;
1220 tcphdr->chksum = inet_chksum_pseudo(p, local_ip, remote_ip,
1291 TCP_SEQ_LT(ntohl((*cur_seg)->tcphdr->seqno), ntohl(seg->tcphdr->seqno))) {
1329 ntohl(pcb->unacked->tcphdr->seqno)));
1367 struct tcp_hdr *tcphdr;
1382 tcphdr = (struct tcp_hdr *)p->payload;
1385 tcphdr->chksum = inet_chksum_pseudo(p, &pcb->local_ip, &pcb->remote_ip,
1417 struct tcp_hdr *tcphdr;
1442 is_fin = ((TCPH_FLAGS(seg->tcphdr) & TCP_FIN) != 0) && (seg->len == 0);
1446 p = tcp_output_alloc_header(pcb, 0, len, seg->tcphdr->seqno);
1451 tcphdr = (struct tcp_hdr *)p->payload;
1455 TCPH_FLAGS_SET(tcphdr, TCP_ACK | TCP_FIN);
1466 tcphdr->chksum = inet_chksum_pseudo(p, &pcb->local_ip, &pcb->remote_ip,