udp:add tls cleanup protection to protect udp_callback info in psock_udp_recvfrom

Signed-off-by: wangchen <wangchen41@xiaomi.com>
This commit is contained in:
wangchen
2024-06-26 23:35:37 +08:00
committed by archer
parent b0d8fd9d75
commit 540036ab60
3 changed files with 58 additions and 0 deletions
+24
View File
@@ -326,4 +326,28 @@ uint16_t udp_callback(FAR struct net_driver_s *dev,
return flags;
}
/****************************************************************************
* Name: udp_callback_cleanup
*
* Description:
* Cleanup data and cb when thread is canceled.
*
* Input Parameters:
* arg - A pointer with conn and callback struct.
*
****************************************************************************/
void udp_callback_cleanup(FAR void *arg)
{
FAR struct udp_callback_s *cb = (FAR struct udp_callback_s *)arg;
nerr("ERROR: pthread is being canceled, need to cleanup cb\n");
udp_callback_free(cb->dev, cb->conn, cb->udp_cb);
if (cb->sem)
{
nxsem_destroy(cb->sem);
}
}
#endif /* CONFIG_NET && CONFIG_NET_UDP */