fix: CONNECT 事件到达 TCP_LISTEN socket(1) 而非 TCP socket(0)

WCHNET 将 CONNECT 事件投递到 TCP_LISTEN 内部 socket (sock 1),
而非用户创建的 TCP socket (sock 0)。之前的路由只检查
socketid==g_json_socket_listen(0),遗漏了 sock 1。

修复:
- NET_SSC_ENABLE=1 时同时路由 sock N 和 sock N+1 到 JSON handler
- NET_SSC_ENABLE=0 时所有 socket 事件都路由到 JSON handler
- tcp_json_handle_sock_int 移除 socket 限定,处理任意 socket 事件
This commit is contained in:
wangfq
2026-07-01 14:06:04 +08:00
parent 32d613a54f
commit 4e75312a0f
2 changed files with 6 additions and 7 deletions

View File

@@ -623,9 +623,6 @@ void tcp_json_srv_init(void) {
}
void tcp_json_handle_sock_int(uint8_t socketid, uint8_t intstat) {
// Only process events on our TCP listen/data socket
if (socketid != g_json_socket_listen) return;
// === CONNECT: client connected — configure recv buffer, init auth state ===
if (intstat & SINT_STAT_CONNECT) {
WCHNET_ModifyRecvBuf(socketid, (uint32_t)g_json_wchnet_buf, RECE_BUF_LEN);