Merge branch 'fix/lwip_sec_high_v5.2' into 'release/v5.2'

fix(lwip): high severity lwip fixes (v5.2)

See merge request espressif/esp-idf!50597
This commit is contained in:
Euripedes Rocha
2026-07-29 06:38:36 +02:00
2 changed files with 11 additions and 0 deletions
@@ -1174,11 +1174,19 @@ static s16_t parse_msg(dhcps_t *dhcps, struct dhcps_msg *m, u16_t len)
pnode = NULL;
} else {
pdhcps_pool = (struct dhcps_pool *)mem_calloc(1, sizeof(struct dhcps_pool));
if (pdhcps_pool == NULL) {
return 0;
}
pdhcps_pool->ip.addr = dhcps->client_address.addr;
memcpy(pdhcps_pool->mac, m->chaddr, sizeof(pdhcps_pool->mac));
pdhcps_pool->lease_timer = lease_timer;
pnode = (list_node *)mem_calloc(1, sizeof(list_node));
if (pnode == NULL) {
mem_free(pdhcps_pool);
pdhcps_pool = NULL;
return 0;
}
pnode->pnode = pdhcps_pool;
pnode->pnext = NULL;
@@ -210,6 +210,9 @@ void dhcp_parse_extra_opts(struct dhcp *dhcp, uint8_t state, uint8_t option, uin
NETIF_FOREACH(netif) {
/* find the netif related to this dhcp */
if (dhcp == netif_dhcp_data(netif)) {
if (mtu < 68) { /* RFC 2132 requires MTU >= 68 */
return;
}
if (mtu < netif->mtu) {
netif->mtu = mtu;
LWIP_DEBUGF(DHCP_DEBUG | LWIP_DBG_TRACE, ("dhcp_parse_extra_opts(): Negotiated netif MTU is %d\n", netif->mtu));