Make fails on SunOS 4.1.2 system when linking ssh-keygen for lack of "strtoul" in library. Using gcc with Sun provided libraries (libc?) rather than gnu libraries. strtoul is used in moduli.c, which is a new file in openssh 3.7p1 vs. 3.5p1, which previously compiled fine. I am unsure whether the right approach is a change in the configure process to detect this and provide an alternate strtoul, or whether the use of strtoul could be avoided through use of strtol in this case. Of course the other solution is to declare a lack of support for old OSs, but those legacy applications just live on... I have not the knowledge required to propose a fix, but I am willing to test.
Oops forgot to say that I configured with the following command: ./configure --prefix=/usr/local --sysconfdir=/etc/ssh --with-tcp-wrappers --without-shadow --with-prngd-socket=/var/run/egd-pool then: make
I don't think strtol is an acceptable substitute. It should be relatively easy to use OpenBSD's strtoul in openbsd-compat: http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdlib/strtoul.c
Created attachment 420 [details] Add strtoul in openbsd-compat/ Please try the attached patch. Note that you will need to run "autoconf" to rebuild configure. If you don't have autoconf, you can use this file: http://www.zip.com.au/~dtucker/openssh/configure-strtoul.gz , just replace the configure from 3.7.1p1 with it.
The patch seems to fix the problem nicely. Thanks. As I do not have autoconf on that machine, I did use your alternate configure. patch <patchfile configure-strtoul [options] make make install all worked fine, and ssh and sshd seem to run fine. Thanks again.
Anyone object to patch id 420 going into -current?
ok by me
Applied to -current, thanks.
*** Bug 735 has been marked as a duplicate of this bug. ***
Mass change of RESOLVED bugs to CLOSED