aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2018-11-15Merge branch 'sverker/crypto/gcc-8-warning' into maintSverker Eriksson
* sverker/crypto/gcc-8-warning: crypto: Fix gcc 8 warning
2018-11-15Merge branch 'sverker/erts/atomics-counters/OTP-13468' into maintSverker Eriksson
* sverker/erts/atomics-counters/OTP-13468: erts: Add new module 'counters' erts: Add new module 'atomics'
2018-11-15erts: Add new module 'counters'Sverker Eriksson
2018-11-15erts: Add new module 'atomics'Sverker Eriksson
2018-11-15Merge branch 'maint-20' into maintHans Nilsson
* maint-20: Updated OTP version Prepare release
2018-11-14Merge branch 'ingela/ssl/maint-bench-cuddle' into maintIngela Anderton Andin
* ingela/ssl/maint-bench-cuddle: ssl: Handle unicode ~s -> ~ts
2018-11-14Prepare releaseErlang/OTP
2018-11-14Merge branch 'hans/ssh/fix_ext_info/OTP-15413' into maint-20Erlang/OTP
* hans/ssh/fix_ext_info/OTP-15413: ssh: Fix ssh_options checking for ext_info ssh: Fix SSH_MSG_EXT_INFO bug for OTP SSH as server ssh: Fix SSH_MSG_EXT_INFO bug for OTP SSH as client
2018-11-14Merge branch 'maint-18' into maintLukas Larsson
* maint-18: Updated OTP version Prepare release Optimize operator '--' and yield on large inputs Conflicts: OTP_VERSION erts/doc/src/notes.xml erts/emulator/beam/erl_alloc.types erts/emulator/beam/erl_bif_lists.c erts/vsn.mk lib/stdlib/doc/src/notes.xml lib/stdlib/vsn.mk make/otp_version_tickets otp_versions.table
2018-11-12ssl: Handle unicode ~s -> ~tsIngela Anderton Andin
2018-11-12Merge branch 'maint-20' into maintIngela Anderton Andin
* maint-20: Updated OTP version Prepare release
2018-11-12Merge branch 'ingela/ssl/rsa-kex-engine/ERIERL-268/OTP-15420' into maintIngela Anderton Andin
* ingela/ssl/rsa-kex-engine/ERIERL-268/OTP-15420: ssl: Add engine handling clause to RSA key exchange
2018-11-09Prepare releaseErlang/OTP
2018-11-09ssl: Add engine handling clause to RSA key exchangeIngela Anderton Andin
2018-11-09ssl: Add engine handling clause to RSA key exchangeIngela Anderton Andin
2018-11-09Merge branch 'hans/ssh/fix_ext_info_doc' into maintHans Nilsson
* hans/ssh/fix_ext_info_doc: ssh: Fix documentation for public key in ext_info
2018-11-09ssh: Clear remote user_dir in ssh_compat_SUITEHans Nilsson
2018-11-09ssh: Check compatibility with new OpenSSH versionsHans Nilsson
2018-11-09ssh: Fix documentation for public key in ext_infoHans Nilsson
2018-11-09Merge branch 'hans/ssh/fix_ext_info/OTP-15413' into maintHans Nilsson
* hans/ssh/fix_ext_info/OTP-15413: ssh: Fix ssh_options checking for ext_info ssh: Fix SSH_MSG_EXT_INFO bug for OTP SSH as server ssh: Fix SSH_MSG_EXT_INFO bug for OTP SSH as client
2018-11-09Prepare releaseErlang/OTP
2018-11-09Merge branch 'john/erts/OTP-18.3.4/minusminus_trapping/OTP-15371' into maint-18Erlang/OTP
* john/erts/OTP-18.3.4/minusminus_trapping/OTP-15371: Optimize operator '--' and yield on large inputs
2018-11-09Merge branch 'maint-20' into maintLukas Larsson
* maint-20: Updated OTP version Prepare release Optimize operator '--' and yield on large inputs Conflicts: OTP_VERSION erts/doc/src/notes.xml erts/emulator/beam/erl_alloc.types erts/emulator/beam/erl_bif_lists.c erts/vsn.mk lib/ssl/doc/src/notes.xml lib/ssl/vsn.mk lib/stdlib/doc/src/notes.xml lib/stdlib/vsn.mk make/otp_version_tickets otp_versions.table
2018-11-08Merge branch 'ingela/ssl/erl-dist/ERL-770/OTP-15418' into maintIngela Anderton Andin
* ingela/ssl/erl-dist/ERL-770/OTP-15418: ssl: Correct gen_statem return value
2018-11-08ssh: Fix doc error in daemon 'exec' optionHans Nilsson
2018-11-08Merge branch 'ingela/public-key/more-sha2' into maintIngela Anderton Andin
* ingela/public-key/more-sha2: public_key: Add additional ASN-1 definitions for DSA SHA2 support
2018-11-08ssh: Fix ssh_options checking for ext_infoHans Nilsson
A bug for SSH_MSG_EXT_INFO was fixed both for client and server. Before that fix, wrong option was read for the information sent to the peer. This commit adapts the option checking so that the correct option now used is available not only for servers but also for clients.
2018-11-07ssh: Fix SSH_MSG_EXT_INFO bug for OTP SSH as serverHans Nilsson
The wrong set of supported public keys was sent to the client.
2018-11-07ssh: Fix SSH_MSG_EXT_INFO bug for OTP SSH as clientHans Nilsson
The message could not be received in connected state
2018-11-07ssl: Correct gen_statem return valueIngela Anderton Andin
Could cause renegotiation to fail
2018-11-06public_key: Add additional ASN-1 definitions for DSA SHA2 supportIngela Anderton Andin
2018-11-06Merge branch 'bjorn/erts/persistent_terms/OTP-14669' into maintBjörn Gustavsson
* bjorn/erts/persistent_terms/OTP-14669: Implement a tab for persistent terms in crashdump viewer Add tests of persistent terms for crashdump_viewer Add a persistent term storage Refactor releasing of literals Extend the sharing-preserving routines to optionally copy literals
2018-11-06Implement a tab for persistent terms in crashdump viewerBjörn Gustavsson
Co-authored-by: Siri Hansen <[email protected]>
2018-11-06Add tests of persistent terms for crashdump_viewerBjörn Gustavsson
2018-11-06Add a persistent term storageBjörn Gustavsson
Persistent terms are useful for storing Erlang terms that are never or infrequently updated. They have the following advantages: * Constant time access. A persistent term is not copied when it is looked up. The constant factor is lower than for ETS, and no locks are taken when looking up a term. * Persistent terms are not copied in garbage collections. * There is only ever one copy of a persistent term (until it is deleted). That makes them useful for storing configuration data that needs to be easily accessible by all processes. Persistent terms have the following drawbacks: * Updates are expensive. The hash table holding the keys for the persistent terms are updated whenever a persistent term is added, updated or deleted. * Updating or deleting a persistent term triggers a "global GC", which will schedule a heap scan of all processes to search the heap of all processes for the deleted term. If a process still holds a reference to the deleted term, the process will be garbage collected and the term copied to the heap of the process. This global GC can make the system less responsive for some time. Three BIFs (implemented in C in the emulator) is the entire interface to the persistent term functionality: * put(Key, Value) to store a persistent term. * get(Key) to look up a persistent term. * erase(Key) to delete a persistent term. There are also two additional BIFs to obtain information about persistent terms: * info() to return a map with information about persistent terms. * get() to return a list of a {Key,Value} tuples for all persistent terms. (The values are not copied.)
2018-11-05crypto: Fix gcc 8 warningSverker Eriksson
"division 'sizeof (...)' does not compute the number of array elements [-Wsizeof-pointer-div]"
2018-11-05ssl: controlling_process should be allowed on transpor_accept sockets alongIngela Anderton Andin
with handshake Fix of commit 68d9244ae33e5eea36250c3bb9ffe046a4db5647
2018-11-05Prepare releaseErlang/OTP
2018-11-05Merge branch 'ingela/ssl/deliver-all-data-at-close/ERL-731/OTP-15412' into ↵Erlang/OTP
maint-20 * ingela/ssl/deliver-all-data-at-close/ERL-731/OTP-15412: ssl: Extend check for undelivered data at closing
2018-11-05Merge branch 'john/erts/OTP-20.3.8/minusminus_trapping/OTP-15371' into maint-20Erlang/OTP
* john/erts/OTP-20.3.8/minusminus_trapping/OTP-15371: Optimize operator '--' and yield on large inputs
2018-11-05Optimize operator '--' and yield on large inputsJohn Högberg
The removal set now uses a red-black tree instead of an array on large inputs, decreasing runtime complexity from `n*n` to `n*log(n)`. It will also exit early when there are no more items left in the removal set, drastically improving performance and memory use when the items to be removed are present near the head of the list. This got a lot more complicated than before as the overhead of always using a red-black tree was unacceptable when either of the inputs were small, but this compromise has okay-to-decent performance regardless of input size. Co-authored-by: Dmytro Lytovchenko <[email protected]>
2018-11-02ssl: Correct filter functionIngela Anderton Andin
2018-11-02Optimize operator '--' and yield on large inputsJohn Högberg
The removal set now uses a red-black tree instead of an array on large inputs, decreasing runtime complexity from `n*n` to `n*log(n)`. It will also exit early when there are no more items left in the removal set, drastically improving performance and memory use when the items to be removed are present near the head of the list. This got a lot more complicated than before as the overhead of always using a red-black tree was unacceptable when either of the inputs were small, but this compromise has okay-to-decent performance regardless of input size. Co-authored-by: Dmytro Lytovchenko <[email protected]>
2018-11-02Merge branch 'ingela/ssl/deliver-all-data-at-close/ERL-731/OTP-15412' into maintIngela Anderton Andin
* ingela/ssl/deliver-all-data-at-close/ERL-731/OTP-15412: ssl: Extend check for undelivered data at closing
2018-11-02ssl: Extend check for undelivered data at closingIngela Anderton Andin
This is a timing related bug that alas is hard to test
2018-11-02Merge branch 'ingela/ssl/bench_SUITE-clean-start' into maintIngela Anderton Andin
* ingela/ssl/bench_SUITE-clean-start: ssl: Make sure benchmark SUITE has a clean start
2018-11-02ssl: Make sure benchmark SUITE has a clean startIngela Anderton Andin
2018-11-02Merge branch 'bjorn/compiler/fix-beam_jump/ERL-759/OTP-15400' into maintBjörn Gustavsson
* bjorn/compiler/fix-beam_jump/ERL-759/OTP-15400: Fix bug when beam_jump removes put_tuple instructions
2018-11-02Merge branch 'john/erts/minusminus_trapping/OTP-15371' into maintJohn Högberg
* john/erts/minusminus_trapping/OTP-15371: Optimize operator '--' and yield on large inputs Inline erts_cmp Clarify a magical allocation size Fix trapping in lists:reverse/2
2018-11-01ssl: Return error to user that tries to use a "transport accepted" socket forIngela Anderton Andin
other purposes than handshaking