Re: Call for testing: OpenSSH 6.8

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

 



On 24/02/15 21:56, Tim Rice wrote:
On Wed, 25 Feb 2015, Damien Miller wrote:

| On Tue, 24 Feb 2015, Tom G. Christensen wrote:
|
| > I've switched to HEAD in the git repo and it now builds on Solaris
| > 2.6, 7, 8 and 9 but the testsuite still cannot be built due to the
| > missing <err.h>.

The err.h issue is fixes but there still msghdr structure differences
to deal with.


Yes I saw that later.

The testsuite build fails on Solaris 2.6 thusly:
regress/netcat.c: In function 'timeout_connect':
regress/netcat.c:703: warning: passing argument 2 of 'connect' discards qualifiers from pointer target type regress/netcat.c:709: warning: passing argument 4 of 'getsockopt' from incompatible pointer type
regress/netcat.c: In function 'local_listen':
regress/netcat.c:735: warning: unused variable 'x'
regress/netcat.c:735: warning: unused variable 'ret'
regress/netcat.c: In function 'fdpass':
regress/netcat.c:1037: error: 'struct msghdr' has no member named 'msg_control' regress/netcat.c:1038: error: 'struct msghdr' has no member named 'msg_controllen' regress/netcat.c:1039: error: 'struct msghdr' has no member named 'msg_controllen' regress/netcat.c:1039: error: 'struct msghdr' has no member named 'msg_control'
regress/netcat.c: In function 'set_common_sockopts':
regress/netcat.c:1196: warning: passing argument 4 of 'setsockopt' from incompatible pointer type regress/netcat.c:1201: warning: passing argument 4 of 'setsockopt' from incompatible pointer type regress/netcat.c:1206: warning: passing argument 4 of 'setsockopt' from incompatible pointer type regress/netcat.c:1211: warning: passing argument 4 of 'setsockopt' from incompatible pointer type
regress/netcat.c: In function 'decode_addrport':
regress/netcat.c:1419: warning: comparison between signed and unsigned
make: *** [regress/netcat] Error 1

I guess that is what you meant about structure differences.
It looks like on Solaris I can choose between msg_accrights* or msg_control*/msg_flags in struct msghdr. The latter requires _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED which will also require __EXTENSIONS__ or other useful things suddenly go away.

Building openssh with CC="gcc -D__EXTENSIONS__ -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED" is possible (tested only on Solaris 9 so far). Unfortunately now that I can finally run the testsuite I see ssh-keygen dumps core in keygen-change.sh but all tests before that passes.

$ gdb ssh-keygen
GNU gdb (GDB) 7.8
...
Reading symbols from ssh-keygen...done.
(gdb) core regress/core
[New LWP 1]
Core was generated by `/export/home/tgc/buildpkg/openssh/src/openssh-git/ssh-keygen -p -P secret1 -N 2'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0xfedb4b14 in strlen () from /usr/lib/libc.so.1
(gdb) bt
#0  0xfedb4b14 in strlen () from /usr/lib/libc.so.1
#1  0xfee07a20 in _doprnt () from /usr/lib/libc.so.1
#2  0xfee095e0 in printf () from /usr/lib/libc.so.1
#3 0x000546b0 in do_change_passphrase (pw=pw@entry=0x92954) at ssh-keygen.c:1279
#4  0x00059420 in main (argc=0, argv=0xffbfe664) at ssh-keygen.c:2530
(gdb) fram 3
#3 0x000546b0 in do_change_passphrase (pw=pw@entry=0x92954) at ssh-keygen.c:1279
1279            printf("Key has comment '%s'\n", comment);
(gdb) print comment
$1 = 0x0
(gdb)

I've not had time to look into this further and also I've not verified if this happens without setting CC.

-tgc
_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@xxxxxxxxxxx
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev




[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux