pkgsrc-Bugs archive

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

Re: pkg/40434: security/skey fails to build on Solaris



Jörn Clausen wrote:
 Following patch may fixes the failure:
[...]

Yes, it did. Thanks a lot!

Rats, now security/openssh is broken:

configure:11868: checking for s/key support
configure:11888: gcc -o conftest -O -I/usr/local/pkgsrc/pkgsrc-cvs-rebuild/include -I/usr/local/pkgsrc/pkgsrc-cvs-rebuild/gcc34/incl ude -I/usr/include -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -fno-builtin-memset -I/usr/local/pkgsrc/pk gsrc-cvs-rebuild/include -I/usr/local/pkgsrc/pkgsrc-cvs-rebuild/gcc34/include -I/usr/include -I/usr/local/pkgsrc/pkgsrc-cvs-rebuild/ include -L/software/local/pkgsrc/sunos5.10-x64/pkgsrc-cvs-rebuild/gcc34/bin/../lib/gcc/i386-pc-solaris2.10/3.4.6 -Wl,-R/software/loc al/pkgsrc/sunos5.10-x64/pkgsrc-cvs-rebuild/gcc34/bin/../lib/gcc/i386-pc-solaris2.10/3.4.6 -L/software/local/pkgsrc/sunos5.10-x64/pkg src-cvs-rebuild/gcc34/bin/../lib -Wl,-R/software/local/pkgsrc/sunos5.10-x64/pkgsrc-cvs-rebuild/gcc34/bin/../lib -L/usr/local/pkgsrc/ pkgsrc-cvs-rebuild/lib -Wl,-R/usr/local/pkgsrc/pkgsrc-cvs-rebuild/lib -lnsl -lsocket -L/usr/local/pkgsrc/pkgsrc-cvs-rebuild/gcc34/li b -L/usr/lib -Wl,-R/usr/lib -L/usr/local/pkgsrc/pkgsrc-cvs-rebuild/lib conftest.c -lskey -lz >&5
conftest.c: In function `main':
conftest.c:80: warning: implicit declaration of function `exit'
Undefined                       first referenced
 symbol                             in file
MD5Init /software/local/pkgsrc/source/pkgsrc-cvs/pkgsrc/security/openssh/work.spare4200/.buildlink/lib/l ibskey.a(skeysubr.o) (symbol belongs to implicit dependency /usr/lib/libmd.so.1) MD5Final /software/local/pkgsrc/source/pkgsrc-cvs/pkgsrc/security/openssh/work.spare4200/.buildlink/lib/l ibskey.a(skeysubr.o) (symbol belongs to implicit dependency /usr/lib/libmd.so.1) MD5Update /software/local/pkgsrc/source/pkgsrc-cvs/pkgsrc/security/openssh/work.spare4200/.buildlink/lib/l ibskey.a(skeysubr.o) (symbol belongs to implicit dependency /usr/lib/libmd.so.1)
ld: fatal: Symbol referencing errors. No output written to conftest

This change to security/openssh/Makefile seems to solve the problem:

--- Makefile    2009/01/19 11:14:55     1.1
+++ Makefile    2009/01/19 12:19:03
@@ -94,6 +94,7 @@
.if (${OPSYS} == "NetBSD") || (${OPSYS} == "Darwin") || (${OPSYS} == "SunOS")
 .  include "../../security/skey/buildlink3.mk"
 CONFIGURE_ARGS+=       --with-skey=${BUILDLINK_PREFIX.skey}
+LDFLAGS+=-lmd5
 .else
 CONFIGURE_ARGS+=       --without-skey
 .endif

Probably it needs an extra .if to restrict this to Solaris. And I am unsure whether libmd.so or libmd5.so is the correct library to include, both seem to work.

As mentioned before, ssh from openssh now pulls in libcrypto.so from openssl, and /usr/lib/libmd5.so via skey. Whose MD5 routines win? I think it would be much cleaner to build skey and openssh that solely rely on security/openssl and don't use any of the functions provided by Solaris. There is /usr/bin/ssh, if you insist on using the functions provided by the OS.

NB: This only makes the packages compile, I have no idea, if they work as intended. As far as I can tell, skey should now have no support for MD4 whatsoever. But

$  skey -md4 ...

works and returns a result. But I can't say, if it is correct.

--
 Jörn Clausen                             
joern.clausen%uni-bielefeld.de@localhost
 Hochschulrechenzentrum                 http://www.uni-bielefeld.de/hrz/
 Universität Bielefeld


Home | Main Index | Thread Index | Old Index