fix(NET)+docs: lftpd 对端地址修复、E6 裁决收口、陷阱编号迁移重排 TRAP-NET-01~21
- lftpd:net_inet_ntoa 段序改 MSB 首 + 新增 net_getpeername,FTP 日志打印 真实对端地址(真机实证 192.168.1.2:55524,登记 TRAP-NET-21) - E6:NET_U15_PROBE 命中=0(含压测)→ 阶段 3 项 4 不立项,U15 登记观察项; 插桩留仓(宏=0 零成本),soak 驱动 test/host/e6_soak.py 入库 - 编号:全库 Trap NN → TRAP-NET-<nn> 迁移并重排连续 01~21(单调映射, 沿革见 CH395F_Trap_Records.md 头注);死号 12/13/19/21 引用全部清除; GD5F 域引用补正为 TRAP-GD5F-NN - 陷阱文档全新化:索引 21 行行行真陷阱;删误判存档/发现时间/git 考古/ FTP 附录;台架纪律教训沉淀第六章方法论 - RAM:Code 211348→211456(+108 lftpd 修复),RW+ZI 净增 +4B; 优化方案/台账受管区/tsv 同笔同步 - ftp_abort_probe.py 挪 test/host/;引用关系图重生成 - 回归:@build 0/0;@test PASS;ftp_abort 10/10;relisten :7003 20/20; ci_local L0+L0.5 全绿;E6 窗口零复位,7 条 WD stall 登记压测假象备查
This commit is contained in:
@@ -353,7 +353,7 @@ int net_close(int sockfd);
|
||||
* 而挂起但 TCP 仍活的客户端会永久占住单连接监听(PC 内核自动
|
||||
* ACK keepalive,芯片僵尸判不死——实验方案 E13 §5 定案缺口)
|
||||
* 2. 实现=sock_reset QUARANTINE(FIN 关闭 + 排渣 + 排空事件 + 等
|
||||
* byte0=00H,Trap 23 异常释放语义);auto_relisten fd 随即重监听
|
||||
* byte0=00H,TRAP-NET-18 异常释放语义);auto_relisten fd 随即重监听
|
||||
* (失败交 D10 重试),非 auto_relisten(client fd)收口 CLOSED
|
||||
* 3. 幂等:非 ESTABLISHED/CONNECTING 直接返 0,不动监听
|
||||
*/
|
||||
@@ -514,6 +514,17 @@ int net_pending_active(int sockfd);
|
||||
*/
|
||||
int net_getsockname(int sockfd, struct net_sockaddr *addr, int *addrlen);
|
||||
|
||||
/*
|
||||
* 函数功能:获取 Socket 对端地址(IP + Port)
|
||||
* 入口参数:sockfd - socket 描述符
|
||||
* addr - 输出:对端地址
|
||||
* addrlen - 输入输出:地址结构体长度
|
||||
* 返回值:0 成功,-1 失败(未连接返回 NOTCONN)
|
||||
* 限定条件:socket 已连接(MCU 端读 CONNECT 事件缓存的对端,零 SPI;
|
||||
* 单连接模型下监听 fd 转数据通道后同样有效)
|
||||
*/
|
||||
int net_getpeername(int sockfd, struct net_sockaddr *addr, int *addrlen);
|
||||
|
||||
#ifndef NET_NO_OS
|
||||
/*
|
||||
* 内部 API(需在 netTask 上下文中调用,绕过消息队列)
|
||||
|
||||
Reference in New Issue
Block a user