我有一个C++服务器应用程序,它提供了一个监听TCP端口供支持人员连接。他们可以发出命令并获得回应。从应用程序的角度来看,它工作得很好。telnet协议:中断响应
我的问题出现时,他们使用telnet(1)连接,如果他们(由于某种原因)键入^ C。我的服务器会看到解析后的控制字符telnet发送给我,我可以忽略或处理它们,因为我认为合适。但客户端本身进入某种状态,它停止输出我的服务器对客户端屏幕的响应。
我知道我可以:1)告诉他们不要使用的telnet或2),告诉他们做了toggle autoflush
远程登录内部应用程序,或通过~/.telnetrc
或什么的。但是我想宁愿这样做,如果可能的话,在服务器中以正确的协议顺序响应,让他们的客户端用随后的文本做正确的事情。这只是觉得它会是一个更好的用户体验。他们的工作足够糟糕。
这可能吗?我已经通过了RFC,但尚不清楚。从我过去使用的telnet,这感觉就像是可行的,但我的记忆可能是模糊的。
如果可以,您需要调查为什么客户端的行为如此。当你得到休息时唯一需要采取的行动是停止你正在做的事情。没有协议响应。 – EJP
这是标准的linux telnet客户端。 –
我会尝试更多的TELNET客户端,只是为了检查他们是否都行为相同的方式。 – chenchuk