Pergunta

Eu estou tentando suprimir o eco local de uma senha em uma sessão telnet enviando 0xFF 0xFD 0x2D (IAC fazer SUPPRESS_LOCAL_ECHO). Isso funciona bem.

O meu problema é permitir que o eco local após a senha. Estou enviando 0xFF 0xFE 0x2D (IAC NÃO SUPPRESS_LOCAL_ECHO). Mas eu não vejo nenhum dos meus comandos que eu digito mais tarde.

Eu estou usando o programa MS Telnet para se conectar.

O IAC é descrever aqui .

O Suprimir eco local é definido aqui

Foi útil?

Solução 4

Enviar um retrocesso e, em seguida, a *. Esse backup vontade o cursor e, em seguida, imprimir a * sobre o personagem que apenas impresso. Se for uma conexão lenta o personagem pode estar lá por algum período de tempo. Também olhar para o '\ n' e não tente sobre gravação que.

Outras dicas

Durante suas sessões telnet em telnet.exe você pode abrir o telnet pronta pressionando Ctrl + ]

Depois disso, digite " set localecho " ou " unset localecho " para mudar localecho ligado ou desligado.

Pressione Enter para retornar à sua sessão telnet.

sequência errada acima. De acordo com algum documento que eu encontrei, minha sequência deve estar errado (VONTADE / WONT trocados). No entanto, trabalhou com Putty e MS Telnet -. Estranho

Por favor, tente o seguinte:

// Supress Echo on client:
out.write(0xFF);    // IAC
out.write(0xFB);    // WILL
out.write(0x01);    // ECHO

// Enable again with:
out.write(0xFF);    // IAC
out.write(0xFC);    // WONT
out.write(0x01);    // ECHO

De acordo com as minhas investigações hoje:

  1. O cliente MS Telnet aceita 'localecho set' e 'localecho unset', mas não faz nada com eles, exceto o registro do estado. Ele não envia nada sobre o fio. O estado real dos restos do cliente 'sem eco local' Não importa o que você faz eo que 'd', diz.

  2. O servidor MS Telnet envia IAC, VONTADE, ECHO e, em resposta aceita IAC, DO, ECHO, e IAC, NÃO, ECHO, mas ignora completamente-los, permanecendo em estado irá ecoar por toda parte. Você pode enviar IAC, DO, ECHO ou IAC, NÃO, ECHO, mais tarde, e ele não vai mesmo responder.

Assim, se você está ou usando o cliente MS para falar com um servidor não-MS Telnet ou usando outro cliente para falar com o servidor MS Telnet é melhor você ficar em nenhum-local-echo modo, caso contrário você terá dupla ecoando .

Windows Vista 64.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top