[Bug 3032] New: (Fixable) MIPSPro compilation errors, failing regression test in test_sshbuf_misc.c & sshd host key loading issues on IRIX 6.5

bugzilla-daemon at bugzilla.mindrot.org bugzilla-daemon at bugzilla.mindrot.org
Sat Jul 6 04:35:44 AEST 2019


https://bugzilla.mindrot.org/show_bug.cgi?id=3032

            Bug ID: 3032
           Summary: (Fixable) MIPSPro compilation errors, failing
                    regression test in test_sshbuf_misc.c & sshd host key
                    loading issues on IRIX 6.5
           Product: Portable OpenSSH
           Version: 8.0p1
          Hardware: MIPS64
                OS: IRIX
            Status: NEW
          Severity: normal
          Priority: P5
         Component: sshd
          Assignee: unassigned-bugs at mindrot.org
          Reporter: ole.weidner at protonmail.ch

I am trying to build OpenSSH with ./configure
--with-prngd-socket=/dev/urandom:

              Host: mips-sgi-irix6.5
          Compiler: c99
    Compiler flags: -64 -mips4 -c99 -O2 -LANG:anonymous_unions=ON
-I/opt/vntg/include:/usr/include -L/opt/vntg/lib64 -L/usr/lib64  
Preprocessor flags: -64 -c99 -O2 -LANG:anonymous_unions=ON
-I/opt/vntg/include -L/opt/vntg/lib64 -L/usr/lib64
      Linker flags: -64 -L/opt/vntg/lib64 -L/usr/lib64 
         Libraries: -lcrypto -lz  -lgen

Two fixable errors occur during compilation:

  cc-1515 c99: ERROR File = sshkey.c, Line = 1270
    A value of type "int" cannot be assigned to an entity of type "char
*".

          if ((blobcopy = strndup(cp, space)) == NULL) {

This one I managed to 'fix' by casting the strndup() return value to
(char*). I naively assume that is a valid solution? 

The second error is only triggered when the --with-prngd-socket=
configure option is set:

  cc-1126 c99: ERROR File = entropy.c, Line = 213
    Expected a statement.

This error is trivial to fix by adding the missing closing bracket in
entropy.c:208

After successfully building OpenSSH with these two 'fixes', make tests
fails as follows:

regress/unittests/sshbuf/test_sshbuf_misc.c:44 test #77 "sshbuf_dump"
ASSERT_INT_NE(feof(out), 0) failed:
   feof(out) = 0
           0 = 0
/bin/sh[5]: 10908 Abort(coredump)
make[1]: *** [Makefile:230: unit] Error 134
make[1]: Leaving directory '/opt/vntg/src/openssh-8.0p1/regress'
make: *** [Makefile:591: tests] Error 2

In addition, sshd won't start up because it is "unable to load host
key", even though the key is valid:

$> ssh-keygen -f hostkey_ecdsa -t ecdsa -N '' -b 521
Your identification has been saved in hostkey_ecdsa.
Your public key has been saved in hostkey_ecdsa.pub.

$> `pwd`/sshd -ddd -D -h hostkey_ecdsa -f sshd_config
debug2: load_server_config: filename sshd_config
debug2: load_server_config: done config len = 195
debug2: parse_server_config: config sshd_config len 195
debug3: sshd_config:41 setting AuthorizedKeysFile .ssh/authorized_keys
debug3: sshd_config:109 setting Subsystem sftp 
/usr/libexec/sftp-server
debug1: sshd version OpenSSH_8.0, OpenSSL 1.1.0j  20 Nov 2018
Unable to load host key: /opt/vntg/src/openssh-8.0p1/hostkey_ecdsa
sshd: no hostkeys available -- exiting.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.


More information about the openssh-bugs mailing list