我正在尝试使用 TcpListener over SSL 创建自定义 FTP 服务器。
关闭连接时,客户端会生成错误,因为当套接字关闭时不会发送close-notify
警报。在 .NET TLS 实现中没有考虑我读过的内容。
将此行为添加到我的服务器的最佳方法是什么。如何发送此警报?将字符串写入 SSL 流或包装流是否简单。
如果有人能指出我正确的方向,我将不胜感激。
谢谢
我发现 SslStream 根本不支持这个,所以我现在看到的唯一选择是手动发送。这就是我所说的“手动日落”。
我在这里发布了我的代码(因为这是我能找到的最早提到的问题)。如果它对您有帮助,请查看并提供建议。
我希望微软能抽出时间在框架的下一个版本中修复它。
close-notify
如果您是最先关闭的一端,则应在您关闭套接字时由 SSL 层自动发送。如果您是收到 EOS 的一方,因此您正在关闭响应,则RFC 2246允许close-notify
不发送响应。
你不能自己发送。