Age | Commit message (Collapse) | Author |
|
* bjorn/asn1/dialyzer-warnings/OTP-11372: (23 commits)
BER: Eliminate dialyzer warnings for specialized decode functions
BER: Eliminate dialyzer warning for encoding of BIT STRINGs
BER: Optimize encoding of ENUMERATED
BER: Remove a redundant clause in encoding of open types
(U)PER: Fix decoding of named INTEGER
(U)PER: Fix encoding of a semi-constrained, named INTEGER
(U)PER: Optimize handling of named BIT STRING with a lower zero bound
PER: Optimize encoding of character strings with simple ranges
PER: Remove unnecessary clause for handling DEFAULT
(U)PER: Suppress dialyzer warnings for complete/1
Test suites: Add support for running Dialyzer on generated code
Improve tests of DEFAULT values
Correct OCTET STRING default when legacy_erlang_types is active
Remove old DEFAULT-checking code made obsolete in the previous commit
Rewrite the code for testing DEFAULT for DER
Test DEFAULT more thoroughly
Set.py: Correct illegal DEFAULT value
BER: Optimize decoding of ENUMERATED
BER: Suppress dialyzer warnings for encode_bit_string/4
BER: Inline testing of constraints when decoding
...
|
|
SSH_MSG_IGNORE
SSH_MSG_UNIMPLEMENTED
|
|
|
|
|
|
* gorillainduction/improve_mnesia_locker_complexity:
Optimize tid lock table
OTP-11981
|
|
* ia/ssl/test-cuddle:
ssl: Test case stability
|
|
* ia/ssl/dialyzer-specs:
ssl: Fix dialyzer specs to reflect reality
|
|
|
|
|
|
|
|
|
|
* bjorn/kernel/stick-preloaded/OTP-11913:
Allow unsticking pre-loaded modules
|
|
Commit ed06dd12ea74018b902a2c4c7924313d23cedb75 made pre-loaded
modules (such as erlang) sticky, and also made it impossible to
unstick them to prevent them from ever be reloaded.
It turns out that there are tools that may want to instrument
the erlang module (such as concuerror), so making it
impossible to unstick modules is harsh. Therefore, revert the
part of the commit that prevented unsticking the pre-loaded
modules.
|
|
* ia/ssh/inet-option/OTP-11976:
ssh: Handle inet and inet6 option correctly
|
|
* ia/ssl/CSS/OTP-11975:
ssl: Make sure change cipher spec is correctly handled
|
|
|
|
* siri/ct-and-cover/OTP-11971:
Improve cover analysis via common_test
Change internal format of CoverInfo in test_server
[ct] Add test of cover support when merge_tests=false
|
|
|
|
* ia/ssl/version-argument:
ssl: Version argument to ssl_cipher:anonymous_suites should not be added yet!
|
|
|
|
* erlang/pr/383:
Fix small copy&paste mistakes in doc of alternative process registry
|
|
* nox/fix-perms:
Fix permissions of some files in the repository
|
|
* qrilka/ssl-seconds-in-24h:
ssl: Fix incorrect number of seconds in 24 hours
|
|
* telsacolton/snmp_test_manager_badmatch_pid:
Fix badmatch error when trying to start_link an snmp_test_manager
Edit line 59 to remove "mgr" key from #State record. Edit line 133 to expect ok instead of {ok, Pid} from snmpm:start_link . Edit line 136 not to reference Pid variable which was removed above.
|
|
* pguyot/fix_srp:
Fix bug in SRP implementation
|
|
* rickard/invalid_bitstr_bifs/OTP-11942:
Remove invalid 'bitstr' exports in erlang.erl
|
|
* rickard/binary_to_term_error/OTP-11931:
Replace erlang:binary_to_term() Erlang wrappers
Conflicts:
erts/preloaded/ebin/erts_internal.beam
|
|
The dummy BIF exports 'erlang:bitstr_to_list/1' and 'erlang:list_to_bitstr/1'
seem to have appeared as a result of a copy-paste error and are now removed.
|
|
Replace the 'erlang:binary_to_term/1' and 'erlang:binary_to_term/2'
Erlang wrappers taking care of failure after yield with management
of this in the hidden yield BIF.
|
|
This addresses several bugs in common_test (ct) when using the cover
analysis mechanism:
In a ct test run, one can give a cover spec file which indicates that
cover analysis shall be run, including a number of modules and a
number of nodes. During the ct test run, multiple jobs may be started
in test_server, and when the cover option is used, test_server would
cover compile and analyse all given modules for each job. This commit
instead allows the compilation and analysis to be explicitly ordered
by ct for each test run. This way each module will only be cover
compiled and analysed once. The cover log will be located in the
common_test log directory (ct_run.<timestamp>), and the "Coverage log"
link in each suite.log.html will point to this file. A new button is
also added in the top level ct index file, which points to the cover
log.
This change also reduces the need of using the 'export' and 'import'
options, since there is no longer any need to accumulate cover data
over multiple test_server jobs. However, these options may still be
used for importing and exporting cover data in order to store or
accumulate data from multiple ct test runs.
The 'nodes' option was earlier only used by ct to start cover on the
given nodes before starting the first test_server job. After this job
was completed, test_server would stop cover completely and then start
it again for the next job without any knowledge of the 'nodes'
options. For the next test_server jobs cover would therefore no longer
be running on these nodes. Explcit calls to ct_cover:add_nodes had to
be done in order to collect data through all test_server jobs. This
bug has now been solved, since cover is no longer stopped between each
test_server job.
Finally, ct no longer stores cover data using
ct_util:set_testdata. This was earlier used by ct_cover:add_nodes to
make sure no node was added twice.This did, however, cause some
problems when ct and cover were out of sync. ct could belive that a
node was running cover and thus reject adding this node, while in
reality cover had been stopped on the node (e.g. by test_server) so no
cover data was collected. ct_cover:add_nodes will now instead use
cover:which_nodes to check if a node is already running.
|
|
|
|
|
|
This will also eliminate a dialyzer warning.
|
|
The clause is just an optimization for a (extremly rare) special case.
Removing it will eliminate a dialyzer warning.
|
|
|
|
The code generator would crash.
|
|
If a named BIT STRING has a lower size bound of 0, treat it the same
way as if there was no constraint for the purposes of trailing zero
bits.
That change will eliminate a dialyzer warning.
|
|
The encoder for the following type would generate a dialyzer warning:
Ns ::= NumericString (FROM ("0"|"1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9"))
Optimize this case to make it slightly faster as well as eliminate
the dialyzer warning.
|
|
|
|
|
|
Running dialyzer on test suites is good for finding both bugs and
useless dialyzer warnings. Add a mechanism in asn1_test_lib for
turning on running of dialyzer on all generated code.
Turned off by default, because it is slow and because there are
still a few dialyzer warnings left.
|
|
|
|
The default value for an OCTET STRING when legacy_erlang_types was
active would be a binary instead of a list.
|
|
|
|
The old code for testing DEFAULT values is messy, inefficient, and
causes dialyzer warnings.
|
|
* bjorn/kernel/stick-preloaded/OTP-11913:
Make pre-loaded modules permanently sticky
application_SUITE: Clean up the code after the test is done
Teach code:del_path/1 to ignore superfluous slashes
|
|
|
|
* ia/ssl/dumb-clients/OTP-11969:
ssl: Avoid creating a huge session table
|
|
Modules in the kernel, stdlib, and compiler applications are by
default "sticky", meaning that the code server will refuse to
re-load them.
The pre-loaded modules (those that are part of the run-time system
itself, such as 'erlang') are, however, not sticky. They used to be
sticky a long time ago when the pre-loaded modules were part of
the kernel application. Now they are part of the erts application.
Since re-loading a pre-loaded module can be catastrophic (especially
re-loading the 'erlang' module), the pre-loaded modules must be
sticky. Furthermore, it should not be allowed to unstick them.
The sticky_dir/1 test case in code_SUITE is never actually run and
is broken. Rewrite it.
|
|
* sverk/crypto-leaking-hmac/OTP-11953:
crypto: Fix memory leak in some error cases
crypto: Fix memory leak in hmac stream functions
|