OpenSSH 3.8.1p1: call for testing
Gert Doering
gert at greenie.muc.de
Mon Apr 19 04:35:43 EST 2004
Hi,
On Fri, Apr 16, 2004 at 08:18:42AM +1000, Damien Miller wrote:
> So far we have received only *one* test report as a result of this call
> for testing (thanks Corinna).
>
> We absolutely need wider testing of releases. While we try to test on as
> many platforms as possible, there is no way we can get them all. If you
> want the next stable OpenSSH to work for you, then please help out.
OK. Testing on SCO Open Server 3.0 (3.2v4.2).
Config output is:
------------- snip ------------------
penSSH has been configured with the following options:
User binaries: /usr/local/bin
System binaries: /usr/local/sbin
Configuration files: /etc
Askpass program: /usr/local/libexec/ssh-askpass
Manual pages: /usr/local/man/manX
PID file: /var/run
Privilege separation chroot path: /var/empty
sshd default user PATH: /bin:/usr/bin:/usr/local/bin:/usr/local/games/bin
(If PATH is set in /etc/default/login it will be used instead. If
used, ensure the path to scp is present, otherwise scp will not work.)
Manpage format: man
PAM support: no
KerberosV support: no
Smartcard support: no
S/KEY support: yes
TCP Wrappers support: no
MD5 password support: no
IP address in $DISPLAY hack: no
Translate v4 in v6 hack: no
BSD Auth support: no
Random number source: ssh-rand-helper
ssh-rand-helper collects from: TCP localhost:3300
Host: i586-pc-sco3.2v4.2
Compiler: gcc
Compiler flags: -g -O2 -Wall -Wpointer-arith -Wno-uninitialized
Preprocessor flags: -Dftruncate=chsize
Linker flags:
Libraries: -lcrypto -lskey -lintl -lz -lgen -lrpc -lyp -lrpc -lsocket -los -lprot -lcrypt_i -lx -ltinfo -lm
------------- snip ------------------
make dies at:
------------- snip ------------------
gcc -g -O2 -Wall -Wpointer-arith -Wno-uninitialized -I. -I.. -I. -I./.. -Dftruncate=chsize -DHAVE_CONFIG_H -c getrrsetbyname.c
getrrsetbyname.c: In function `getrrsetbyname':
getrrsetbyname.c:190: warning: implicit declaration of function `res_init'
getrrsetbyname.c:206: warning: implicit declaration of function `res_query'
getrrsetbyname.c:209: `h_errno' undeclared (first use this function)
getrrsetbyname.c:209: (Each undeclared identifier is reported only once
getrrsetbyname.c:209: for each function it appears in.)
getrrsetbyname.c: In function `parse_dns_qsection':
getrrsetbyname.c:436: warning: implicit declaration of function `dn_expand'
------------- snip ------------------
fixed by adding an explicit "extern int h_errno;" to that file.
------------- snip ------------------
RCS file: /cvs/openssh_cvs/openbsd-compat/getrrsetbyname.c,v
retrieving revision 1.9
diff -u -r1.9 getrrsetbyname.c
--- getrrsetbyname.c 24 Feb 2004 04:51:07 -0000 1.9
+++ getrrsetbyname.c 18 Apr 2004 17:45:38 -0000
@@ -167,6 +167,7 @@
int length;
unsigned int index_ans, index_sig;
u_char answer[ANSWER_BUFFER_SIZE];
+ extern int h_errno;
/* check for invalid class and type */
if (rdclass > 0xffff || rdtype > 0xffff) {
------------- snip ------------------
The regression test isn't portable enough for oldish SCO:
------------- snip ------------------
run test connect ...
/u/softadm/openssh_cvs/regress/test-exec.sh: whoami: not found
id: illegal option -- u
id: illegal option -- n
Usage: id [-l] [-s]
...
/u/softadm/openssh_cvs/regress/ssh_config line 5: Missing argument.
ssh connect with protocol 1 failed
/u/softadm/openssh_cvs/regress/ssh_config line 5: Missing argument.
ssh connect with protocol 2 failed
failed simple connect
------------- snip ------------------
("id" doesn't have any switch to only display the current user name).
Hopefully quite portable fix:
------------- snip ------------------
--- regress/test-exec.sh 29 Feb 2004 09:31:08 -0000 1.7
+++ regress/test-exec.sh 18 Apr 2004 18:12:22 -0000
@@ -8,8 +8,10 @@
USER=`/usr/ucb/whoami`
elif whoami >/dev/null 2>&1; then
USER=`whoami`
-else
+elif id -un >/dev/null 2>&1; then
USER=`id -un`
+else
+ USER=`who am i | cut -d' ' -f1`
fi
OBJ=$1
------------- snip ------------------
... it still fails:
------------- snip ------------------
Connection closed by 127.0.0.1
ssh connect with protocol 1 failed
Connection closed by 127.0.0.1
ssh connect with protocol 2 failed
failed simple connect
------------- snip ------------------
Doing individual tests leads to:
- unprivileged ssh works fine (-1 and -2)
- chmod 4711'ed ssh (for RhostsRSAAuthentication) is broken:
------------- snip ------------------
gert at greenie:/u/softadm/openssh_cvs$ ./ssh -1 -v $targethost
OpenSSH_3.8.1p1, OpenSSL 0.9.6g 9 Aug 2002
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to $targethost [19.20.21.100] port 22.
rresvport: af=2 Permission denied
ssh: connect to host $targethost port 22: Permission denied
------------- snip ------------------
- sshd -1 / RhostsRSAAuthentication works, but has an interesting side
effect: upon logout, the client gets the message
------------- snip ------------------
Received disconnect from 193.149.48.161: wait: No child processes
------------- snip ------------------
the server log ends with:
------------- snip ------------------
debug1: server_init_dispatch_13
debug1: server_init_dispatch_15
debug1: Received SIGCHLD.
debug2: notify_done: reading
debug1: End of interactive session; stdin 12, stdout (read 829, sent 829), stderr 0 bytes.
Disconnecting: wait: No child processes
debug1: do_cleanup
debug1: session_pty_cleanup: session 0 release /dev/ttyp25
------------- snip ------------------
- sshd -2 / HostBasedAuthentication mostly works, but upon logout, the
client session hangs:
------------- snip ------------------
gert at greenie:/u/gert$ exit
debug1: channel 0: rcvd eof
debug1: channel 0: output open -> drain
debug1: channel 0: obuf empty
debug1: channel 0: close_write
debug1: channel 0: output drain -> closed
<nothing more>
------------- snip ------------------
server side (-d -d -d)
------------- snip ------------------
debug2: fd 10 setting O_NONBLOCK
debug2: fd 9 is O_NONBLOCK
debug1: Received SIGCHLD.
debug2: notify_done: reading
debug2: channel 0: read<=0 rfd 10 len 0
debug2: channel 0: read failed
debug2: channel 0: close_read
debug2: channel 0: input open -> drain
debug2: channel 0: ibuf empty
debug2: channel 0: send eof
debug2: channel 0: input drain -> closed
<nothing more>
------------- snip ------------------
(this is not a new thing - it was already in 3.6, but I haven't been
able to figure out what's going on here)
- password authentication is completely broken - SCO uses SECUREWARE /
"getprpwnam()" for "trusted computing base" password access, but
the corresponding code from auth-passwd.c seems to have disappeared.
I assume that a "CUSTOM_SYS_AUTH_PASSWD" module needs to be written
to support SECUREWARE.
Summary: it might not be worth effort. I'm unsure whether anybody but
myself is still interested in SCO Open Server 3.0 / SCO Unix 3.2v4.2,
and I'm working on migrating myself away from this platform anyway.
In any case it should be mentioned in the documentation that this old
SCO system is now "unsupported" and *will not work* without major
effort.
gert
--
USENET is *not* the non-clickable part of WWW!
//www.muc.de/~gert/
Gert Doering - Munich, Germany gert at greenie.muc.de
fax: +49-89-35655025 gert at net.informatik.tu-muenchen.de
More information about the openssh-unix-dev
mailing list