mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-11-19 05:10:40 +00:00
Fix alignment checking of tcphdr: check for MEM_ALIGNMENT, not for 4
This commit is contained in:
parent
fa092c47c8
commit
4ace50a7d7
@ -773,6 +773,7 @@ tcp_enqueue_flags(struct tcp_pcb *pcb, u8_t flags)
|
|||||||
TCP_STATS_INC(tcp.memerr);
|
TCP_STATS_INC(tcp.memerr);
|
||||||
return ERR_MEM;
|
return ERR_MEM;
|
||||||
}
|
}
|
||||||
|
LWIP_ASSERT("seg->tcphdr not aligned", ((mem_ptr_t)seg->tcphdr % MEM_ALIGNMENT) == 0);
|
||||||
LWIP_ASSERT("tcp_enqueue_flags: invalid segment length", seg->len == 0);
|
LWIP_ASSERT("tcp_enqueue_flags: invalid segment length", seg->len == 0);
|
||||||
|
|
||||||
LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_TRACE,
|
LWIP_DEBUGF(TCP_OUTPUT_DEBUG | LWIP_DBG_TRACE,
|
||||||
@ -1067,7 +1068,7 @@ tcp_output_segment(struct tcp_seg *seg, struct tcp_pcb *pcb)
|
|||||||
|
|
||||||
/* Add any requested options. NB MSS option is only set on SYN
|
/* Add any requested options. NB MSS option is only set on SYN
|
||||||
packets, so ignore it here */
|
packets, so ignore it here */
|
||||||
LWIP_ASSERT("seg->tcphdr not aligned", ((mem_ptr_t)(seg->tcphdr + 1) % 4) == 0);
|
LWIP_ASSERT("seg->tcphdr not aligned", ((mem_ptr_t)seg->tcphdr % MEM_ALIGNMENT) == 0);
|
||||||
opts = (u32_t *)(void *)(seg->tcphdr + 1);
|
opts = (u32_t *)(void *)(seg->tcphdr + 1);
|
||||||
if (seg->flags & TF_SEG_OPTS_MSS) {
|
if (seg->flags & TF_SEG_OPTS_MSS) {
|
||||||
TCP_BUILD_MSS_OPTION(*opts);
|
TCP_BUILD_MSS_OPTION(*opts);
|
||||||
|
Loading…
Reference in New Issue
Block a user