[openssl-users] is 1.0.2g meant to be buildable ? missing rc4_md5_enc implementation !

Jakob Bohm jb-openssl at wisemo.com
Wed Apr 6 21:05:18 UTC 2016


No, that script is run by the Makefile if relevant.

Given what others have reported recently, please check
what arguments you passed to config or configure (before
running make).

Also remember to do make depend.

On 06/04/2016 22:58, Jason Vas Dias wrote:
> Aha! I just saw rc4-md5-x86_64.pl - am I meant to run this manually to
> produce the ASM
> to compile to produce the object ? Why wasn't this run as part of the build ?
> I am building with perl-5.22.1 , gcc-5.3.0, make-4.1 on Linux x86_64 LFS .
>
>
> On 06/04/2016, Jason Vas Dias <jason.vas.dias at gmail.com> wrote:
>> please can anyone tell me:
>> Is the 1.0.2g release from :
>>     http://www.openssl.org/source/openssl-1.0.2g.tar.gz
>> meant to build ? Is this meant to be the latest stable release , or is
>> that 1.0.1s ?
>> The 1.0.2g release does not build, for the linux-x86_64:gcc 'threads
>> shared' configuration
>> (or any other AFAICS) because it lacks an implementation of
>> rc4_md4_enc() - there
>> are calls to it in crypto/evp/e_rc4_hmac_md5.c , but no definition of it :
>>
>> $ grep -RIn --include '*.[ch]' rc4_md5_enc
>> crypto/evp/e_rc4_hmac_md5.c:80:void rc4_md5_enc(RC4_KEY *key, const
>> void *in0, void *out,
>> crypto/evp/e_rc4_hmac_md5.c:144:            rc4_md5_enc(&key->ks, in +
>> rc4_off, out + rc4_off,
>> crypto/evp/e_rc4_hmac_md5.c:188:            rc4_md5_enc(&key->ks, in +
>> rc4_off, out + rc4_off,
>> $ make
>> ...
>> $ ( LIBDEPS="${LIBDEPS:--L.. -lssl  -L.. -lcrypto }";
>> LDCMD="${LDCMD:-gcc}"; LDFLAGS="${LDFLAGS:--DOPENSSL_THREADS
>> -march=x86-64 -mtune=native -O2 -g -fPIC -pipe }"; LIBPATH=`for x in
>> $LIBDEPS; do echo $x; done | sed -e 's/^ *-L//;t' -e d | uniq`;
>> LIBPATH=`echo $LIBPATH | sed -e 's/ /:/g'`; set -x;
>> 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} )
>> + LD_LIBRARY_PATH=..:
>> + gcc -DOPENSSL_THREADS -march=x86-64 -mtune=native -O2 -g -fPIC -pipe
>> -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
>> ../libcrypto.a(e_rc4_hmac_md5.o): In function `rc4_hmac_md5_cipher':
>> /usr/build/linux/openssl-1.0.2g/crypto/evp/e_rc4_hmac_md5.c:144:
>> undefined reference to `rc4_md5_enc'
>> /usr/build/linux/openssl-1.0.2g/crypto/evp/e_rc4_hmac_md5.c:188:
>> undefined reference to `rc4_md5_enc'
>> collect2: error: ld returned 1 exit status
>>
>> ie. the make fails because nowhere in any library or object file is
>> that function defined -
>> I have checked this with nm .
>>
>> I guess my answer is that ! should be building 1.0.1s ?
>>


Enjoy

Jakob
-- 
Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded



More information about the openssl-users mailing list