-
v0.1.2 Stable
released this
2026-04-27 00:08:13 +08:00 | 0 commits to master since this releasefix: 修正 starssh 的 ssh-agent forwarding 生命周期与登录超时语义
- 重构 ssh-agent forwarding 为按
auth-agent@openssh.comchannel 动态建桥,不再长期持有单个本地 agent 连接 - 新增
sshAgentForwardProxy/sshAgentForwardBridge,统一管理活跃 bridge 生命周期,并在单侧 EOF、bridge 关闭和proxy.Close()时主动释放本地 agent 连接与 SSH channel - 保持 denied / unavailable / close-race 的既有语义,同时继续保证自动 forwarding 的 best-effort 行为
- 为
LoginInput新增DialTimeout,将 TCP/proxy/ssh-agent 拨号超时与 SSH 握手/认证超时拆分 - 将
Timeout收口为握手/认证阶段超时,0表示不限制,不再在登录入口自动回填默认值 - 新增
effectiveLoginTimeout/effectiveDialTimeout,统一登录、transport、proxy 和 agent forwarding 的超时决策 - 调整 login / transport / agent forwarding 链路,确保拨号阶段统一使用
DialTimeout,认证阶段仅使用Timeout - 保持
LoginSimple的直观行为:传入单个 timeout 时同时映射到Timeout和DialTimeout - 补充回归测试,覆盖 forwarding 启用/禁用、denied、unavailable、close race、单侧 EOF 释放、proxy Close 主动回收,以及登录超时零值与优先级语义
Downloads
- 重构 ssh-agent forwarding 为按