Age | Commit message (Collapse) | Author |
|
* hans/crypto/bench/OTP-15447:
crypto: New test suite - crypto_bench_SUITE
|
|
See also ERL-815.
|
|
We want to be able to save a specific session to reuse, and make sure
it is reusable immediatly when the connection has been established.
Add client option {reuse_session, SessionID::binary()}
We also do not want clients to save sessions that it did not verify.
Additionaly change behaviour of the client and server to not save sessions
if reuse_session is set to false.
|
|
Modernize test case option handling
|
|
No need for this test case to set a specific cipher suite. An appropriate cipher suite
will be negotiated and it will of course be the same for clients with the same configuration.
|
|
|
|
* peterdmv/ssl/handshake_traffic_secret/OTP-15429: (21 commits)
ssl: Skip TLS 1.3 suites if crypto lacks support
ssl: Update testcase 'encode_decode_srp'
ssl: Fix dialyzer warnings
ssl: Improve AEAD encode/decode
ssl: Refactor state 'negotiated'
ssl: Add 'CertificateVerify'
ssl: Add support for x25519 and x448 in ECDH
ssl: Implement transcript_hash for TLS 1.3
ssl: Fix encoding/decoding of supported_versions
ssl: Check if RSASSA-PSS is supported by crypto
ssl: Reorder default signature schemes
ssl: Create server 'Certificate' message
ssl: Calculate handshake traffic keys
ssl: Add tests for TLS 1.3
ssl: Fix handling of signature algorithms
ssl: Process "supported_versions" before decoding
ssl: Update cipher suite formatting in ssl_logger
ssl: Fix cipher suite selection
ssl: Comment usage of 'state' in TLS 1.3
ssl: Implement TLS 1.3 key schedule
...
Change-Id: Iffeff2e2fefa8af618d6d4a3457b8a9dd9392685
|
|
The compiler would crash when compiling code such as:
(A / B) band 16#ff
The type for the expression would be 'none', but beam_type:verified_type/1
did not handle 'none'.
https://bugs.erlang.org/browse/ERL-829
|
|
Introduce subtraction of types to allow some redundant tests to be
eliminated.
Consider this function:
foo(L) when is_list(L) ->
case L of
[_|_] -> non_empty;
[] -> empty
end.
After entering the body of the function, L is known to be either
a cons cell or nil (otherwise the is_list/1 guard would have failed).
If the L is not a cons cell, it must be nil. Therefore, the test
for nil in the second clause of the case can be eliminated.
Here is the SSA code with some additonal comments for the function
before the optimization:
function t:foo(_0) {
0:
@ssa_bool = bif:is_list _0
br @ssa_bool, label 4, label 3
4:
%% _0 is now a list (cons or nil).
@ssa_bool:8 = is_nonempty_list _0
br @ssa_bool:8, label 9, label 7
9:
ret literal non_empty
7:
%% _0 is not a cons (or we wouldn't be here).
%% Subtracting cons from the previously known type list
%% gives that _0 must be nil.
@ssa_bool:10 = bif:'=:=' _0, literal []
br @ssa_bool:10, label 11, label 6
11:
ret literal empty
6:
_6 = put_tuple literal case_clause, _0
%% t.erl:5
@ssa_ret:12 = call remote (literal erlang):(literal error)/1, _6
ret @ssa_ret:12
3:
_9 = put_list _0, literal []
%% t.erl:4
@ssa_ret:13 = call remote (literal erlang):(literal error)/2, literal function_clause, _9
ret @ssa_ret:13
}
Type subtraction gives us that _0 must be nil in block 7, allowing us to
remove the comparison of _0 with nil. The code for the function can be simplified
to:
function t:foo(_0) {
0:
@ssa_bool = bif:is_list _0
br @ssa_bool, label 4, label 3
4:
@ssa_bool:8 = is_nonempty_list _0
br @ssa_bool:8, label 9, label 11
9:
ret literal non_empty
11:
ret literal empty
3:
_9 = put_list _0, literal []
%% t.erl:4
@ssa_ret:13 = call remote (literal erlang):(literal error)/2, literal function_clause, _9
ret @ssa_ret:13
}
|
|
|
|
|
|
rickard/dirty_scheduler_collapse/maint-21/OTP-15509
* rickard/dirty_scheduler_collapse/OTP-15509:
Fix bug causing dirty scheduler sleeper list inconsistency
|
|
|
|
Code generation for 'or' with {z,0} destination could generate duplicate
new labels. The bug was introduced in eb571f8951bd.
|
|
There is no easy way to convert xor or is_record/2 to test operations.
|
|
|
|
When an instruction has been eliminated, the 'succeeded' instruction must
be eliminated.
|
|
|
|
As beam_ssa_type is about to get smarter, beam_validator must
be smarter too.
|
|
TLS 1.3 test suites requires TLS 1.3 support in crypto that is
openssl 1.1.1 or later shall be available.
This commit tests support for RSASSA-PSS signature algorithm
and x448 Diffie-Hellman key agreement.
Change-Id: I003ab376339b003fbbd3d0a66e10c368a16023ad
|
|
Change-Id: I16dccce4a0a8980fe0f888969945aef8ed38a9bc
|
|
Change-Id: I9269825c833d1461369828a9228f384ccf2543a9
|
|
- Update calculation of nonce and additional data
- Update cipher_aead, decipher_aead
- Add test for TLS 1.3 encode/decode
Change-Id: Id0a5cc68d8746079fb42c0192c0c64405f6d7a72
|
|
Change-Id: I1a2e9b1b639cae0d78b6d25d7b6e761a2d90b7b1
|
|
Change-Id: Iab7148f609b4965cd1a815d04507a59cc1b8fb5f
|
|
Change-Id: I206b851fc616c53475f4a2935f6f52baf8f3e1e6
|
|
Change-Id: I03be63e9f436f60cdaee6583c930f235fd5eb24c
|
|
Encode length of supported_versions in one octet instead of two.
Change-Id: If24b38f3d2a40f0aa7152bb05bc0392efca6454c
|
|
Filter all rsa_pss_rsae and rsa_pss_pss signature schemes if
rsa_pkcs1_pss_padding is not supported by crypto.
Change-Id: Ie6d7ca3736011c71462eac925055f831777f9c9d
|
|
Change-Id: I54ef4f946c64510ca6df073aefc30c0b28723b3b
|
|
Create a TLS 1.3 'Certificate' message in the 'negotiated' state.
Change-Id: I03115de2353324f8533146ba19809064da6b0866
|
|
Change-Id: Ifdf8978c58c15313e8a7973cff97dda3458f7721
|
|
Change-Id: I23a2faa5f07836333c9b50af388162d2bbb9a246
|
|
Change-Id: I5cc6b470ea19e32dd5516a86fe6750c5b51d5368
|
|
Change-Id: I465760b7001692367c68839219745e40abafdfa8
|
|
Change-Id: Icea7ba523b15d7db4c816f542a16fc92eb6b38ad
|
|
Accept only TLS 1.3 ciphers when TLS 1.3 is selected.
Change-Id: I4e934d344f52208263ffdeb31c357dd5727472b9
|
|
Change-Id: I284faa415c97eb533df0a7e5777fe5d929010e56
|
|
Change-Id: I0454890c604f47cffd3bd83c217ff571f73965fb
|
|
Change-Id: I08dbfb38b198ef24798a85d8bcf498d697123fad
|
|
* peterdmv/ssl/fix-failing-srp-tc:
ssl: Fix srp testcase fault
Change-Id: I0d7bf24e16bec0b61d385a6cd2ef81f334b9e397
|
|
* maint:
Updated OTP version
Prepare release
|
|
* maint-19:
Updated OTP version
Prepare release
|
|
* maint:
ssl: Fix CRL suite with openssl-1.1.1a
Change-Id: I18ffe894158e8881af20bba6f6a60b85063b937c
|
|
* peterdmv/ssl/fix-crl-suite:
ssl: Fix CRL suite with openssl-1.1.1a
Change-Id: I2847107b6cf0210c3002c016a6ba49288505d06f
|
|
|
|
* ingela/ssl/test-cuddle:
ssl: Add renegotiation test case to OpenSSL sanity check
ssl: Better stream handling
|
|
|
|
Remove rizzo rests that made incorrect assumptions
|
|
|