Call for testing: OpenSSH 8.2

Val Baranov val.baranov at duke.edu
Wed Feb 12 08:42:19 AEDT 2020


The error with "configure" was because of the headers being replaced with the new ones under "/usr/local/openssh/include/openssh". As soon as those headers were replaced with the previous version from ver. 1.0.2r (just to run "./configure") the configure ran well. 
For comparison purposed, compiled successfully OpenSSL 7.9p1 (as a start point to verify against).

"make" OpenSSH ver. 8 (the daily snapshot) with OpenSSL libs ver. 1.0.2r produced the following error:
     =========================================================
        cc -qlanglvl=extc89 -o ssh ssh.o readconf.o clientloop.o sshtty.o  sshconnect.o sshconnect2.o mux.o ssh-sk-client.o -L. -Lopenbsd-compat/ -L/usr/local/openssl/lib -L/usr/local/zlib/lib  -q64 -blibpath:/usr/lib:/lib -bnoquiet -lssh -lopenbsd-compat  -lcrypto -lz
(ld): setopt 64
(ld): halt 4
(ld): setfflag 4
(ld): savename ssh
(ld): filelist 17 1
(ld): i /lib/crt0_64.o
(ld): i ssh.o
(ld): i readconf.o
(ld): i clientloop.o
(ld): i sshtty.o
(ld): i sshconnect.o
(ld): i sshconnect2.o
(ld): i mux.o
(ld): i ssh-sk-client.o
(ld): lib ./libssh.a
(ld): lib openbsd-compat//libopenbsd-compat.a
(ld): lib /usr/local/openssl/lib/libcrypto.a
(ld): lib /usr/local/zlib/lib/libz.a
(ld): lib /usr/vac/lib/libxlopt.a
(ld): lib /usr/vac/lib/libxlipa.a
(ld): lib /usr/vac/lib/libxl.a
(ld): lib /usr/lib/libc.a
LIBRARY: Shared object libc.a[shr_64.o]: 3120 symbols imported.
LIBRARY: Shared object libc.a[posix_aio_64.o]: 20 symbols imported.
LIBRARY: Shared object libc.a[aio_64.o]: 18 symbols imported.
LIBRARY: Shared object libc.a[pse_64.o]: 8 symbols imported.
LIBRARY: Shared object libc.a[dl_64.o]: 4 symbols imported.
LIBRARY: Shared object libc.a[pty_64.o]: 1 symbols imported.
LIBRARY: Shared object libc.a[cthread_64.o]: 25 symbols imported.
FILELIST: Number of previously inserted files processed: 17
(ld): resolve
RESOLVE: 5886 of 31347 symbols were kept.
(ld): addgl /usr/lib/glink64.o
ADDGL: Glink code added for 197 symbols.
(ld): er full
ld: 0711-318 ERROR: Undefined symbols were found.
        The following symbols are in error:
 Symbol                    Inpndx  TY CL Source-File(Object-File) OR Import-File{Shared-object}
                              RLD: Address  Section  Rld-type Referencing Symbol
 ----------------------------------------------------------------------------------------------
 .OPENSSL_init_crypto      [682]   ER PR openssl-compat.c(openbsd-compat//libopenbsd-compat.a[openssl-compat.o])
                                   00000014 .text    R_RBR    [637]   .ssh_libcrypto_init
ER: The return code is 8.
make: 1254-004 The error code from the last command is 8.

     =========================================================

Fixed this error in "config.h" by uncommenting the following line:
               #undef HAVE_OPENSSL_INIT_CRYPTO
Now "make" finished successfully for "OpenSSH ver. 8 / OpenSSL ver. 1.0.2r". Wish to find a way to enforce disabling INIT_CRYPTO in AIX env with "cc" compiler, would be nice to know how to handle this while running "configure".

Next, using OpenSSL headers and libs from ver. 1.1.1d to run "make" - finished with an error (the test run for OpenSSH ver. 7.9p1 produced the same error): 

  =========================================================
        cc -qlanglvl=extc89 -g -q64   -fPIC -I. -I.. -I. -I./.. -I/usr/local/openssl/include -I/usr/local/zlib/include  -DHAVE_CONFIG_H -c libressl-api-compat.c
"/usr/include/stdarg.h", line 89.9: 1506-236 (W) Macro name va_copy has been redefined.
"/usr/include/stdarg.h", line 89.9: 1506-358 (I) "va_copy" is defined on line 872 of ../defines.h.
"libressl-api-compat.c", line 165.22: 1506-285 (S) The indirection operator cannot be applied to a pointer to an incomplete struct or union.
"libressl-api-compat.c", line 167.22: 1506-285 (S) The indirection operator cannot be applied to a pointer to an incomplete struct or union.
<skip><skip>
make: 1254-004 The error code from the last command is 1.
Stop.

make: 1254-004 The error code from the last command is 2.
Stop.
  =========================================================

"1506-285" error repeated  50+ times on different lines with operator similar to
	d->p = p;

(missing header - ?)

So, can't find OpenSSH version (neither 8, nor 7.X) to compile successfully with OpenSSL ver. 1.1.1d on AIX OS. Compiled with static libs (for all of zlib, libcrypto and libssl).


> -----Original Message-----
> On Monday, February 10, 2020 10:50 PM Val Baranov <val.baranov at duke.edu> wrote:
> 
> That was OpenSSL ver. 1.1.1d. AIX compiler cc/xlc.
> Reverted environment back to OpenSSL ver. 1.0.1r and "configure" went well
> with no errors - verified with both OpenSSH ver. 7.9 and 8.
> The archive name d/l-ed is "openssh-SNAP-20200211.tar.gz ". After
> compilation , "ssh -V" displays SSH version 8.1p - is it the correct archive or the
> source of 8.2p1 resides somewhere else? Pls advise.
> I will proceed further with installing again OpenSSL ver. 1.1.1d and verify one
> more time what might be wrong.
> 
> 
> On Monday, February 10 2020 4:55 PM Darren Tucker <dtucker at dtucker.net> wrote:
> 
> On Tue, 11 Feb 2020 at 06:09, Val Baranov <val.baranov at duke.edu> wrote:
> > AIX 7.1 SP5. "configure" OpenSSH 8.2p1
> ===============================
> >
> > Command line:
> > ./configure --prefix=/usr/local/openssh
> > --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/zlib
> > --without-openssl-header-check --with-cflags=-q64 --with-ldflags=-q64
> 
> What version of OpenSSL is that?  I assume from the cflags that the compiler is
> xlc?
> 
> [...]
> > configure: error: *** working libcrypto not found, check config.log
> 
> You'll need to look in config.log, and you'll need to scroll up a ways to find the
> error from the failing test.  It's likely that the test failed to either compile or
> link.
> 
> --
> Darren Tucker (dtucker at dtucker.net)
> GPG key 11EAA6FA / A86E 3E07 5B19 5880 E860  37F4 9357 ECEF 11EA
> A6FA (new)
>     Good judgement comes with experience. Unfortunately, the experience
> usually comes from bad judgement.


More information about the openssh-unix-dev mailing list