Call for release testing

Corinna Vinschen vinschen at redhat.com
Tue Aug 23 21:28:14 EST 2005


On Aug 22 20:41, Damien Miller wrote:
> Hi,
> 
> We would like to make one of our periodic releases shortly, so once
> again we are asking for readers of this list (or anyone else) to
> download and test a CVS snapshot of OpenSSH on your favourite
> platforms.
> 
> The OpenBSD version is available in CVS HEAD:
> http://www.openbsd.org/anoncvs.html
> 
> Portable snapshots are available the mirrors listed at
> http://www.openssh.com/portable.html#ftp in the snapshots/
> subdirectory
> 
> Please test! Running the regression tests supplied with Portable does
> not require installation and is a simply:
> 
> $ ./configure && make tests

I've tested the CVS version from yesterday on Cygwin 1.5.18 and 1.5.19
(upcoming version).

`autoreconf', `make', `make install' run fine.  Installed version works
as expected.

`make tests' *could* run through with no errors, but there's a bug
in regress/test-exec.sh, which results in the testsuite not running:

  # Path to sshd must be absolute for rexec
  if [ ! -x /$SSHD ]; then
	  SSHD=`which sshd`
  fi

The above test `-x /$SSHD' fails on Cygwin.  The reason is that $SSHD
already contains an absolute path.  Therefore the evaluated path which
is tested in the above case starts with two leading slashes, like this:

  if [ ! -x //usr/src/openssh/build/sshd ]

The problem here is that paths beginning with two slashes are SMB network
paths on Cygwin/Windows.  So in the above case, the statement hangs and
eventually fails, because Cygwin searches for a file src/openssh/build/sshd
on the SMB server named "usr".

Please note that this is NOT a bug in Cygwin.  Paths beginning with two
slashes being different from paths beginning with one slash are blessed
by SUSv3, see

 http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html
 
Chapter 4.11 "Pathname Resolution", last paragraph:

  A pathname consisting of a single slash shall resolve to the root directory
  of the process. [...] A pathname that begins with two successive slashes
  may be interpreted in an implementation-defined manner, although more than
  two leading slashes shall be treated as a single slash.

So the above test should either make sure that the evaluated path
beginns with only one slash, or with more than 2 slashes.  The latter
idea looks most easy to implement:

  # Path to sshd must be absolute for rexec
  if [ ! -x ///$SSHD ]; then
	  SSHD=`which sshd`
  fi


Corinna

-- 
Corinna Vinschen
Cygwin Project Co-Leader
Red Hat, Inc.




More information about the openssh-unix-dev mailing list