aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/c_src
AgeCommit message (Collapse)Author
2019-01-08Revamp strong_rand_bytes_nif()Doug Hogan
* Add bounds check before casting.
2019-01-08Revamp info_lib()Doug Hogan
* Add error checking and use enif_make_badarg() on error. * Use size_t when using sizeof(). * Move initialization away from declaration so it's not as easy to miss.
2019-01-08Revamp change_basename()Doug Hogan
* Change the parameter from int to size_t. - Only caller doesn't need to change since it was already passing sizeof(). * Add unsigned wrapping checks.
2019-01-08Revamp get_dss_public_key()Doug Hogan
* Simplify logic by having incremental allocation and only free on error on one place. * Add error checking on all OpenSSL calls. * Make it explicit when you need to be careful with non-reference counted pointers. - set0 calls will use the pointer values without ref counting. - On success, set pointers to NULL to avoid double frees since the struct is now responsible for freeing the resources.
2019-01-08Revamp get_dss_private_key()Doug Hogan
* Simplify logic by having incremental allocation and only free on error in one place. * Add error checking on all OpenSSL calls. * Make it explicit when you need to be careful with non-ref counted pointers. - set0 calls will save the pointer without reference counting. - On success, set pointers to NULL to avoid double frees since the struct is now responsible for freeing the resources.
2019-01-08Revamp ecdh_compute_key_nif()Doug Hogan
* Bug fix: ECDH_compute_key was not being checked for failures - That function returns 0 on failure and never returns < 0. - Using <= 0 check because OpenSSL uses that internally and on their wiki. * Remove unnecessary variable i * Make the gotos always flow downward rather than jumping back.
2019-01-08Revamp chacha20_stream_crypt()Doug Hogan
* Check return values on all OpenSSL and Erlang calls. * Remove trailing semicolon after function definition.
2019-01-08Revamp chacha20_stream_init()Doug Hogan
* Check return values on all OpenSSL calls. * Remove trailing semicolon after function definition.
2019-01-08Revamp poly1305_nif()Doug Hogan
* Fix a possible memory leak where enif_alloc_binary() wasn't always converted into a term or freed in the error path.
2019-01-08Revamp rc4_set_key()Doug Hogan
* Bounds check key.size before casting.
2019-01-08Revamp get_eddsa_key()Doug Hogan
* pkey is only set on success.
2019-01-08Revamp do_exor()Doug Hogan
* Add additional error checking.
2019-01-08Revamp cmac_nif()Doug Hogan
* Add error checking on all OpenSSL and Erlang calls.
2019-01-08Add limits.h to the common headerDoug Hogan
A number of files will do bounds checking.
2019-01-07Revamp hmac_context_dtor()Doug Hogan
Make it NULL safe.
2019-01-07Revamp evp_md_ctx_dtor()Doug Hogan
Make it NULL safe.
2019-01-07Revamp engine_ctx_dtor()Doug Hogan
Make it NULL safe.
2019-01-07Revamp evp_cipher_ctx_dtor()Doug Hogan
Make it NULL safe.
2019-01-02crypto: Fix 'make clean'Hans Nilsson
2018-12-21If init_atoms() fails, it should return __LINE__Doug Hogan
2018-12-21Make engine ctx init internal to engine.c per PR feedbackDoug Hogan
2018-12-21Make cipher ctx init internal to cipher.c per PR feedbackDoug Hogan
2018-12-21Make hash ctx init internal to hash.c per PR feedbackDoug Hogan
2018-12-21Make HMAC ctx init internal to hmac.c per PR feedbackDoug Hogan
2018-12-21Avoid unused warning with old OpenSSL versions per PR feedbackDoug Hogan
2018-12-20Add Ericsson AB copyright header to all new filesDoug Hogan
Using the same copyright header as crypto.c
2018-12-20Remove chacha20.h dependency in aead.cDoug Hogan
While it uses chacha20, it doesn't use Erlang chacha20 functions.
2018-12-20Move algorithms to a new fileDoug Hogan
crypto.c is now only responsible for declaring NIFs and setup/tear down.
2018-12-20Move most FIPS functionality to a new fileDoug Hogan
2018-12-20Move public/private key functionality to a new fileDoug Hogan
2018-12-20Move EVP functionality to a new fileDoug Hogan
2018-12-20Move ECDH functionality to a new fileDoug Hogan
2018-12-20Move EC functionality to a new fileDoug Hogan
2018-12-20Move xor functionality to a new fileDoug Hogan
2018-12-20Move block crypt functionality to a new fileDoug Hogan
2018-12-20Move AEAD functionality to a new fileDoug Hogan
2018-12-20Move info functionality to a new fileDoug Hogan
2018-12-20Move AES functionality to a new fileDoug Hogan
2018-12-20Move DSS functionality to a new fileDoug Hogan
2018-12-20Move poly1305 functionality to a new fileDoug Hogan
2018-12-20Move chacha20 functionality to a new fileDoug Hogan
2018-12-20Move random functionality to a new fileDoug Hogan
2018-12-20Move SRP functionality to a new fileDoug Hogan
2018-12-20Move EDDSA functionality to a new fileDoug Hogan
2018-12-20Move DH functionality to a new fileDoug Hogan
2018-12-20Move RC4 functionality to a new fileDoug Hogan
Also, move a FIPS check macro to the common openssl_config.h.
2018-12-20Move CMAC functionality to a new fileDoug Hogan
2018-12-20Move hash utility functions to a new fileDoug Hogan
2018-12-20Move cipher utility functions to a new fileDoug Hogan
2018-12-20Move HMAC to new filesDoug Hogan