一尘不染

如何在带有C的Linux中使用伪终端?

linux

我试图弄清楚如何在Linux中使用伪终端,实际上我想创建一个telnetd克隆,这是我在前面的问题中提到的。

我了解主终端和从终端的概念,并且对如何在C中使用syscall有基本的了解。

我的问题与打开从属/主文件描述符后的下一步有关。如何在奴隶中发射盖蒂?网上是否有 足够的 资源来使用forkpty(),openpty()或其他API?

C语言中的一些示例会有所帮助。这是一个非常相似的问题,但是没有人提供任何示例。


阅读 431

收藏
2020-06-02

共1个答案

一尘不染

Unix环境中的高级编程,第2版在Linux中可用的伪终端层上有出色的一章。最好的部分是包含驱动程序的源代码pty并且非常清楚地演示了如何使用pty接口。(pty如果您想以编程方式驱动仅终端程序,但又不想使用,则它所构建的程序本身就很有用expect(1)。)

2020-06-02