1 Star 0 Fork 48

zhangyulongkylinos/lwip

forked from src-openEuler/lwip 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
0009-fix-stack-buffer-overflow-when-memcpy-addr.patch 957 Bytes
一键复制 编辑 原始数据 按行查看 历史
jinag12 提交于 2024-02-06 10:45 . adapt lwip-2.2.0
From d1f9ccd5da1712477f30bf2662e8888395ed95cd Mon Sep 17 00:00:00 2001
From: wuchangsheng <wuchangsheng2@huawei.com>
Date: Wed, 21 Jul 2021 20:01:47 +0800
Subject: [PATCH] fix stack-buffer-overflow in lwip_sock_make_addr and
lwip_getaddrname
---
src/api/sockets.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/api/sockets.c b/src/api/sockets.c
index 1c3d4a3..3a8a74c 100644
--- a/src/api/sockets.c
+++ b/src/api/sockets.c
@@ -1323,6 +1323,8 @@ lwip_recv_tcp_done:
add_epoll_event(sock->conn, EPOLLIN);
}
}
+#else
+ *fromlen = LWIP_MIN(*fromlen, sizeof(saddr));
#endif
set_errno(0);
return recvd;
@@ -3179,6 +3181,8 @@ lwip_getaddrname(int s, struct sockaddr *name, socklen_t *namelen, u8_t local)
if (*namelen > IPADDR_SOCKADDR_GET_LEN(&saddr)) {
*namelen = IPADDR_SOCKADDR_GET_LEN(&saddr);
}
+#else
+ *namelen = LWIP_MIN(*namelen, sizeof(saddr));
#endif
MEMCPY(name, &saddr, *namelen);
--
2.23.0
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zhangyulongkylinos/lwip.git
git@gitee.com:zhangyulongkylinos/lwip.git
zhangyulongkylinos
lwip
lwip
master

搜索帮助