TCP 短写操作会导致流损坏
作者: anluerz创建于 2026年8月11日更新于 2026年8月11日
描述错误
在 TCP 模式下, link_socket_write_tcp_posix() 会精确地调用一次 send(), 而不会进行重试循环。 POSIX 不保证在流套接字上调用 send() 会写入所有请求的字节, 即部分写入是有效的结果。 当这种情况发生时, 数据包的未写入尾部会被丢弃, TCP 帧格式将永久性地被破坏。 随后的数据包将被错误格式化, 解密失败, 并且会重新启动会话。
内容来源: OpenVPN/openvpn