Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a91640dc6e |
@@ -334,7 +334,6 @@ int net_udp_sendto_exec(int sockfd, const void *buf, int len,
|
||||
const struct net_sockaddr_in *dest, TaskHandle_t caller) {
|
||||
/* 控制块 */
|
||||
const net_sock_t *p_sock = net_get_sock(sockfd);
|
||||
int rc;
|
||||
|
||||
if (p_sock == NULL) {
|
||||
return NET_ERR_RETURN_1(NET_ERR_BADF);
|
||||
@@ -349,6 +348,7 @@ int net_udp_sendto_exec(int sockfd, const void *buf, int len,
|
||||
if (dest != NULL) {
|
||||
/* 带显式目的地址:芯片 DesIP 切到该 IP → 客户端模式(硬件行为,如实记账) */
|
||||
struct net_sockaddr_in peer;
|
||||
int rc;
|
||||
|
||||
(void)memset(&peer, 0, sizeof(peer));
|
||||
peer.sin_family = NET_AF_INET;
|
||||
@@ -695,8 +695,6 @@ static void net_udp_src_from_peer(net_sock_t *p_sock, struct net_sockaddr *src_a
|
||||
static int net_udp_datagram_read(int sockfd, net_sock_t *p_sock, void *buf, int len,
|
||||
struct net_sockaddr *src_addr, int *addrlen,
|
||||
int avail) {
|
||||
/* 信息头暂存 */
|
||||
uint8_t hdr[NET_UDP_HDR_LEN];
|
||||
/* 本包载荷字节数(剥头后) */
|
||||
int payload;
|
||||
/* 交付调用方的字节数 */
|
||||
@@ -710,6 +708,9 @@ static int net_udp_datagram_read(int sockfd, net_sock_t *p_sock, void *buf, int
|
||||
|
||||
if ((p_sock->udp_mode == NET_UDP_MODE_SERVER) &&
|
||||
((uint32_t)avail >= NET_UDP_HDR_LEN)) {
|
||||
/* 信息头暂存(只在服务器形态用得到,放在本分支栈上) */
|
||||
uint8_t hdr[NET_UDP_HDR_LEN];
|
||||
|
||||
/* 剥头:读即消费芯片缓冲 */
|
||||
ch395f_read_recv_buf((uint8_t)sockfd, hdr, (uint16_t)NET_UDP_HDR_LEN);
|
||||
net_udp_src_from_header(p_sock, hdr, src_addr, addrlen);
|
||||
|
||||
Reference in New Issue
Block a user