<div dir="ltr"><div>Hi,<br><br>    I'm trying to build openssl with FIPS module on Ubuntu 14.04 32 bits, but during one of the steps the fipsld tool starts being called recursively.<br><br>    It happens on this step:<br>sh -c ( :; LIBDEPS="${LIBDEPS:--L.. -lssl  -L.. -lcrypto -ldl -L/usr/local/lib -lz}"; LDCMD="${LDCMD:-/usr/local/ssl/fips2.0/bin/fipsld}"; LDFLAGS="${LDFLAGS:--DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -fPIC -O3 -fomit-frame-pointer -Wall -I/usr/local/ssl/fips2.0/include}"; LIBPATH=`for x in $LIBDEPS; do echo $x; done | sed -e 's/^ *-L//;t' -e d | uniq`; LIBPATH=`echo $LIBPATH | sed -e 's/ /:/g'`; LD_LIBRARY_PATH=$LIBPATH:$LD_LIBRARY_PATH ${LDCMD} ${LDFLAGS} -o ${APPNAME:=openssl} openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o genpkey.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o pkey.o pkeyparam.o pkeyutl.o spkac.o smime.o cms.o rand.o engine.o ocsp.o prime.o ts.o srp.o ${LIBDEPS} )<br>fipsld -e /usr/local/ssl/fips2.0/bin/fipsld -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -fPIC -O3 -fomit-frame-pointer -Wall -I/usr/local/ssl/fips2.0/include -o openssl openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o genpkey.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o pkey.o pkeyparam.o pkeyutl.o spkac.o smime.o cms.o rand.o engine.o ocsp.o prime.o ts.o srp.o -L.. -lssl -L.. -lcrypto -ldl -L/usr/local/lib -lz<br>fipsld -e /usr/local/ssl/fips2.0/bin/fipsld /usr/local/ssl/fips2.0/lib//fipscanister.o /usr/local/ssl/fips2.0/lib/fips_premain.c -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -fPIC -O3 -fomit-frame-pointer -Wall -I/usr/local/ssl/fips2.0/include -o openssl openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o genpkey.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o pkey.o pkeyparam.o pkeyutl.o spkac.o smime.o cms.o rand.o engine.o ocsp.o prime.o ts.o srp.o -L.. -lssl -L.. -lcrypto -ldl -L/usr/local/lib -lz<br>fipsld -e /usr/local/ssl/fips2.0/bin/fipsld /usr/local/ssl/fips2.0/lib/fips_premain.c /usr/local/ssl/fips2.0/lib//fipscanister.o /usr/local/ssl/fips2.0/lib/fips_premain.c -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -fPIC -O3 -fomit-frame-pointer -Wall -I/usr/local/ssl/fips2.0/include -o openssl openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o genpkey.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o pkey.o pkeyparam.o pkeyutl.o spkac.o smime.o cms.o rand.o engine.o ocsp.o prime.o ts.o srp.o -L.. -lssl -L.. -lcrypto -ldl -L/usr/local/lib -lz<br><br>    It keeps calling fipsld recursively, with each call adding one more "/usr/local/ssl/fips2.0/lib/fips_premain.c" to the command.<br>    Any idea what am I missing ?<br><br>    My build steps are:<br><br>export FIPSDIR="/usr/local/ssl/fips2.0"<br>export MACHINE=linux-generic32<br>export CC="/usr/local/ssl/fips2.0/bin/fipsld"<br>export FIPSLD_CC="gcc"<br>export FIPS_SIG="/tmp/openssl-fips-2.0.16/util/incore"<br><br># build openssl fips module<br>cd /tmp/<br>curl -O <a href="https://www.openssl.org/source/openssl-fips-2.0.16.tar.gz">https://www.openssl.org/source/openssl-fips-2.0.16.tar.gz</a><br>gunzip -c openssl-fips-2.0.16.tar.gz | tar xf -<br>cd openssl-fips-2.0.16<br>./config<br>make<br>make install<br><br># build openssl<br>cd /tmp<br>curl -O <a href="https://www.openssl.org/source/openssl-1.0.2n.tar.gz">https://www.openssl.org/source/openssl-1.0.2n.tar.gz</a><br>tar -zxf openssl-1.0.2n.tar.gz<br>cd /tmp/openssl-1.0.2n<br>./Configure \<br>    --prefix=/usr/local \<br>    linux-generic32 \<br>    -fPIC \<br>    no-shared \<br>    no-capieng \<br>    fips \<br>    --with-fipsdir="/usr/local/ssl/fips2.0" \<br>    zlib \<br>    no-zlib-dynamic \<br>    --with-zlib-include="/usr/local/include" \<br>    --with-zlib-lib="/usr/local/lib"<br>make all -j1<br>make build_libs<br></div><div><br></div><div>--<br></div><div><div class="gmail_signature"></div><div dir="ltr" class="gmail_signature">Luís<br></div></div></div>