Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
Also added some links
|
|
|
|
|
|
SSH application
|
|
* hb/hipe/opaque_bugfix/OTP-12666:
hipe: Fix a bug in the handling of opaque types
|
|
* ia/pr/678/OTP-1267:
Revert "Add workaround for problems with s_client defaults"
ssl: Add unit test case
ssl: Ignore signature_algorithm (TLS 1.2 extension) sent to TLS 1.0/1 server
|
|
This reverts commit a3cf4eb4cdd2ce178d81b62faa9f47485fd82331.
This workaround is no longer needed as the, TLS-1.2 extension,
signature_algorithm is now correctly ignored by previous TLS versions.
|
|
An opaque type ?opaque(_) was put in a list where #opaque{} was
expected.
|
|
* vinoski/minor-erlang-el-fixes:
Minor fixes to emacs erlang-mode
|
|
* zandra/fix-ssl-obsolete-arity:
add arity to obsolete_1(ssl, negotiated_next_protocol, 1)
|
|
|
|
* wmalik/slave-specs:
Remove unused comments
Fix Host and Name type in slave.erl
|
|
A warning for an unmatched return was introduced in aaa7c917.
The caller of openzip_close/1 ignores the return value, which
could be an error tuple. In this situation, handling a fatal
error, it is OK to ignore the return value; thus, we only need
to make it explicit that we are ignoring the return value.
|
|
pre TLS 1.2 server should ignore the signature_algorithms extension.
The server code would attempt to select the signature/hash algorithm
even when using TLS 1.0 or 1.1. Instead it should simply use the default
algorithm on those versions.
|
|
Fix "Unbalanced parentheses" error when indenting particular map
constructs. Add new test cases for this fix.
To prevent infinite looping when the programmer mistakenly enters
incorrect syntax, detect cases where erlang-partial-parse fails to
advance when called within a loop, and raise an "Illegal syntax"
error.
|
|
|
|
|
|
Erlang bitstring type only uses as many bits as required, and
does not use padding to create complete bytes as ASN1 compact_bitstring
did. crypto:verify/5 will now fail, for some incorrect signatures
as it expects complete bytes which an incorrect signature may not have.
Instead of catching the failing crypto function and then returning
false we check the input and reject it right away.
|
|
* E.I bitstrings will not be decode as {Unused, Binary}, they are now
Erlang bitstrings.
* Also the compact_bit_string implies the legacy_erlang_types switch
- So removing the switch will also make OCTET STRING values be represented
as binaries.
- Undecoded open type will now be wrapped in a asn1_OPENTYPE tuple.
We need to handle this in pubkey_pbe.erl, maybe this can be eliminated
later by updating/refreshing ASN1-specs.
This will change some values in records returned by the public_key API
making this change a potentiall incompatibility.
|
|
* ia/ssl/inet-dep:
ssl: Add runtime depenency due to commit 4e0a5e36b38e3f15ed8f7d700d26f2424a47111c
|
|
* egil/fix-percept/OTP-12662:
percept: Fix http server config
|
|
* bjorn/maps:
Document the new {badmap,Term} and {badkey,Key} exceptions
Raise more descriptive error messages for failed map operations
erl_term.h: Add is_not_map() macro
Tigthen code for the i_get_map_elements/3 instruction
Pre-compute hash values for the general get_map_elements instruction
Teach the loader to pre-compute the hash value for single-key lookups
Optimize use of i_get_map_element/4
beam_emu: Slightly optimize update_map_{assoc,exact}
v3_codegen: Don't sort map keys in map creation/update
beam_validator: No longer require strict literal term order
Sort maps keys in the loader
De-optimize the has_map_fields instructions
erts/map_SUITE.erl: Add a test case that tests has_map_fields
Fully evaluate is_map/1 for literals at load-time
map_SUITE: Add tests of is_map/1 with literal maps
Run a clone of map_SUITE without optimizations
Remove the fail label operand of the new_map instruction
Correct transformation of put_map_assoc to new_map
Remove support for put_map_exact without a source map
|
|
4e0a5e36b38e3f15ed8f7d700d26f2424a47111c
|
|
* sverk/crypto/rm-EVP_CIPHER_CTX_new:
crypto: Fix undefined symbol EVP_CIPHER_CTX_new
|
|
* ia/ssh/channel-gracefull-shutdown/OTP-12648:
ssh: Shutdown sftp channel gracefully
|
|
|
|
According to EEP-43 for maps, a 'badmap' exception should be
generated when an attempt is made to update non-map term such as:
<<>>#{a=>42}
That was not implemented in the OTP 17.
José Valim suggested that we should take the opportunity to
improve the errors coming from map operations:
http://erlang.org/pipermail/erlang-questions/2015-February/083588.html
This commit implement better errors from map operations similar
to his suggestion.
When a map update operation (Map#{...}) or a BIF that expects a map
is given a non-map term, the exception will be:
{badmap,Term}
This kind of exception is similar to the {badfun,Term} exception
from operations that expect a fun.
When a map operation requires a key that is not present in a map,
the following exception will be raised:
{badkey,Key}
José Valim suggested that the exception should be
{badkey,Key,Map}. We decided not to do that because the map
could potentially be huge and cause problems if the error
propagated through links to other processes.
For BIFs, it could be argued that the exceptions could be simply
'badmap' and 'badkey', because the bad map and bad key can be found in
the argument list for the BIF in the stack backtrace. However, for the
map update operation (Map#{...}), the bad map or bad key will not be
included in the stack backtrace, so that information must be included
in the exception reason itself. For consistency, the BIFs should raise
the same exceptions as update operation.
If more than one key is missing, it is undefined which of
keys that will be reported in the {badkey,Key} exception.
|
|
The module mod_include no longer exists.
|
|
* egil/fix-maps-module-exceptions/OTP-12657:
stdlib: Correct maps module exceptions upon errors
|
|
* peppe/common_test/report_error_if_missing_suite:
Fix problem with suite compilation failures not being correctly reported
OTP-10816
|
|
If ssh_connection:subsystem/4 fails we do not want to crash but rather
terminate gracefully.
|
|
* ia/inets/remove-ssi/OTP-12156:
inets: Remove SSI (Server Side Includes)
|
|
fold() and map() handle elements in a well-defined order.
Thanks to Rabbe Fogelholm for pointing out the bug.
|
|
* origin/peppe/common_test/longname_problem:
Fix error in ct_logs, not handling long names correctly
OTP-12643
|
|
Also do some minor logging improvements
|
|
It is no longer necessary to sort the keys, since the loader
does the sorting.
|
|
The BEAM loader will now sort keys for maps during loading, so
beam_validator should not require the keys to be ordered any order.
However, we must still ensure that literals keys are unique (which
was implicitly guaranteed by the strict ordering requirement).
|
|
To be sure that the compiler and BEAM virtual machine correctly
handles literals maps, we must test it.
|
|
|
|
Bad input to maps module function will now yield exceptions:
* {badmap,NotMap} or,
* badarg
|
|
|
|
Conflicts:
OTP_VERSION
|
|
|
|
* bjorn/stdlib/cuddle-with-tests:
Eliminate deprecated now/0 used as timestamp
Eliminate use of now/0 for creating a unique filename
Eliminate use of deprecated now/0 for measuring time
Eliminate use of deprecated now/0 for random number generation
Speed up timer_simple_SUITE:timer_perf/1
Speed up timer_SUITE
Optimize gen_server_SUITE:hibernate/1
Optimize gen_event_SUITE:hibernate/1
Optimize gen_fsm_SUITE:hibernate/1
Optimize unicode_SUITE:ex_binaries_errors* test cases
Optimize unicode_SUITE:binaries_errors/1
binary_module_SUITE: Remove unnecessary calls to the binref module
Optimize binary_module:random_ref_comp/1
Optimize io_proto_SUITE:unicode_options_gen/1
|