Age | Commit message (Collapse) | Author |
|
OTP-13841
|
|
Normally, calling code:delete/1 before re-loading the code for a
module is unnecessary but causes no problem.
But there will be be problems if the new code has an on_load function.
Code with an on_load function will always be loaded as old code
to allowed it to be easily purged if the on_load function would fail.
If the on_load function succeeds, the old and current code will be
swapped.
So in the scenario where code:delete/1 has been called explicitly,
there is old code but no current code. Loading code with an
on_load function will cause the reference to the old code to be
overwritten. That will at best cause a memory leak, and at worst
an emulator crash (especially if NIFs are involved).
To avoid that situation, we will put the code with the on_load
function in a special, third slot in Module.
ERL-240
|
|
When asserts were moved out to a separate header file, the automatic
enabling of asserts when testing is enabled stopped working.
|
|
* bjorn/compiler/beam_validator/OTP-13863:
beam_validator: Handle unreachable instructions
|
|
* ingela/ssl/packet-tests:
ssl: Add timetrap scale calls
ssl: Add nodelay to packet=0|raw tests
|
|
|
|
|
|
|
|
ab03678e introduced an optimization in the beam_z pass that could
introduce unreachable code in BEAM files (a 'jump' instruction is
removed after a 'raise' instruction, but the code following the
target of the 'jump' is not removed).
Since this situation happens very rarely, there is no point in adding
another pass that can remove unreachable code after beam_z. Instead we
will make sure that beam_validator can skip the unreachable code.
Skipping unreachable code is already done in valfun_1/2 (for
historical reasons), but we will also need to do it in val_dsetel/2.
|
|
|
|
* hasse/parsetools/suppress_dialyzer_warnings/OTP-13681:
parsetools: Suppress Dialyzer-warnings
|
|
* anders/diameter/19.1/OTP-13838:
vsn -> 1.12.1
Update appup for 19.1
Fix xmllint errors in documentation
Remove documentation overkill
Don't run traffic tests in parallel when {string_decode, true}
Remove copyright from generated dictionary modules
Fix dictionary function typo
Fix dictionary typo in relay example
|
|
* anders/diameter/failover/OTP-13412:
Make peer failover more efficient
|
|
* anders/diameter/min_heap_size/OTP-13796:
Let unfortunate min_heap_size setting be disabled
|
|
* anders/diameter/19/listen/OTP-13787:
Close listening sockets at service death
|
|
* ferd/bypass-pem-cache/PR-1143/OTP-13883:
ssl: Add documentation of bypass_pem_cache application environment configuration
ssl: Add new benchmarks to skip file for normal testing
Adding PEM cache bypass benchmark entries
Fixing CRL searching in cache bypass
Add option to bypass SSL PEM cache
|
|
* ingela/snmp/ipv6-tests:
snmp: Use ipv6 common test configuration check
|
|
The test for ipv6 could return false positives which resulted in failing
test cases due lack of full ipv6 support.It could be nice with a working
run-time check but this will do for now.
|
|
* ingela/ssl/clean-env:
ssl: Make sure tests get a clean start
|
|
|
|
|
|
* lars/xmerl-anchor-problems/OTP-13880:
[xmerl] Fix link problems in documentation
|
|
When using Yecc's operator precedence declarations (Right, Nonassoc,
Left), it is possible that some clauses of the generated code are
unreachable. Dialyzer complains, at least if SET_LIMIT in erl_types is
set sufficiently high (to avoid sets of integers to collapse to the
integer() type). Rather than trying to figure out exactly which
clauses are unreachable, Yecc generates a Dialyzer suppression.
|
|
into maint
* margnus1/dialyzer/fix_maps_opaque/ERL-249/PR-1161/OTP-13878:
erl_bif_types: Properly unopaque maps:merge/2 args
|
|
|
|
|
|
OTP-13412 more efficient peer failover
OTP-13787 close listening sockets
OTP-13796 min_heap_size
OTP-13838 typo in diameter_traffic
No load order requirements.
|
|
The setting in all diameter server processes has existed since the
beginning of time. Whether it's actually useful is questionable, but it
does lead to increased memory usage, especially if there are many peer
connections whose processes wouldn't otherwise be large. Let the setting
be disabled with -diameter min_heap_size false. (Or any value that isn't
a non-negative integer.)
The diameter application itself only calls
diameter_lib:spawn_opts(server, []), but let other arguments remain for
backwards compatibility, since diameter_lib:spawn_opts/2 has been abused
from outside of diameter.
|
|
The files are not used in runtime of the snmp app, but they are still
part of the application and beam files are generated. Not including them
will make the general app test fail.
|
|
|
|
* ingela/diameter/cuddle-tests:
diameter: Do not test SCTP on sparc-sun-solaris2.10
|
|
The SCPT stack has a different behavior in solaris2.10 then in later versions
and linux. Diameter implementation does not support this behavior.
|
|
|
|
maint
* michaesc/crypto/honour-OPENSSL_NO_DES/ERL-203/OTP-13783:
Add '_cfb' alias for misspelled '_cbf' cipher
Fix badarg -> notsup and test cases
Honour OPENSSL_NO_DES
Conflicts:
lib/crypto/c_src/crypto.c
|
|
erl_bif_types:type/5 was calling erl_types:map_pairwise_merge/3 directly
with its (potentially opaque) arguments, causing Dialyzer crashes.
Bug (ERL-249) reported and minimised test case provided by Felipe
Ripoll.
|
|
|
|
* egil/hipe/fix-match-order-opaque-types/OTP-13876:
hipe: Fix erl_types opaque match order
|
|
* bjorn/compiler/lc-internal-failure/OTP-13863:
sys_core_fold: Don't move a fun into a guard
|
|
|
|
The path is only used when writing a comment so the correction
just allowed UTF-8 characters in that io_lib:format call.
IC don't support UTF-8 in the specs or their names
(generated modules contains coding: latin-1) but the path is
only used in a comment so it's not a problem if it can't be
written correctly as long as nothing fails.
|
|
OTP-13633
|
|
|
|
init_per_testcase timeout for renegotiation tests would be overridden
by local timeout in test case help function.
|
|
|
|
* ingela/ssl/dtls-progress/connection-states-as-maps:
dtls: fix encoding of client hello cookie
dtls: Prepare start of DTLS connection manager with SSL app
ssl: Refactor to use maps for the connection states
ssl, dtls: Refactor sni handling
dtls: Add close/5
dtls: Add renegotiate/2
dtls: Add protocol event handling
ssl: Refactor code so that tls and dtls can share more code
ssl, dtls: Disable V2 compatibility clause from ssl_handshake:update_handshake_history
ssl: Make sure common code for TLS and DTLS uses the TLS Version
ssl: remove unused RecordCB argument from master_secret
dtls: Add reinit_handshake_data/1 to dtls
dtls: replace tls_record with RecordCB in connection_info
Fix version numbers and dependencies
|
|
|
|
Conflicts:
lib/ssh/src/ssh_auth.erl
|
|
|
|
|
|
* ingela/ssl/ssl_to_openssl_SUITE:
ssl: Make sure to have correct default
|