aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto
AgeCommit message (Collapse)Author
2014-02-18Fix library application appup filesTobias Schlager
As discussed in issue #240 *all* OTP library applications use the '.*' wildcard as up and down version. This makes library applications always up- and downgradeable. Using the wildcard version obsoletes all maintenance tasks regarding library applications' appup files. Additionally, it prevents upgrade problems caused by automatically included application dependencies when using reltool to create releases. Missing copyright headers are now consistently present.
2014-02-12crypto: Fix bug when using old hmac contextSverker Eriksson
Symptom: Using an old context (that had already been passed as argument to either hmac_upgrade or hmac_final) could cause VM crash or worse. Reason: Only a shallow copy (memcpy) of the context was made causing a new context to partly mutate its parent context into an inconsistent state. Problem: Only OpenSSL v1.0 supports deep copy of hmac context. It is thus not possible to implement a functional interface for older OpenSSL versions (0.9.8) which still have wide spread use. Solution: Change hmac contexts into a mutable state using NIF resources. Document reuse of old contexts as undefined. Future: If a need for reusing old context variables arise, a new hmac_copy function could be introduced that is only supported for OpenSSL v1.0.
2014-02-05crypto: Abort VM if out of memorySverker Eriksson
Nice crash instead of segv or worse.
2014-01-27Merge branch 'sverk/crypto-process-slaughter'Sverker Eriksson
OTP-11619 * sverk/crypto-process-slaughter: crypto: Remove all processes from application crypto
2014-01-24Merge branch 'andrewtj/atj-crypto-chiphertext-typo'Henrik Nord
* andrewtj/atj-crypto-chiphertext-typo: crypto: Fix 'ChipherText' typo in doc OTP-11609
2014-01-17crypto: Remove all processes from application cryptoSverker Eriksson
and make it into a pure library application. The processes where a legacy from the time when crypto was implemented with a driver.
2014-01-13crypto: selective support for GF2m curvesAndreas Schultz
Newer OpenSSL versions allow to selectively disable GF2m elliptic curves. Selectively enable GF2m curves is support for them is available.
2014-01-13crypto: document ec_curves/0 and ec_curve/1Andreas Schultz
2014-01-13crypto: add brainpool (RFC 5639) curvesAndreas Schultz
RFC-5649, Section 1, documents the advantages that these curves might have over others (ANSI, SEC1/2)
2014-01-13crypto: move elitic curve definitions from OpenSSL built-ins to ErlangAndreas Schultz
Decouple eliptic curve definition from OpenSSL and define them in Erlang.
2014-01-13crypto: add ECDH test vectors for more curvesAndreas Schultz
Vectors have been taken from NIST's CRYPTOGRAPHIC ALGORITHM VALIDATION PROGRAM (CAVP) (http://csrc.nist.gov/groups/STM/cavp/)
2013-12-16crypto: Fix memory leaks and invalid deallocationsSverker Eriksson
in mod_pow, mod_exp and generate_key(srp,...)
2013-12-10Merge tag 'OTP_R16B03'Magnus Lidén
The R16B03 release Conflicts: lib/sasl/vsn.mk
2013-12-09Prepare releaseOTP_R16B03Erlang/OTP
2013-12-03crypto: Fix bug in change_basenameSverker Eriksson
strrchr used on non null-terminated string.
2013-12-03Merge branch 'sverk/yb/aes_ige_crypt'Sverker Eriksson
* sverk/yb/aes_ige_crypt: crypto: Update supports/0 for des3_cbf and aes_ige256 crypto: Throw notsup for AES IGE if openssl older than 0.9.8c crypto: Add IGE mode for AES OTP-11522
2013-12-03Merge branch 'maint'Sverker Eriksson
2013-12-03Merge branch 'sverk/crypto-no_answer_from_tc_supervisor' into maintSverker Eriksson
* sverk/crypto-no_answer_from_tc_supervisor: crypto: Add more lazy_eval to avoid no_answer_from_tc_supervisor
2013-12-02Merge branch 'maint'Henrik Nord
2013-12-02Merge branch 'nox/crypto-uninitialized-vars' into maintHenrik Nord
* nox/crypto-uninitialized-vars: Fix some uninitialized pointers in crypto OTP-11510
2013-12-02crypto: Add more lazy_eval to avoid no_answer_from_tc_supervisorSverker Eriksson
Amendment to f1ebf482e1460d6146d55aa6cab00ab3e11f1741
2013-11-27Merge branch 'maint'Sverker Eriksson
2013-11-27crypto: Update supports/0 for des3_cbf and aes_ige256Sverker Eriksson
2013-11-27crypto: Throw notsup for AES IGE if openssl older than 0.9.8cSverker Eriksson
2013-11-22crypto: Avoid test_server crash 'no_answer_from_tc_supervisor'Sverker Eriksson
2013-11-21Fix some uninitialized pointers in cryptoAnthony Ramine
crypto.c:2748:9: warning: variable 'bn_prime' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized] if (!get_bn_from_bin(env, argv[0], &bn_verifier) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ crypto.c:2758:6: note: uninitialized use occurs here if (bn_prime) BN_free(bn_prime); ^~~~~~~~ crypto.c:2748:9: note: remove the '||' if its condition is always false if (!get_bn_from_bin(env, argv[0], &bn_verifier) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2013-11-16crypto: Fix 'ChipherText' typo in docAndrew Tunnell-Jones
2013-10-16Merge branch 'sverk/load-nif-unicode'Sverker Eriksson
OTP-11408 * sverk/load-nif-unicode: erts: Fix bug in atom to filename conversions Fix open_ddll for win erts, crypto: Support NIF library with unicode filename on windows erts: Factor out erts_convert_filename_to_wchar() erts: Fix compiler warning erts: Fix loading of NIF library with unicode in path erts: Remove unused constant DRIVER_TAB_SIZE
2013-09-30crypto: Add IGE mode for AESYura Beznos
2013-09-19erts, crypto: Support NIF library with unicode filename on windowsSverker Eriksson
2013-09-17Merge tag 'OTP_R16B02'Magnus Lidén
The R16B02 release Conflicts: lib/sasl/vsn.mk
2013-09-16Prepare releaseOTP_R16B02Erlang/OTP
2013-08-21erts: Add option to include nifs staticallyLukas Larsson
Both crypto and asn1 are supported.
2013-06-20Merge branch 'maint'Sverker Eriksson
2013-06-20Merge branch 'sverk/crypto-remove-ec-resource' into maintSverker Eriksson
* sverk/crypto-remove-ec-resource: crypto: Supress some false positives from valgrind crypto: Refactor remove resource for EC_KEY crypto: Fix some compiler warnings
2013-06-18Merge tag 'OTP_R16B01'Björn-Egil Dahlberg
The R16B01 release Conflicts: lib/sasl/vsn.mk
2013-06-17Prepare releaseOTP_R16B01Erlang/OTP
2013-06-12crypto: Supress some false positives from valgrindSverker Eriksson
2013-06-12crypto: Refactor remove resource for EC_KEYSverker Eriksson
The resource was not needed as it was never kept between external crypto calls.
2013-06-12crypto: Fix some compiler warningsSverker Eriksson
2013-06-12Merge branch 'maint'Sverker Eriksson
2013-06-11crypto: Fix bug with takover of EC resource typeSverker Eriksson
enif_open_resource_type() must be called even during repeated loading of same library. Otherwise the resource type will be deallocated when the old module instance is purged.
2013-06-10Merge remote-tracking branch 'upstream/maint'Ingela Anderton Andin
2013-06-10Merge branch 'ia/public_key/crypto/prepare-for-release' into maintIngela Anderton Andin
* ia/public_key/crypto/prepare-for-release: public_key & ssl: Add ASN-1 dependency crypto & public_key: prepare for release
2013-06-10Merge branch 'ia/crypto/avoid-too-big-binaries/OTP-11142' into maintIngela Anderton Andin
* ia/crypto/avoid-too-big-binaries/OTP-11142: Teach crypto.c not to call enif_compute_timeslice with 0 Add enif_consume_timeslice to appropriate crypto NIFs crypto: Add large test data crypto: Avoid big binaries in nifs Crypto: Structure code
2013-06-10Merge remote-tracking branch 'upstream/maint'Ingela Anderton Andin
2013-06-07Teach crypto.c not to call enif_compute_timeslice with 0Patrik Nyblom
2013-06-07crypto & public_key: Clearify documentation.Ingela Anderton Andin
2013-06-05crypto & public_key: prepare for releaseIngela Anderton Andin
2013-06-05Add enif_consume_timeslice to appropriate crypto NIFsPatrik Nyblom