2

我目前正在尝试实现一个小型 telnet 服务器,它在来自客户端的连接上生成一个 PTY,并将一个小型 nCurses 应用程序的输出传输到客户端。我在 ruby​​ 工作,但问题与语言无关。我的用例不需要应用程序的用户登录用户帐户,因此我不希望将屏幕的正确传输委托给 telnetd 等系统工具。

给定 TCP 连接,通过 telnet 或 ssh 传输文本 nCurses 接口的要求是什么?为了确保客户端的屏幕刷新正确呈现应用程序,需要哪些类型的缓冲或编码?这显然是在典型的 ssh 会话期间处理的,但是它是如何完成的?

提前致谢。

4

1 回答 1

3

您需要设置 TERM、LINES 和 COLUMNS 环境变量(您可以通过NVT 协议获得正确的值)。然后您就可以开始并简单地生成一个 ncurses 应用程序(使用您的 PTY,因为它显然是标准输入/标准输出)。您不需要缓冲或以其他方式篡改字符流(在您的 NVT 实现中除外)。

于 2014-11-30T15:31:04.930 回答