From 3c3ae1773ef9187ff02b2ae045e665bed79c02d4 Mon Sep 17 00:00:00 2001 From: "Andrey A. Chernov" Date: Thu, 17 Oct 1996 23:00:41 +0000 Subject: It fixes a really annoying error reporting bug which happens if the remote end uses tcp_wrappers to control sshd access (it says something like "read: no such file or directory" or "read: permission denied" instead of "connection closed"). I already sent it in to the ssh mailing list. Submitted by: fenner --- security/ssh/files/patch-ad | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 security/ssh/files/patch-ad (limited to 'security/ssh') diff --git a/security/ssh/files/patch-ad b/security/ssh/files/patch-ad new file mode 100644 index 000000000000..5eeb34a2e22e --- /dev/null +++ b/security/ssh/files/patch-ad @@ -0,0 +1,32 @@ +*** sshconnect.c.orig Wed Oct 16 10:10:26 1996 +--- sshconnect.c Wed Oct 16 10:23:49 1996 +*************** +*** 797,802 **** +--- 797,803 ---- + char buf[256], remote_version[256]; /* must be same size! */ + int remote_major, remote_minor, i; + int my_major, my_minor; ++ int len; + int connection_in = packet_get_connection_in(); + int connection_out = packet_get_connection_out(); + +*************** +*** 803,809 **** + /* Read other side\'s version identification. */ + for (i = 0; i < sizeof(buf) - 1; i++) + { +! if (read(connection_in, &buf[i], 1) != 1) + fatal("read: %.100s", strerror(errno)); + if (buf[i] == '\r') + { +--- 804,813 ---- + /* Read other side\'s version identification. */ + for (i = 0; i < sizeof(buf) - 1; i++) + { +! len = read(connection_in, &buf[i], 1); +! if (len == 0) +! fatal("Connection closed by foreign host."); +! else if (len < 0) + fatal("read: %.100s", strerror(errno)); + if (buf[i] == '\r') + { \ No newline at end of file -- cgit v1.2.3