#111744 SSH 2.9p2-5 port-forwarded connection may fail to close cleanly

#111744#5
Date:
2001-09-09 05:04:59 UTC
From:
To:
Hi there;

I use ssh to connect to a number of servers.

None of them will offer a clean disconnect anymore, if the session is open
for some duration.

Instant connects and disconnects "work fine" whereas if the session is open for a period, it won't close - the last thing seen is the "logout" message from
the ssh server.

I can break the "hang" with ^C (this notes a killed with -2 or some such).

Cheers

Richard

#111744#10
Date:
2001-09-09 20:18:10 UTC
From:
To:
 Hmm - I can't reproduce this one myself.  I've checked the CVS of
upstream since this release and can't see anything that looks relevant
either.

 Are you running backgrounded processes in your remote (this will
cause this symptom until they quit)?

 Would it be possible for you to send an strace (removing the bits
near the beginning that'd make it a bad security risk of course)?

 What configuration do you have?

 Jonathan.

#111744#13
Date:
2001-09-09 20:18:10 UTC
From:
To:
 Hmm - I can't reproduce this one myself.  I've checked the CVS of
upstream since this release and can't see anything that looks relevant
either.

 Are you running backgrounded processes in your remote (this will
cause this symptom until they quit)?

 Would it be possible for you to send an strace (removing the bits
near the beginning that'd make it a bad security risk of course)?

 What configuration do you have?

 Jonathan.

#111744#18
Date:
2001-09-11 06:42:17 UTC
From:
To:
Hi Jonathan;

Jonathan Amery wrote:

I don't think, after some investigation, that it's strictly an SSH bug.

As it happens, it is unique to tunneling.  I only have one protocol to
test with tunnelling at present due to firewalling on the host I'm
connecting to (rdp to a terminal server).

When I try and telnet [host] 3389, it works fine, and I can disconnect
as normal.  If I try the rdp client, I get this error:

rdesktop: A Remote Desktop Protocol client.
Version 1.0.0-pl19-6-6. Copyright (C) 1999-2000 Matt Chapman.
See http://www.rdesktop.org/ for more information.

Connection successful.
tcp_recv read: Success
ERROR: expected DT, got 240
disconnecting

...and *that's* when ssh won't exit cleanly.  I've done a netstat -an |
grep 3389, and there's no output there; I don't think the connect is
still open, but perhaps something messy happens with the rdesktop
connect, and it causes ssh to become confused?

Note: this output happens on a LAN with this server too; someone's
monkeyed with it and rdesktop won't work anymore, either locally or
remotely (ie, this problem is not caused by SSH).  I've filed a bug
against rdesktop (111743).

The configuration is fairly basic, and looks a lot like the standard ssh
configuration.  I've attached my ssh_config file.

Now, for the strace :)  For this example, I've replicated the problem
(ie, tried to kick off a rdp connect) :

[18:35:14] [richard@acheron:~] $ strace slogin -2 -X -C -lrichardp -L
3389:172.20.1.92:3389 ssh.optimation.co.nz
execve("/usr/bin/slogin", ["slogin", "-2", "-X", "-C", "-lrichardp",
"-L", "3389:172.20.1.92:3389", "ssh.optimation.co.nz"], [/* 26 vars */])
= 0
uname({sys="Linux", node="acheron", ...}) = 0
brk(0)                                  = 0x80830c0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40015000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(0x3, 0xbfffecec)                = 0
old_mmap(NULL, 39978, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
close(3)                                = 0
open("/lib/libpam.so.0", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\24"...,
1024) = 1024
fstat64(0x3, 0xbfffed34)                = 0
old_mmap(NULL, 32248, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40020000
mprotect(0x40027000, 3576, PROT_NONE)   = 0
old_mmap(0x40027000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x6000) = 0x40027000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\264\34"...,
1024) = 1024
fstat64(0x3, 0xbfffed24)                = 0
old_mmap(NULL, 12340, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40028000
mprotect(0x4002a000, 4148, PROT_NONE)   = 0
old_mmap(0x4002a000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x1000) = 0x4002a000
old_mmap(0x4002b000, 52, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4002b000
close(3)                                = 0
open("/lib/libwrap.so.0", O_RDONLY)     = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\37"...,
1024) = 1024
fstat64(0x3, 0xbfffed14)                = 0
old_mmap(NULL, 28932, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x4002c000
mprotect(0x40032000, 4356, PROT_NONE)   = 0
old_mmap(0x40032000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x5000) = 0x40032000
old_mmap(0x40033000, 260, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40033000
close(3)                                = 0
open("/usr/lib/libz.so.1", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\30\0\000"...,
1024) = 1024
fstat64(0x3, 0xbfffed04)                = 0
old_mmap(NULL, 57480, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40034000
mprotect(0x40040000, 8328, PROT_NONE)   = 0
old_mmap(0x40040000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0xb000) = 0x40040000
close(3)                                = 0
open("/lib/libnsl.so.1", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 B\0\000"...,
1024) = 1024
fstat64(0x3, 0xbfffecf4)                = 0
old_mmap(NULL, 82844, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40043000
mprotect(0x40054000, 13212, PROT_NONE)  = 0
old_mmap(0x40054000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x10000) = 0x40054000
old_mmap(0x40056000, 5020, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40056000
close(3)                                = 0
open("/lib/libutil.so.1", O_RDONLY)     = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\17\0"...,
1024) = 1024
fstat64(0x3, 0xbfffece4)                = 0
old_mmap(NULL, 10636, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40058000
mprotect(0x4005a000, 2444, PROT_NONE)   = 0
old_mmap(0x4005a000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x1000) = 0x4005a000
close(3)                                = 0
open("/usr/lib/libcrypto.so.0.9.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@$\2\000"...,
1024) = 1024
fstat64(0x3, 0xbfffecd4)                = 0
old_mmap(NULL, 825216, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x4005b000
mprotect(0x40117000, 55168, PROT_NONE)  = 0
old_mmap(0x40117000, 45056, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0xbb000) = 0x40117000
old_mmap(0x40122000, 10112, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40122000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\30\327"...,
1024) = 1024
fstat64(0x3, 0xbfffecc4)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40125000
old_mmap(NULL, 1179680, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40126000
mprotect(0x4023c000, 40992, PROT_NONE)  = 0
old_mmap(0x4023c000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x115000) = 0x4023c000
old_mmap(0x40242000, 16416, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40242000
close(3)                                = 0
open("/lib/libcrypt.so.1", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\20"...,
1024) = 1024
fstat64(0x3, 0xbfffec54)                = 0
old_mmap(NULL, 183708, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40247000
mprotect(0x4024c000, 163228, PROT_NONE) = 0
old_mmap(0x4024c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x4000) = 0x4024c000
old_mmap(0x4024d000, 159132, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4024d000
close(3)                                = 0
munmap(0x40016000, 39978)               = 0
SYS_199(0x402410b8, 0, 0x40241e00, 0x4023eed0, 0xbffff98c) = 1000
semop(1076105400, 0x4023eed0, 0)        = 1000
brk(0)                                  = 0x80830c0
brk(0x80834d8)                          = 0x80834d8
brk(0x8084000)                          = 0x8084000
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sin_family=AF_UNIX,
path="
/var/run/.nscd_socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat64(0x3, 0xbffff4cc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 465
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(0x3, 0xbfffeddc)                = 0
old_mmap(NULL, 39978, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
close(3)                                = 0
open("/lib/libnss_compat.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\33"...,
1024) = 1024
fstat64(0x3, 0xbfffee24)                = 0
old_mmap(NULL, 44688, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40274000
mprotect(0x4027e000, 3728, PROT_NONE)   = 0
old_mmap(0x4027e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x9000) = 0x4027e000
close(3)                                = 0
munmap(0x40016000, 39978)               = 0
uname({sys="Linux", node="acheron", ...}) = 0
open("/etc/passwd", O_RDONLY)           = 3
shmat(3, 0x8, 0x1ptrace: umoven: Input/output error
)                      = ?
shmat(3, 0x8, 0x2ptrace: umoven: Input/output error
)                      = ?
fstat64(0x3, 0xbffff3bc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
_llseek(3, 0, [0], SEEK_CUR)            = 0
read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1705
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
semop(1076105400, 0x4023eed0, 0)        = 1000
semget(1076105400, 0, IPC_CREAT|IPC_EXCL|IPC_NOWAIT|0x40241000|0) = 1000
umask(022)                              = 02
brk(0x8085000)                          = 0x8085000
brk(0x8086000)                          = 0x8086000
brk(0x8087000)                          = 0x8087000
brk(0x8088000)                          = 0x8088000
brk(0x8089000)                          = 0x8089000
brk(0x808a000)                          = 0x808a000
brk(0x808c000)                          = 0x808c000
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
open("/home/richard/.ssh/config", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/etc/ssh/ssh_config", O_RDONLY)   = 3
fstat64(0x3, 0xbffff10c)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(3, "#\t$OpenBSD: ssh_config,v 1.10 20"..., 4096) = 1157
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
open("/dev/urandom", O_RDONLY)          = 3
read(3, "\221\261\26xh\0\364q\37\225J\241_\342xB\7ly\264\377\263"...,
32) = 32
close(3)                                = 0
semop(1076105400, 0x4023eed0, 2)        = 1000
SYS_199(0x402410b8, 0x2, 0x40241e00, 0x4023eed0, 0xbffff98c) = 1000
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(0x3, 0xbfffe94c)                = 0
old_mmap(NULL, 39978, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
close(3)                                = 0
open("/lib/i686/mmx/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = -1 ENOENT (No such file or
directory)
open("/lib/i686/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = -1 ENOENT (No such file or
directory)
open("/lib/mmx/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = -1 ENOENT (No such file or
directory)
open("/lib/libnss_db.so.2", O_RDONLY)   = -1 ENOENT (No such file or
directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = 0
open("/usr/lib/i686/mmx/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = -1 ENOENT (No such file or
directory)
open("/usr/lib/i686/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = -1 ENOENT (No such file or
directory)
open("/usr/lib/mmx/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = -1 ENOENT (No such file or
directory)
open("/usr/lib/libnss_db.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
stat64(0xbfffe8d4, 0xbfffe99c)          = 0
munmap(0x40016000, 39978)               = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(0x3, 0xbfffe93c)                = 0
old_mmap(NULL, 39978, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
close(3)                                = 0
open("/lib/libnss_files.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\"\0"...,
1024) = 1024
fstat64(0x3, 0xbfffe984)                = 0
old_mmap(NULL, 37252, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x4027f000
mprotect(0x40287000, 4484, PROT_NONE)   = 0
old_mmap(0x40287000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x7000) = 0x40287000
old_mmap(0x40288000, 388, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40288000
close(3)                                = 0
munmap(0x40016000, 39978)               = 0
brk(0x808d000)                          = 0x808d000
open("/etc/services", O_RDONLY)         = 3
shmat(3, 0x1, 0x1ptrace: umoven: Input/output error
)                      = ?
shmat(3, 0x1, 0x2ptrace: umoven: Input/output error
)                      = ?
fstat64(0x3, 0xbfffefcc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(3, "# /etc/services:\n# $Id: services"..., 4096) = 4096
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
gettimeofday({1000190125, 49809}, NULL) = 0
getpid()                                = 1274
open("/etc/resolv.conf", O_RDONLY)      = 3
fstat64(0x3, 0xbfffce5c)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(3, "nameserver 192.168.1.1\ndomain ra"..., 4096) = 105
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sin_family=AF_UNIX,
path="
/var/run/.nscd_socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/host.conf", O_RDONLY)        = 3
fstat64(0x3, 0xbfffe91c)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(3, "order hosts,bind\nmulti on\n", 4096) = 26
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
open("/etc/hosts", O_RDONLY)            = 3
shmat(3, 0x1, 0x1ptrace: umoven: Input/output error
)                      = ?
shmat(3, 0x1, 0x2ptrace: umoven: Input/output error
)                      = ?
fstat64(0x3, 0xbfffe94c)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(3, "127.0.0.1\tlocalhost.rage.net.nz "..., 4096) = 291
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40016000, 4096)                = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(0x3, 0xbfffe37c)                = 0
old_mmap(NULL, 39978, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
close(3)                                = 0
open("/lib/libnss_dns.so.2", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\16\0\000"...,
1024) = 1024
fstat64(0x3, 0xbfffe3c4)                = 0
old_mmap(NULL, 15328, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40289000
mprotect(0x4028c000, 3040, PROT_NONE)   = 0
old_mmap(0x4028c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x2000) = 0x4028c000
close(3)                                = 0
open("/lib/libresolv.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200*\0"...,
1024) = 1024
fstat64(0x3, 0xbfffe1e4)                = 0
old_mmap(NULL, 67712, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x4028d000
mprotect(0x4029a000, 14464, PROT_NONE)  = 0
old_mmap(0x4029a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0xc000) = 0x4029a000
old_mmap(0x4029c000, 6272, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4029c000
close(3)                                = 0
munmap(0x40016000, 39978)               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sin_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("192.168.1.1")}}, 28) = 0
send(3, "v\307\1\0\0\1\0\0\0\0\0\0\3ssh\noptimation\2co\2n"..., 38, 0) =
38
gettimeofday({1000190125, 53932}, NULL) = 0
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
recvfrom(3, "v\307\201\200\0\1\0\2\0\2\0\2\3ssh\noptimation\2co\2n"...,
1024, 0, {sin_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("192.168.1.1")}}, [16]) = 176
close(3)                                = 0
semop(1076105400, 0x4023eed0, 0)        = 1000
semget(1076105400, 0, IPC_CREAT|IPC_EXCL|IPC_NOWAIT|0x40241000|0) = 1000
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
semop(1076105400, 0x4023eed0, 0)        = 1000
semget(1076105400, 0, IPC_CREAT|IPC_EXCL|IPC_NOWAIT|0x40241000|0) = 1000
connect(3, {sin_family=AF_INET, sin_port=htons(22),
sin_addr=inet_addr("202.6.84.34")}}, 16) = 0
setsockopt(3, SOL_SOCKET, SO_LINGER, [1], 8) = 0
setsockopt(3, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
brk(0x808f000)                          = 0x808f000
brk(0x8091000)                          = 0x8091000
open("/etc/ssh/ssh_host_key", O_RDONLY) = -1 EACCES (Permission denied)
open("/etc/ssh/ssh_host_dsa_key", O_RDONLY) = -1 EACCES (Permission
denied)
open("/etc/ssh/ssh_host_rsa_key", O_RDONLY) = -1 EACCES (Permission
denied)
msgctl(1000, MSG_???, 0x4023eed0)       = 0
msgget(1000, 0xd|04)                    = 0
stat64(0xbffff81c, 0xbffff6cc)          = 0
open("/etc/passwd", O_RDONLY)           = 4
shmat(4, 0x40241e00, 0x1ptrace: umoven: Input/output error
)               = ?
shmat(4, 0x40241e00, 0x2ptrace: umoven: Input/output error
)               = ?
fstat64(0x4, 0xbffff2fc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
_llseek(4, 0, [0], SEEK_CUR)            = 0
read(4, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1705
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
open("/home/richard/.ssh/id_rsa", O_RDONLY) = 4
lseek(4, 0, SEEK_END)                   = 1743
lseek(4, 0, SEEK_SET)                   = 0
brk(0x8093000)                          = 0x8093000
read(4, "-----BEGIN RSA PRIVATE KEY-----\n"..., 1743) = 1743
close(4)                                = 0
open("/home/richard/.ssh/id_rsa", O_RDONLY) = 4
fstat64(0x4, 0xbfffd4bc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(4, "-----BEGIN RSA PRIVATE KEY-----\n"..., 4096) = 1743
read(4, "", 4096)                       = 0
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
open("/home/richard/.ssh/id_rsa.pub", O_RDONLY) = 4
fstat64(0x4, 0xbfffd4cc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(4, "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAA"..., 4096) = 395
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
open("/etc/passwd", O_RDONLY)           = 4
shmat(4, 0x40241e00, 0x1ptrace: umoven: Input/output error
)               = ?
shmat(4, 0x40241e00, 0x2ptrace: umoven: Input/output error
)               = ?
fstat64(0x4, 0xbffff2fc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
_llseek(4, 0, [0], SEEK_CUR)            = 0
read(4, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1705
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
open("/home/richard/.ssh/id_dsa", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/home/richard/.ssh/id_dsa", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/home/richard/.ssh/id_dsa.pub", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/etc/passwd", O_RDONLY)           = 4
shmat(4, 0x40241e00, 0x1ptrace: umoven: Input/output error
)               = ?
shmat(4, 0x40241e00, 0x2ptrace: umoven: Input/output error
)               = ?
fstat64(0x4, 0xbffff30c)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
_llseek(4, 0, [0], SEEK_CUR)            = 0
read(4, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1705
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
open("/etc/passwd", O_RDONLY)           = 4
shmat(4, 0x40241e00, 0x1ptrace: umoven: Input/output error
)               = ?
shmat(4, 0x40241e00, 0x2ptrace: umoven: Input/output error
)               = ?
fstat64(0x4, 0xbffff30c)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
_llseek(4, 0, [0], SEEK_CUR)            = 0
read(4, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 1705
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
read(3, "S", 1)                         = 1
read(3, "S", 1)                         = 1
read(3, "H", 1)                         = 1
read(3, "-", 1)                         = 1
read(3, "2", 1)                         = 1
read(3, ".", 1)                         = 1
read(3, "0", 1)                         = 1
read(3, "-", 1)                         = 1
read(3, "O", 1)                         = 1
read(3, "p", 1)                         = 1
read(3, "e", 1)                         = 1
read(3, "n", 1)                         = 1
read(3, "S", 1)                         = 1
read(3, "S", 1)                         = 1
read(3, "H", 1)                         = 1
read(3, "_", 1)                         = 1
read(3, "2", 1)                         = 1
read(3, ".", 1)                         = 1
read(3, "9", 1)                         = 1
read(3, "p", 1)                         = 1
read(3, "2", 1)                         = 1
read(3, "\n", 1)                        = 1
write(3, "SSH-2.0-OpenSSH_2.9p2\n", 22) = 22
shmat(3, 0xbffffad1, 0x4ptrace: umoven: Input/output error
)               = ?
getpid()                                = 1274
getpid()                                = 1274
open("/dev/urandom", O_RDONLY)          = 4
read(4, "\222n\334}\224\\\232?{C\363\327\n\357\0076\306cd\\", 20) = 20
close(4)                                = 0
SYS_199(0x402410b8, 0x2, 0x40241e00, 0x4023eed0, 0x8091620) = 1000
time(NULL)                              = 1000190125
write(3, "\0\0\2t\v\0240\345\223\212v\204\222\300$r\36\277\373<\33"...,
632) = 632
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "\0\0\2|\t\24yH\207\244\206\212\332l\223\246v\263\216\30"...,
8192) = 640
brk(0x8095000)                          = 0x8095000
write(3, "\0\0\0\24\6\"\0\0\4\0\0\0\10\0\0\0 \0\0\0\0\0\0\0", 24) = 24
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "\0\0\1\24\10\37\0\0\1\1\1:\334\350\263\26$|b\7rt\331\211"...,
8192) = 280
time([1000190125])                      = 1000190125
getpid()                                = 1274
write(3, "\0\0\1\f\6 \0\0\1\0q\202\276\370\301M\202\3134\24\357\254"...,
272) = 272
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "\0\0\2<\t!\0\0\0\225\0\0\0\7ssh-rsa\0\0\0\1#\0\0\0\201"...,
8192) = 592open("/home/richard/.ssh/known_hosts2", O_RDONLY) = 4
fstat64(0x4, 0xbfffc6fc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(4, "ssh.optimation.co.nz,202.6.84.34"..., 4096) = 463
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
open("/home/richard/.ssh/known_hosts2", O_RDONLY) = 4
fstat64(0x4, 0xbfffc6fc)                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
read(4, "ssh.optimation.co.nz,202.6.84.34"..., 4096) = 463
close(4)                                = 0
munmap(0x40016000, 4096)                = 0
brk(0x8096000)                          = 0x8096000
brk(0x8097000)                          = 0x8097000
brk(0x8098000)                          = 0x8098000
brk(0x80a9000)                          = 0x80a9000
brk(0x80ba000)                          = 0x80ba000
brk(0x80cb000)                          = 0x80cb000
brk(0x80dc000)                          = 0x80dc000
write(3, "\0\0\0\f\n\25\0\0\0\0\0\0\0\0\0\0", 16) = 16
brk(0x80e5000)                          = 0x80e5000
write(3, "*\257\213;\217\r\237y\2748^\207\324\242\217l\341\215\10"...,
48) = 48
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "\344S\317\f\345\203\236\360q-\350\204\373\223\345\277\354"...,
8192) = 48
write(3, "\211\213\274$3\376\354\2407\323_\370\221\203\375.O\211"...,
64) = 64
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "\2752\246n\206\26?\316o9K\314\267a\224P\256*\252&\370+"...,
8192) = 64
write(3, "e`D\205\310\204@,a\341\33aR\267\254\25\10\362\306\315\266"...,
336) = 336
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "v\263\362\316f[j\203\320\336\'\3655O\21\303\376\203h\211"...,
8192) = 32
stat64(0x80904d0, 0xbffff36c)           = -1 ENOENT (No such file or
directory)
write(3, "+\20D\371R\344U\321v\202\372\225O\365\370\23Q-\347}k/7"...,
64) = 64
select(4, [3], NULL, NULL, NULL031-8121)        = 1 (in [3])
read(3, "\2737j<\354\362\"l\212v\266\26N\323\243A\1O\370p(\273\v"...,
8192) = 48open("/dev/tty", O_RDWR)                = 4
write(4, "Response: ", 10Response: )              = 10
rt_sigprocmask(SIG_BLOCK, [TSTP], [], 8) = 0
rt_sigaction(SIGINT, {0x805d164, [], 0x4000000}, {SIG_DFL}, 8) = 0
ioctl(4, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(4, SNDCTL_TMR_START, {B38400 opost isig icanon -echo ...}) = 0
ioctl(4, TCGETS, {B38400 opost isig icanon -echo ...}) = 0
read(4, "0", 1)                         = 1
read(4, "3", 1)                         = 1
read(4, "1", 1)                         = 1
read(4, "-", 1)                         = 1
read(4, "8", 1)                         = 1
read(4, "1", 1)                         = 1
read(4, "2", 1)                         = 1
read(4, "1", 1)                         = 1
read(4, "\n", 1)                        = 1
ioctl(4, SNDCTL_TMR_START, {B38400 opost isig icanon echo ...}) = 0
ioctl(4, TCGETS, {B38400 opost isig icanon echo ...}) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, NULL, 8) = 0
write(4, "\n", 1
)                       = 1
close(4)                                = 0
write(3, "=\0056\t]\3109u\\\271\220Z\301\2235\236oN\222@I\23\7\332"...,
96) = 96select(4, [3], NULL, NULL, NULL
)        = 1 (in [3])
read(3, "\302\276fN\0351\315\310dZW\353\225\22\31\337\360\375J\301"...,
8192) = 32
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 4
setsockopt(4, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
setsockopt(4, SOL_SOCKET, SO_LINGER, [1], 8) = 0
bind(4, {sin_family=AF_INET, sin_port=htons(3389),
sin_addr=inet_addr("127.0.0.1")}}, 16) = 0
listen(4, 5)                            = 0
ioctl(4, TCGETS, 0xbffff138)            = -1 EINVAL (Invalid argument)
shmat(4, 0x4, 0x3ptrace: umoven: Input/output error
)                      = ?
shmat(4, 0x4, 0x4ptrace: umoven: Input/output error
)                      = ?
shmat(4, 0x4, 0x3ptrace: umoven: Input/output error
)                      = ?
dup(0)                                  = 5
dup(1)                                  = 6
dup(2)                                  = 7
ioctl(5, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(6, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(7, TCGETS, {B38400 opost isig icanon echo ...}) = 0
brk(0x80e7000)                          = 0x80e7000
brk(0x80e9000)                          = 0x80e9000
gettimeofday({1000190158, 622143}, NULL) = 0
brk(0x80eb000)                          = 0x80eb000
rt_sigaction(SIGINT, {0x8052d60, [INT], SA_RESTART|0x4000000},
{SIG_DFL}, 8) = 0rt_sigaction(SIGQUIT, {0x8052d60, [QUIT],
SA_RESTART|0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {0x8052d60, [TERM], SA_RESTART|0x4000000},
{SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGWINCH, {0x8052d3c, [WINCH], SA_RESTART|0x4000000},
{SIG_DFL}, 8) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(0, SNDCTL_TMR_STOP, {B38400 -opost -isig -icanon -echo ...}) = 0

select(8, [3 4], [3], NULL, NULL)       = 1 (out [3])
                                           write(3,
"\17\'~}G;\304\230n\225GZ\260\\\'\256\t\210\372\360\263"..., 48) = 48
                                         select(8, [3 4], [], NULL,
NULL)        = 1 (in [3])
             read(3, "\227f.\324\30]\266[K\16\344t\260\247\265
\360~\353\022"..., 8192) = 48
            ioctl(0, TIOCGWINSZ, {ws_row=24, ws_col=80, ws_xpixel=800,
ws_ypixel=360}) = 0
          brk(0x80ed000)                          = 0x80ed000
                                                             pipe([8,
9])                            = 0
                        vfork()                                 = 1275

close(9)                                = 0
                                 fstat64(0x8, 0xbfffed5c)
= 0

old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40016000
     read(8, "acheron/unix:0  MIT-MAGIC-COOKIE"..., 4096) = 69

close(8)                                = 0
                         wait4(1275, [WIFEXITED(s) && WEXITSTATUS(s) ==
0], 0, NULL) = 1275
           --- SIGCHLD (Child exited) ---
                                         munmap(0x40016000,
4096)                = 0
    write(3, "\3\324\314a\0260M\205j\21\377
)\211\343\f\310\'P\205\311"..., 304) = 304
      getsockname(3, {sin_family=AF_INET, sin_port=htons(33087),
sin_addr=inet_addr("192.168.1.2")}}, [16]) = 0
                               setsockopt(3, SOL_IP, IP_TOS, [16], 4)  =
0

setsockopt(3, IPPROTO_TCP1, [1], 4)     = 0
                                     select(8, [3 4], [3], NULL,
NULL)       = 1 (out [3])
          write(3,
"?i\314\r\307\371\241\232\336\345\247\363_P\341\36C\36\3"..., 48) = 48
         select(8, [3 4], [], NULL, NULL)        = 1 (in [3])
                                                             read(3,
"\360\344\334\276M\2550n\260\r\321(\273\357\273\37\214\376"..., 8192) =
32
                                                               select(8,
[3 4 5], [], NULL, NULL)      = 1 (in [5])
                                   read(5, "\n",
16384)                    = 1

select(8, [3 4 5], [3], NULL, NULL)     = 1 (out [3])
                                                   write(3,
"~[c\"\32b\1b\306\371\200-\nf\223\6\276c\267/H%\254\31:"..., 48) = 48
                                                 select(8, [3 4 5], [],
NULL, NULL)      = 1 (in [3])
                     read(3,
"A\223\302\330%\34\350\23\6\331x\363yM}\227\220w\10\260"..., 8192) = 176
                     select(8, [3 4 5], [6], NULL, NULL)     = 1 (out
[6])

write(6, "Last login: Tue Sep 11 18:23:52 "..., 155Last login: Tue Sep
11 18:23:52 2001 from 203.96.144.70
Unauthorised use of this computer is expressly forbidden.

All attempted logins are recorded.
) = 155
       select(8, [3 4 5], [], NULL, NULL)      = 1 (in [3])
                                                           read(3,
"\334\325\2\325\374+ho\234^\27\264*|~\265N\24\31\244\205"..., 8192) = 32
                                                           select(8, [3
4 5], [6], NULL, NULL)     = 1 (out [6])
                                write(6, "\r\n", 2
)                     = 2
                         select(8, [3 4 5], [], NULL, NULL)      = 1 (in
[3])

read(3, "\204H\311\2441oD9\330\207\36\335\300\341\335\356\350\36"...,
8192) = 48

select(8, [3 4 5], [6], NULL, NULL)     = 1 (out [6])
                                                  write(6, "bash-2.04$
", 11bash-2.04$ )             = 11
                         select(8, [3 4 5], [], NULL, NULL)      = 1 (in
[3])

read(3, "\336\340F%\267\274\244_\273\247Qp\243\5\2\275\n\226Y\241"...,
8192) = 32

select(8, [3 4 5], [6], NULL, NULL)     = 1 (out [6])
                                                   write(6, "\r\n", 2
)                     = 2
                         select(8, [3 4 5], [], NULL, NULL)      = 1 (in
[3])

read(3, "{\363*\354O\357,\325?\347\360P\243\232\225\22b\313)\325"...,
8192) = 32

select(8, [3 4 5], [6], NULL, NULL)     = 1 (out [6])
                                                  write(6, "bash-2.04$
", 11bash-2.04$ )             = 11
                         select(8, [3 4 5], [], NULL, NULL)      = 1 (in
[4])

accept(4, {sin_family=AF_INET, sin_port=htons(33088),
sin_addr=inet_addr("127.0.0.1")}}, [16]) = 8
               brk(0x80ef000)                          = 0x80ef000

ioctl(8, TCGETS, 0xbffff4d8)            = -1 EINVAL (Invalid argument)
                                                        shmat(8, 0x8,
0x3ptrace: umoven: Input/output error
                           )                      = ?
                                                     shmat(8, 0x8,
0x4ptrace: umoven: Input/output error
                        )                      = ?
                                                  shmat(8, 0x8,
0x3ptrace: umoven: Input/output error
                     )                      = ?
                                               getpeername(8,
{sin_family=AF_INET, sin_port=htons(33088),
sin_addr=inet_addr("127.0.0.1")}}, [16]) = 0

getpeername(8, {sin_family=AF_INET, sin_port=htons(33088),
sin_addr=inet_addr("127.0.0.1")}}, [16]) = 0
             select(9, [3 4 5], [3], NULL, NULL)     = 1 (out [3])

write(3, "\235\201\325\337\3636\26? \227I$|;\0\\\377\227\34H\356"...,
80) = 80

select(9, [3 4 5], [], NULL, NULL)      = 1 (in [3])
                                    read(3,
"s3\314jz\320uOD\224\24\237\336\357\363!\3432\20\301\216"..., 8192) = 48
                                    select(9, [3 4 5 8], [], NULL,
NULL)    = 1 (in [8])
        read(8, "\3\0\0\v\6\340\0\0\0\0\0", 16384) = 11
                                                       select(9, [3 4 5
8], [3], NULL, NULL)   = 1 (out [3])
                            write(3,
"\365\312\332\2R\321\311T\333\245\314\25&\370\244\'U\322"..., 48) = 48
                           select(9, [3 4 5 8], [], NULL, NULL)    = 1
(in [3])

read(3, "\274\345\337\3536V\16\312E\252k\252\354<\320\270m\364\207"...,
8192) = 48
 select(9, [3 4 5 8], [8], NULL, NULL)   = 1 (out [8])
                                                      write(8,
"\3\0\0\v\6\320\0\0\0224\0", 11) = 11
                    select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [8])

read(8, "\3\0\1$\2\360\200\177e\202\1\30\4\0\4\0\1\1\3770 \2\2\0"...,
16384) = 292

select(9, [3 4 5 8], [3], NULL, NULL)   = 1 (out [3])
                                               write(3,
"1\305\317\273\333\354\346R\220\366:A\"\22\210\362g\253"..., 176) = 176
                                               select(9, [3 4 5 8], [],
NULL, NULL)    = 1 (in [3])
                   read(3,
"/\202\261\234\0315\24\310Q.6UX\305\322S\220\374\340\274"..., 8192) =
320
                    select(9, [3 4 5 8], [8], NULL, NULL)   = 1 (out
[8])

write(8, "\3\0\1E\2\360\200\177f\202\0019\n\1\0\2\1\0000\32\2\1\4"...,
325) = 325

select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [8])
                                              read(8,
"\3\0\0\f\2\360\200\4\1\0\1\0\3\0\0\10\2\360\200(", 16384) = 20
                                     select(9, [3 4 5 8], [3], NULL,
NULL)   = 1 (out [3])
          write(3,
"\332\274q\200&\216\325\365\v\334\236\205\335\355\243\260"..., 48) = 48
          select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [3])
                                                              read(3,
"\216\243\265\222#h\207\4\244A\317\231\16~\364\36\215\0"..., 8192) = 48
                                                             select(9,
[3 4 5 8], [8], NULL, NULL)   = 1 (out [8])
                                  write(8, "\3\0\0\v\2\360\200.\0\0\3",
11) = 11
select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [8])
                                                    read(8,
"\3\0\0\f\2\360\2008\0\3\3\354", 16384) = 12
                        select(9, [3 4 5 8], [3], NULL, NULL)   = 1 (out
[3])

write(3, "\262\301\324U\357\322\227\5\311K\177\346P\33\327\'\333"...,
48) = 48

select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [3])
                                               read(3,
"-?\326\312\346\303\312\0007\246h\244\231QS\327#\235\324"..., 8192) = 48
                                               select(9, [3 4 5 8], [8],
NULL, NULL)   = 1 (out [8])
                    write(8, "\3\0\0\17\2\360\200>\0\0\3\3\354\3\354",
15) = 15

select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [8])
                                                   read(8,
"\3\0\0\f\2\360\2008\0\3\3\353", 16384) = 12
                       select(9, [3 4 5 8], [3], NULL, NULL)   = 1 (out
[3])

write(3, "\324F\233\v\365\234\20\203 \234\202\352\36\235K\222\323"...,
32) = 32

select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [3])
                                               read(3,
"\215\25\203+\33\f\2\34\376\215\367B\270\247\204\261\n\224"..., 8192) =
48
                                                 select(9, [3 4 5 8],
[8], NULL, NULL)   = 1 (out [8])
                      write(8, "\3\0\0\17\2\360\200>\0\0\3\3\353\3\353",
15) = 15
 select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [8])
                                                     read(8,
"\3\0\0_\2\360\200d\0\3\3\353p\200P\1\0\0\0H\0\0\0q\2\17"..., 16384) =
186
                                                       select(9, [3 4 5
8], [3], NULL, NULL)   = 1 (out [3])
                            write(3,
"]eL\203\364\255n\355\373;H\320\223\314\232\37\331\360\214"..., 208) =
208
                               select(9, [3 4 5 8], [], NULL, NULL)    =
1 (in [3])
   read(3,
"\372\255\270\255Ob\3737\354\251\\E\224\335G#\241z\316\331"..., 8192) =
176
      select(9, [3 4 5 8], [8], NULL, NULL)   = 1 (out [8])
                                                           write(8,
"\3\0\1Q\2\360\200h\0\1\3\353p\201B\200\2>\1\1\2>\1\350"..., 337) = 337
                                                           select(9, [3
4 5 8], [], NULL, NULL)    = 1 (in [8])
                               read(8,
"\3\0\0=\2\360\200d\0\3\3\353p\200.\10\0\0\0\211G\261\320"..., 16384) =
225
                                  select(9, [3 4 5 8], [3], NULL,
NULL)   = 1 (out [3])
       write(3,
"\16q\17a\222\340\337\310\273\273\230\270lu\205\321\36\354"..., 128) =
128
          select(9, [3 4 5 8], [], NULL, NULL)    = 1 (in [3])
                                                              read(3,
"C\225%\270\7e\204x-,\304\t\177\262\366\202-}\355AT\"\377"..., 8192) =
64
                                                               select(9,
[3 4 5 8], [8], NULL, NULL)   = 1 (out [8])
                                    write(8,
"\3\0\0\"\2\360\200h\0\1\3\353p\24\200\2\20\0\377\2\20\0"..., 34) = 34
                                   select(9, [3 4 5 8], [], NULL,
NULL)    = 1 (in [3])
       read(3,
"]\2O\3530\247\327\257G\33\362\30.Z\235\261\320\20\375\210"..., 8192) =
32
         shutdown(8, 1 /* send */)               = 0
                                                    select(9, [3 4 5 8],
[], NULL, NULL)    = 1 (in [8])
                        read(8, "\3\0\0\v\6\200\0\0\0\0\0", 16384) = 11

select(9, [3 4 5 8], [3], NULL, NULL)   = 2 (in [8], out [3])
                                                    read(8, "",
16384)                      = 0
               shutdown(8, 0 /* receive */)            = -1 ENOTCONN
(Transport endpoint is not connected)
                          write(3,
"\302\4\0329\365:\320\322\3207}\1\320=\211\260\243\330\16"..., 112) =
112
                            select(9, [3 4 5], [], NULL, NULL)      = 1
(in [5])
read(5, "\4", 16384)                    = 1
                                           select(9, [3 4 5], [3], NULL,
NULL)     = 1 (out [3])
                write(3,
"#\0102\35\311\364:\234\371jz\360K\20\264\221_#N\322\312"..., 32) = 32
               select(9, [3 4 5], [], NULL, NULL)      = 1 (in [3])

read(3, "\367H\225\314\261\0S\343\304\277\v\315\276\226$\"\315\357"...,
8192) = 48

select(9, [3 4 5], [6], NULL, NULL)     = 1 (out [6])
                                          write(6, "logout\r\n", 8logout
)               = 8
                   select(9, [3 4 5], [], NULL, NULL)      = 1 (in [3])

read(3, "\370X\367\237\377\252c\312\222\234\246\326\376\361#P\207"...,
8192) = 112

close(5)                                = 0

close(6)                                = 0

ioctl(0, SNDCTL_TMR_STOP, {B38400 opost isig icanon echo ...}) = 0
close(7)                                = 0
select(9, [3 4], [3], NULL, NULL)       = 1 (out [3])
write(3, "D\264\205\244\362\32{w,\36k\337\340w>\225%h\323Z\333\273"...,
32) = 32select(9, [3 4], [], NULL, NULL


 <unfinished ...>
[18:39:12] [richard@acheron:~] $ Killed by signal 15.

#111744#27
Date:
2001-09-12 22:55:07 UTC
From:
To:
retitle 111744 SSH 2.9p2-5 port-forwarded connection may fail to close cleanly
tags 111744 moreinfo
severity 111744 wishlist
thanks


 Right - I *think* from your report that there is a problem when
connections which have forwarded ports close, in particular when
something unexpected has happened to a connection over the forwarded
port.

 Did the ssh-client produce a message like this when you attempted to
log out?:

#111744#32
Date:
2001-09-13 02:26:00 UTC
From:
To:
Hi Jonathan;

Quoting Jonathan Amery <jdamery@pick.ucam.org>:

No, it didn't, which is the bizzare thing (I've seen that sort of message
before).

Nope, sounds cool to me.  Looks like a small oddity, perhaps only with certain
types of connection termination.

Cheers

Richard
--
richard.parry@rage.net.nz                 Tonic for the thinking man.
Phone +64 2 166 4655                        richard.pager@rage.net.nz
ICQ UID 880301,  Linux User 157905,  http://richard.parry.tripod.com/