Call for testing: OpenSSH 8.0 [AIX Fail]

Kevin Brott kevin.brott at gmail.com
Tue Apr 2 08:22:52 AEDT 2019


Looks like getpeerid exists, AIX 7 has a manpage for gettpeerid(3) anyway:
...
Syntax

       #include <sys/types.h>
        int getpeereid (int socket, uid_t *euid, gid_t *egid)
...

Re-ran configure / make against openssh-SNAP-20190402.tar.gz on AIX 7.1 and
7.2 ... build now gets past the original failure (still has same warning /
info messages) like so:

...
gcc -O2 -mcpu=powerpc -D_LINUX_SOURCE_COMPAT -pipe -Wall -Wpointer-arith
-Wuninitialized -Wsign-compare -Wformat-security -Wsizeof-pointer-memaccess
-Wno-pointer-sign -Wno-unused-result -fno-strict-aliasing
-D_FORTIFY_SOURCE=2 -ftrapv -fno-builtin-memset   -I. -I.. -I. -I./..
-I/opt/freeware/include -I/opt/phs/include -DHAVE_CONFIG_H -c glob.c
glob.c:94: warning: "TILDE" redefined
 #define TILDE  '~'

In file included from ../openbsd-compat/openbsd-compat.h:226,
                 from ../includes.h:174,
                 from glob.c:61:
/usr/include/sys/ioctl.h:271: note: this is the location of the previous
definition
 #define  TILDE  0x00080000 /* hazeltine tilde kludge */
...
gmake[1]: Entering directory '/lppdir/build/openssh/openbsd-compat'
gcc -O2 -mcpu=powerpc -D_LINUX_SOURCE_COMPAT -pipe -Wall -Wpointer-arith
-Wuninitialized -Wsign-compare -Wformat-security -Wsizeof-pointer-memaccess
-Wno-pointer-sign -Wno-unused-result -fno-strict-aliasing
-D_FORTIFY_SOURCE=2 -ftrapv -fno-builtin-memset   -I. -I.. -I. -I./..
-I/opt/freeware/include -I/opt/phs/include -DHAVE_CONFIG_H -c port-aix.c
port-aix.c:316:1: error: conflicting types for 'record_failed_login'
 record_failed_login(const char *user, const char *hostname, const char
*ttyname)
 ^~~~~~~~~~~~~~~~~~~
In file included from ../audit.h:28:0,
                 from ../auth.h:166,
                 from port-aix.c:34:
../loginrec.h:131:6: note: previous declaration of 'record_failed_login'
was here
 void record_failed_login(struct ssh *, const char *, const char *,
      ^~~~~~~~~~~~~~~~~~~
gmake[1]: *** [Makefile:99: port-aix.o] Error 1
gmake[1]: Leaving directory '/lppdir/build/openssh/openbsd-compat'
gmake: *** [Makefile:165: openbsd-compat/libopenbsd-compat.a] Error 2


On Mon, Apr 1, 2019 at 1:54 AM Darren Tucker <dtucker at dtucker.net> wrote:

> On Sun, 31 Mar 2019 at 19:01, Kevin Brott <kevin.brott at gmail.com> wrote:
> [...]
> > Using openssh-SNAP-20190401.tar.gz
> > AIX 7200-03-02-1846
> > OpenSSL 1.0.2p  14 Aug 2018
> > gcc (GCC) 8.1.0
> > GNU Make 4.2.1
> [...]
> > sshkey.c: In function 'sshkey_format_cert_validity':
> > sshkey.c:2750:42: warning: '%s' directive output may be truncated
> writing up to 31 bytes into a region of size between 24 and 55
> [-Wformat-truncation=]
> >    snprintf(ret, sizeof(ret), "from %s to %s", from, to);
> >                                           ^~         ~~
> > sshkey.c:2750:3: note: 'snprintf' output between 10 and 72 bytes into a
> destination of size 64
> >    snprintf(ret, sizeof(ret), "from %s to %s", from, to);
>
> should be harmless: the input strings are limited to 20 bytes by being
> formatted as ISO8601 timestamps.  Will revisit after release.
>
> > channels.c: In function 'channel_post_mux_listener':
> > channels.c:2314:6: warning: implicit declaration of function
> 'getpeereid'; did you mean 'getpcred'? [-Wimplicit-function-declaratio ]
>
> Does AIX7 have getpeereid?  If not, the prototype should come from
> openbsd-compat.h, if so maybe we need to add a header?
>
> > hostfile.c: In function 'host_hash':
> > hostfile.c:151:44: warning: '%s' directive output may be truncated
> writing up to 511 bytes into a region of size between 509 and 1020
> [-Wformat-truncation=]
> >   snprintf(encoded, sizeof(encoded), "%s%s%c%s", HASH_MAGIC, uu_salt,
>
> not sure yet.
> .
> > gcc -O2 -mcpu=powerpc -D_LINUX_SOURCE_COMPAT -pipe -Wall -Wpointer-arith
> -Wuninitialized -Wsign-compare -Wformat-security -Wsizeof-pointer-memaccess
> -Wno-pointer-sign -Wno-unused-result -fno-strict-aliasing
> -D_FORTIFY_SOURCE=2 -ftrapv -fno-builtin-memset   -I. -I.
> -I/opt/freeware/include -I/opt/phs/include -DSSHDIR=\"/usr/local/etc\"
> -D_PATH_SSH_PROGRAM=\"/usr/local/bin/ssh\"
> -D_PATH_SSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh-askpass\"
> -D_PATH_SFTP_SERVER=\"/usr/local/libexec/sftp-server\"
> -D_PATH_SSH_KEY_SIGN=\"/usr/local/libexec/ssh-keysign\"
> -D_PATH_SSH_PKCS11_HELPER=\"/usr/local/libexec/ssh-pkcs11-helper\"
> -D_PATH_SSH_PIDDIR=\"/var/run\" -D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\"
> -DHAVE_CONFIG_H -c sntrup4591761.c -o sntrup4591761.o
> > In file included from includes.h:100,
> >                  from crypto_api.h:11,
> >                  from sntrup4591761.c:12:
> > /usr/include/sys/mman.h:148:15: error: conflicting types for 'mmap64'
>
> I think this is due to missing compat stuff.  Try adding:
>
> #include "includes.h"
>
> to the start of sntrup4591761.c.
>
> --
> 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.
>


-- 
# include <stddisclaimer.h>
/* Kevin  Brott <Kevin.Brott at gmail.com> */


More information about the openssh-unix-dev mailing list