2012-11-11 6 views
1

현재 클라이언트로부터 PTY를 생성하고 작은 nCurses 애플리케이션의 출력을 클라이언트로 전송하는 작은 텔넷 서버를 구현하려고합니다. 나는 루비에서 일하고 있지만 문제는 언어에 구애받지 않는다. 필자의 경우에는 응용 프로그램 사용자가 사용자 계정에 로그인 할 필요가 없으므로 telnetd와 같은 시스템 도구에 화면 전송을 위임하지 않는 것이 좋습니다.telnet/ssh를 통한 nCurses 구현

텔넷이나 ssh를 통해 텍스트 nCurses 인터페이스를 전송하기위한 요구 사항은 무엇입니까? 클라이언트 쪽에서 화면을 새로 고쳐 응용 프로그램을 적절히 렌더링하도록하려면 어떤 유형의 버퍼링 또는 인코딩이 필요합니까? 이는 일반적인 ssh 세션에서 분명히 처리되지만, 어떻게 처리됩니까?

미리 감사드립니다.

+0

'tmux'는 한 번 볼 가치가 있습니다. – Reactormonk

답변

1

TERM, LINES 및 COLUMNS 환경 변수를 설정해야합니다 (NVT protocol에서 올바른 값을 얻을 수 있음). 그런 다음 당신은 갈 준비가되어 있고 ncurses 애플리케이션을 생성 할 수 있습니다 (PTY는 분명히 stdin/stdout이므로). NVT 구현을 제외하고는 문자 스트림을 버퍼링하거나 다른 방법으로 조작 할 필요가 없습니다.