To protect FIPS-related global variables, add locking mechanisms
authorRichard Levitte <levitte@openssl.org>
Fri, 30 Jul 2004 14:38:02 +0000 (14:38 +0000)
committerRichard Levitte <levitte@openssl.org>
Fri, 30 Jul 2004 14:38:02 +0000 (14:38 +0000)
commit7f9c37457a4e09926c356736541a45818011c038
tree05ef19e3a27268e415b439e3c0bb0da2627c0445
parent86022a79a5536067a21e2d6f62ee024bfd16a1f5
To protect FIPS-related global variables, add locking mechanisms
around them.

NOTE: because two new locks are added, this adds potential binary
incompatibility with earlier versions in the 0.9.7 series.  However,
those locks will only ever be touched when FIPS_mode_set() is called
and after, thanks to a variable that's only changed from 0 to 1 once
(when FIPS_mode_set() is called).  So basically, as long as FIPS mode
hasn't been engaged explicitely by the calling application, the new
locks are treated as if they didn't exist at all, thus not becoming a
problem.  Applications that are built or rebuilt to use FIPS
functionality will need to be recompiled in any case, thus not being a
problem either.
31 files changed:
crypto/cryptlib.c
crypto/crypto.h
crypto/dsa/dsa_sign.c
crypto/dsa/dsa_vrf.c
crypto/md32_common.h
crypto/pem/pem_all.c
crypto/rand/md_rand.c
crypto/rand/rand_lib.c
fips/aes/fingerprint.sha1
fips/aes/fips_aes_core.c
fips/des/fingerprint.sha1
fips/des/fips_des_enc.c
fips/des/fips_set_key.c
fips/dh/fingerprint.sha1
fips/dh/fips_dh_gen.c
fips/dsa/fingerprint.sha1
fips/dsa/fips_dsa_gen.c
fips/dsa/fips_dsa_ossl.c
fips/fingerprint.sha1
fips/fips.c
fips/fips.h
fips/fips_locl.h
fips/rsa/fingerprint.sha1
fips/rsa/fips_rsa_eay.c
fips/rsa/fips_rsa_gen.c
fips/sha1/fingerprint.sha1
fips/sha1/fips_md32_common.h
fips/sha1/fips_sha_locl.h
fips/sha1/fips_standalone_sha1.c
fips/sha1/standalone.sha1
ssl/ssl_ciph.c