Как отправить коды опций Telnet? - PullRequest
0 голосов
/ 26 декабря 2010

Я написал слушатель сокета в Java, который просто отправляет некоторые данные клиенту.

Если я подключаюсь к серверу с помощью telnet, я хочу, чтобы сервер отправлял некоторые коды опций telnet. Я просто отправляю их как обычные сообщения?

Например, если бы я хотел, чтобы клиент напечатал «привет», я сделал бы следующее:

PrintWriter out = new PrintWriter(clientSocket.getOutputStream());
out.print("hello");
out.flush();

Но когда я пытаюсь отправить коды опций, клиент просто их печатает. Например, символ IAC (0xff) просто печатается как странный символ y, когда я делаю это:

PrintWriter out = new PrintWriter(clientSocket.getOutputStream());
out.print((char)0xff);
out.flush();

Ответы [ 2 ]

2 голосов
/ 26 декабря 2010
2 голосов
/ 26 декабря 2010

Если вы используете кодировку символов по умолчанию, я ожидаю, что 0xff будет превращен в два символа.

Я предлагаю вам использовать обычный OutputStream без a PrintWriter.Таким образом, байты будут отправлены без перевода.

...