telnetd实现最重要的就是对输入输出的转发处理:
输入:telnet client(socket write) -> telnet server(socket read) -> telnet server(tty write) -> stdin(0)
输出:stdout(1)/stderr(2) -> telnet server(tty read) -> telnet server(socket write) -> telnet client(socket read)
tty read/write通过dup直接和stdin/stdout/stderr关联
stdin/stdout/stderr作为在telnet下执行的普通程序(子进程)一般都会保留
这样telnet server只需要衔接好socket read/write和tty write/read即可