aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2012-08-22ssl: Fix PRF logicIngela Anderton Andin
2012-08-22ssl: Add TLS 1.2 cipher suitesAndreas Schultz
2012-08-22ssl: Implement and activate PRFs for TLS 1.1 and 1.2Andreas Schultz
2012-08-22ssl: make PRF function selectableAndreas Schultz
TLS 1.2 allows to negotiate the used PRF, additional the default PRF uses a different hash. This change make the PRF selectable and hardwires the PRF for TLS < 1.2
2012-08-22ssl: Add TLS version paramter to verify_dh_paramsAndreas Schultz
dh parameter verification is done differently with TLS 1.2. Prepare for that by passing the verion to verify_dh_params.
2012-08-22ssl: Add TLS version to dec_hs/2Andreas Schultz
TLS 1.2 changes the layout of several handshake records. This adds the TLS version to dec_hs/2 so it can decode those.
2012-08-22ssl: Add TLS version to ssl_handshake:key_exchange/3Andreas Schultz
TLS 1.2 changed the way digital signatures are done. key_exchange/3 needs to pass the version to it.
2012-08-22ssl: Update ssl_cipher_SUITE for TLS 1.1 and TLS 1.2Andreas Schultz
now that we handle TLS 1.1+ records correctly, the test suite have to take that into account.
2012-08-22ssl: Add TLS 1.2 block cipher IV handlingAndreas Schultz
2012-08-22ssl: Consider TLS version when building cipher blocksAndreas Schultz
With TLS 1.2 the handling of the IV in cipher blocks changed. This prepares ssl_cipher:cipher/5 for that change by passing the TLS version into it and allowing generic_block_cipher_from_bin/4 to overload the IV.
2012-08-22ssl: Calculate handshake hash only when neededAndreas Schultz
TLS/SSL version before 1.2 always used a MD5/SHA combination for the handshake hashes. With TLS 1.2 the default hash is SHA256 and it is possible to negotiate a different hash. This change delays the calculation of the handshake hashes until they are really needed. At that point the hash to use should be known. For now MD5/SHA is still hard coded.
2012-08-22public_key: Fix documentation typoSverker Eriksson
dsa -> dss
2012-08-22public_key: Add sha224 to RSA sign/verifySverker Eriksson
2012-08-22crypto: Add sha224 for rsa sign/verifySverker Eriksson
2012-08-22crypto: Add more generic hash interfaceSverker Eriksson
2012-08-22crypto: Add sha224Sverker Eriksson
2012-08-22crypto: fix hmac_sha384 and add hmac test cases from RFC-4231Andreas Schultz
2012-08-22crypto: Add sha384Sverker Eriksson
2012-08-22crypto: Cleanup code for sha256 and sha512Sverker Eriksson
2012-08-22crypto: Add SHA256 and SHA512 based MACsAndreas Schultz
2012-08-22public_key: Align the interface of sign and verify with cryptoSverker Eriksson
2012-08-22public_key: Generalised APIIngela Anderton Andin
2012-08-22public_key: Add rsa and dss hash signing supportAndreas Schultz
2012-08-22crypto: Redo interface for rsa and dss hash signingSverker Eriksson
Replace _hash functions with {digest,_} argument to existing sign/verify functions.
2012-08-22crypto: Add rsa and dss hash signing supportAndreas Schultz
2012-06-20Merge branch 'ia/ssl/recv-bug/OTP-10118' into maintIngela Anderton Andin
* ia/ssl/recv-bug/OTP-10118: ssl: Fix bug in the handling of remote connection closure of {active,false} ssl sockets.
2012-06-19ssl: Fix pem cache bugIngela Anderton Andin
A general case clause was put before a less general so that the less general case would never match.
2012-06-15ssl: Fix bug in the handling of remote connection closure of {active,false} ↵Ingela Anderton Andin
ssl sockets.
2012-06-13Merge branch 'ia/ssl/bottlenecks/OTP-10113' into maintIngela Anderton Andin
* ia/ssl/bottlenecks/OTP-10113: ssl: Test case fixes ssl: Avoid second bottleneck in supervisor ssl: File handling optimization ssl: Simpler PEM cache ssl: Refactored for readability ssl: Use md5 as file ref id instead of filenames ssl: Move ets:select bottleneck in server ssl: Renegotiate updates session id in gen_fsm state ssl: Use ordered_set in cache ssl: Move and avoid ets:select bottleneck in client ssl: Reuse session check optimization ssl: Avoid supervior bottleneck
2012-06-12Merge branch 'ia/ssh/missing-reason-in-catch-exit/OTP-10112' into maintIngela Anderton Andin
* ia/ssh/missing-reason-in-catch-exit/OTP-10112: Improved handling of multiple closes
2012-06-12ssl: Test case fixesIngela Anderton Andin
2012-06-08ssl: Avoid second bottleneck in supervisorIngela Anderton Andin
Do proc_lib:spawn_link instead of proc_lib:start_link as synchronized init is not used/needed anyway.
2012-06-08ssl: File handling optimizationIngela Anderton Andin
Avoid cach validation with file:file_info/2 as this i too expensive and causes a bottleneck in the file server. Instead we expose a new API function ssl:clear_pem_cache/0 to deal with the problem. As we think it will be of occasional use and the normal case is that the cache will be valid we think it is the right thing to do. Convert file paths to binary representation in the ssl API module to avoid uncessarry calls in file later on. Also add sanity checks for openssl versions in testsuite due to new openssl bugs.
2012-06-08Merge branch 'lukas/otp/install_with_whitespace/OTP-10107' into maintLukas Larsson
* lukas/otp/install_with_whitespace/OTP-10107: Update to work with space in include path Update to work with whitespace in exec path
2012-06-08Update to work with space in include pathLukas Larsson
OTP-10109
2012-06-08ssl: Simpler PEM cacheIngela Anderton Andin
2012-06-08ssl: Refactored for readabilityIngela Anderton Andin
Instance of state variable that are "updated" in a function is called for example State0 and the last instance, that should be returned, is called State possible intermidiat versions are suffixed by increasing numbers. State0 may be rturned in error cases. Avoid nesting case statments.
2012-06-08ssl: Use md5 as file ref id instead of filenamesDan Gudmundsson
Aviods storing a lot of data
2012-06-08ssl: Move ets:select bottleneck in serverDan Gudmundsson
Only use ssl_manager for selecting new ids to guarantee uniqueness, but reuse check does not need to be performed by the manager.
2012-06-08ssl: Renegotiate updates session id in gen_fsm stateIngela Anderton Andin
The session id keept in the connection processes state must be updated to be the id selected by ssl_handshake:client_hello, failing to do so will cause a crash if the session is not reused.
2012-06-08ssl: Use ordered_set in cacheDan Gudmundsson
So we can use partial bound keys for matching
2012-06-08ssl: Move and avoid ets:select bottleneck in clientIngela Anderton Andin
Do not use ssl_manager process for selecting an id. It's unnecessary to involve the manager process at all on the client side.
2012-06-08ssl: Reuse session check optimizationIngela Anderton Andin
2012-06-08ssl: Avoid supervior bottleneckIngela Anderton Andin
This is done by using proc_lib and gen_fsm:enter_loop so that supervisor will not have to wait for the relative long initialization of an ssl connection process before starting another connection process.
2012-06-08Merge branch 'kenneth/asn1/multiple_extaddgroup/OTP-10058' into maintKenneth Lundin
* kenneth/asn1/multiple_extaddgroup/OTP-10058: Add support for multiple ExtensionAdditionGroups
2012-06-05Update to work with whitespace in exec pathLukas Larsson
OTP-10106 OTP-10107
2012-06-04Merge branch 'bjorn/remove-hybrid-heap/OTP-10105' into maintLukas Larsson
* bjorn/remove-hybrid-heap/OTP-10105: Remove stale code for hybrid heap and incremental GC Remove the hipe_bifs:show_message_area/0 BIF Remove support for erlang:system_info(global_heaps_size) Remove the erlang:garbage_collect_message_area/0 BIF Remove workarounds for hybrid and shared heaps in test suites
2012-06-01Improved handling of multiple closesIngela Anderton Andin
exit:{normal} -> exit:{normal, _} this typo could sometimes cause a crash when trying to close a channel that was already closed.
2012-06-01Bug fixes and improvements of dialyzer_typesigHans Bolinder
1. Sometimes the solver forgot that a list had entered the error state. The bug has been fixed by storing the atom 'error' in MapDict. An example where the bug occurred is io_lib_pretty:printable_bin(). The returned spec was weaker than it should have been, but the fix-point loop hid the bug (in this case). 2. lists:partition() has been substituted for lists:splitwith() in enumerate_constraints(). This fix together with 3. solves a problem with long execution times for deeply nested fun:s. An example which is now much faster is lib/compiler/test/lc_SUITE:deeply_nested/1 (included as dialyzer/test/small_SUITE_data/src/deep_lc.erl). 3. The calculation of components in enumerate_constraints() has been simplified and optimized. The important thing here is that _all_ of the simple constraints have been saturated before entering the complex part. 4. The pretty printing of constraints has been improved.
2012-06-01Merge branch 'lukas/stdlib/ensure_dir_infinite_loop/OTP-10104' into maintLukas Larsson
* lukas/stdlib/ensure_dir_infinite_loop/OTP-10104: Fix infinite loop when an invalid drive letter it given