Call for testing: OpenSSH 6.8

mikep at noc.utoronto.ca mikep at noc.utoronto.ca
Tue Feb 24 07:18:11 AEDT 2015


On Tue, 24 Feb 2015, Damien Miller wrote:

> On Mon, 23 Feb 2015, mikep at noc.utoronto.ca wrote:
>
>> openssh-SNAP-20150224, Solaris 10, GCC
>
> Thanks for testing.
>
>> Configure command line:
>>
>> ./configure CC=gcc --prefix=/opt/local --sysconfdir=/etc/ssh
>> --with-prngd-socket=/var/run/egd-pool --with-zlib=/opt/local --with-rpath
>>
>> Have to manually edit 'config.h':
>>
>> diff config.h.orig config.h
>> 783c783
>> < #define HAVE_MKDTEMP 1
>> ---
>>> /* #undef HAVE_MKDTEMP */
>>
>> as Solaris does not have 'mkdtemp'.
>
> That's strange - it's finding it somewhere. Could I ask you to rummage
> through config.log to see what it is detecting?

All I see is:

configure:10439: checking for mkdtemp
configure:10439: gcc -o conftest -g -O2 -Wall -Wpointer-arith 
-Wuninitialized -Wsign-compare -Wformat-security -fno-strict-aliasing
-D_FORTIFY_SOURCE=2 -ftrapv -fno-builtin-memset -I/opt/local/include
-L/opt/local/lib -R/opt/local/lib  -Wl,-z,now conftest.c -lz -lsocket -lnsl  >&5
configure:10439: $? = 0
configure:10439: result: yes

I've done some testing, and while there is no 'man' page, the function 
does seem to exist, and works as expected in a small test program. I've 
had to make this manual change since at least OpenSSH 6.6 (can't remember 
what failed but must have been 'make tests' somewhere). Re-running build 
with '#define HAVE_MKDTEMP 1'.

>> Compile fails at:
>>
>> gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare
>> -Wformat-security -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -ftrapv
>> -fno-builtin-memset  -I. -I. -I/opt/local/include  -DSSHDIR=\"/etc/ssh\"
>> -D_PATH_SSH_PROGRAM=\"/opt/local/bin/ssh\"
>> -D_PATH_SSH_ASKPASS_DEFAULT=\"/opt/local/libexec/ssh-askpass\"
>> -D_PATH_SFTP_SERVER=\"/opt/local/libexec/sftp-server\"
>> -D_PATH_SSH_KEY_SIGN=\"/opt/local/libexec/ssh-keysign\"
>> -D_PATH_SSH_PKCS11_HELPER=\"/opt/local/libexec/ssh-pkcs11-helper\"
>> -D_PATH_SSH_PIDDIR=\"/var/run\" -D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\"
>> -DHAVE_CONFIG_H -c canohost.c -o canohost.o
>> In file included from packet.h:45,
>>                  from canohost.c:33:
>> dispatch.h:46: warning: type defaults to `int' in declaration of
>> `sig_atomic_t'
>> dispatch.h:46: error: syntax error before '*' token
>> dispatch.h:47: warning: type defaults to `int' in declaration of
>> `sig_atomic_t'
>> dispatch.h:47: error: syntax error before '*' token
>> make: *** [canohost.o] Error 1
>
> Does this help?
>
> diff --git a/dispatch.h b/dispatch.h
> index cd51dbc..2bcdc91 100644
> --- a/dispatch.h
> +++ b/dispatch.h
> @@ -27,6 +27,8 @@
> #ifndef DISPATCH_H
> #define DISPATCH_H
>
> +#include <signal.h> /* for sig_atomic_t */
> +
> #define DISPATCH_MAX	255
>
> enum {

That's got it - build now completes.

'make tests' fails at:

gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -ftrapv -fno-builtin-memset  -I. -I. -I/opt/local/include  -DSSHDIR=\"/etc/ssh\" -D_PATH_SSH_PROGRAM=\"/opt/local/bin/ssh\" -D_PATH_SSH_ASKPASS_DEFAULT=\"/opt/local/libexec/ssh-askpass\" -D_PATH_SFTP_SERVER=\"/opt/local/libexec/sftp-server\" -D_PATH_SSH_KEY_SIGN=\"/opt/local/libexec/ssh-keysign\" -D_PATH_SSH_PKCS11_HELPER=\"/opt/local/libexec/ssh-pkcs11-helper\" -D_PATH_SSH_PIDDIR=\"/var/run\" -D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\" -DHAVE_CONFIG_H -o regress/netcat regress/netcat.c \
-L. -Lopenbsd-compat/ -L/opt/local/lib -R/opt/local/lib  -Wl,-z,now -lssh -lopenbsd-compat -lssh -lopenbsd-compat -lresolv -lcrypto -lrt -lz -lsocket -lnsl 
regress/netcat.c:47:17: err.h: No such file or directory
regress/netcat.c: In function `main':
regress/netcat.c:166: warning: implicit declaration of function `errx'
regress/netcat.c:232: warning: implicit declaration of function `err'
regress/netcat.c: In function `unix_bind':
regress/netcat.c:503: error: syntax error before numeric constant
regress/netcat.c:511: error: invalid lvalue in unary `&'
regress/netcat.c:512: error: request for member `sun_family' in something not a structure or union
regress/netcat.c:514: error: request for member `sun_path' in something not a structure or union
regress/netcat.c:514: error: request for member `sun_path' in something not a structure or union
regress/netcat.c:515: error: request for member `sun_path' in something not a structure or union
regress/netcat.c:521: error: invalid lvalue in unary `&'
regress/netcat.c:521: error: invalid lvalue in unary `&'
regress/netcat.c:521: error: invalid lvalue in unary `&'
regress/netcat.c:521: error: invalid lvalue in unary `&'
regress/netcat.c: In function `unix_connect':
regress/netcat.c:535: error: syntax error before numeric constant
regress/netcat.c:547: error: invalid lvalue in unary `&'
regress/netcat.c:548: error: request for member `sun_family' in something not a structure or union
regress/netcat.c:550: error: request for member `sun_path' in something not a structure or union
regress/netcat.c:550: error: request for member `sun_path' in something not a structure or union
regress/netcat.c:551: error: request for member `sun_path' in something not a structure or union
regress/netcat.c:556: error: invalid lvalue in unary `&'
regress/netcat.c:556: error: invalid lvalue in unary `&'
regress/netcat.c:556: error: invalid lvalue in unary `&'
regress/netcat.c:556: error: invalid lvalue in unary `&'
regress/netcat.c: In function `remote_connect':
regress/netcat.c:637: warning: implicit declaration of function `warn'
regress/netcat.c: In function `local_listen':
regress/netcat.c:695: warning: unused variable `ret'
regress/netcat.c:695: warning: unused variable `x'
regress/netcat.c: In function `fdpass':
regress/netcat.c:997: error: structure has no member named `msg_control'
regress/netcat.c:998: error: structure has no member named `msg_controllen'
regress/netcat.c:999: error: structure has no member named `msg_controllen'
regress/netcat.c:999: error: structure has no member named `msg_control'
make: *** [regress/netcat] Error 1

The only 'err.h' include file on the system is
'/usr/local/include/openssl/err.h'.

Mike
--
Mike Peterson                            Information Security Analyst - Audit
E-mail: mikep at noc.utoronto.ca                WWW: http://www.noc.utoronto.ca/
Tel: 416-978-5230                                           Fax: 416-978-6620


More information about the openssh-unix-dev mailing list