Я пытаюсь написать утилиту, совместимую с -oProxyCommand openssh.Я написал утилиту, которая является прозрачным сокетом для подключения SSH (или что-нибудь).Несмотря на то, что он требует некоторой отладки, я уверен, что он действительно работает правильно (ручные тесты ввода-вывода, большие двоичные файлы передают всю работу).
OpenSSH не будет работать с ним.Я не уверен почему.Должен ли я гарантировать доставку определенных размеров чанка или чего-то подобного?
Вот пример пробного запуска с отладочным выводом:
cletus:Desktop jdizzle$ ssh -v -oProxyCommand='python ./tunnel_client.py 127.0.0.1 22 2>/dev/null' 127.0.0.1
OpenSSH_5.2p1, OpenSSL 0.9.8l 5 Nov 2009
debug1: Reading configuration data /path/jdizzle/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: auto-mux: Trying existing master
debug1: Executing proxy command: exec python ./tunnel_client.py 127.0.0.1 22 2>/dev/null
debug1: identity file /path/jdizzle/.ssh/identity type -1
debug1: identity file /path/jdizzle/.ssh/id_rsa type -1
debug1: identity file /path/jdizzle/.ssh/id_dsa type -1
debug1: permanently_drop_suid: 501
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1
debug1: match: OpenSSH_5.1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.2
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
Received disconnect from UNKNOWN: 2: Bad packet length 1546673200.
Тот факт, что он дешифрует блок странным образомпуть заставляет поверить, что моя труба не работает должным образом, но я прошел ее через все виды испытаний, и она не пропустит ни секунды.Чего мне не хватает?