aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2016-08-08inets: Add mod_esi support for PUT AND DELETEIngela Anderton Andin
2016-08-08Merge branch 'maint'Raimo Niskanen
2016-08-08Merge branch 'duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789' ↵Raimo Niskanen
into maint * duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789: Fix segfault in crypto by increasing algo_cipher array
2016-08-05Merge branch 'maint'Björn Gustavsson
* maint: Update primary bootstrap beam_block: Fix potentially unsafe optimization in move_allocates/1
2016-08-05Merge branch 'bjorn/compiler/not_live/ERL-202/OTP-13780' into maintBjörn Gustavsson
* bjorn/compiler/not_live/ERL-202/OTP-13780: beam_block: Fix potentially unsafe optimization in move_allocates/1
2016-08-05beam_block: Fix potentially unsafe optimization in move_allocates/1Björn Gustavsson
beam_block has an optimization that only is safe when it is applied immediately after code generation. That is pointed out in a comment: NOTE: Moving allocation instructions is only safe because it is done immediately after code generation so that we KNOW that if {x,X} is initialized, all x registers with lower numbers are also initialized. That assumption may not be true after other optimizations, such as the beam_utils:live_opt/1 optimization. The new beam_reorder pass added in OTP 19 runs before beam_block. Therefore, the optimization is potentially unsafe. The optimization is also unsafe if compilation is started from assembly code in a .S file. Rewrite the optimization to make it safe. See the newly added comment for details. ERL-202
2016-08-05Merge branch 'maint'Björn Gustavsson
* maint: Improve format_warning/1 spec
2016-08-05Merge branch 'elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786' into maintBjörn Gustavsson
* elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786: Improve format_warning/1 spec
2016-08-04Update release notesErlang/OTP
2016-08-04ssh: update test suite for supervisorsHans Nilsson
2016-08-04ssh: sshc_sup to use worker for ssh_con_handlerLukas Larsson
2016-08-04ssh: update version numberHans Nilsson
2016-08-04Merge branch 'maint'Raimo Niskanen
2016-08-04Merge branch 'ellbee/odbc/configure-OS-X-El-Capitan/PR-1137/OTP-13781' into ↵Raimo Niskanen
maint * ellbee/odbc/configure-OS-X-El-Capitan/PR-1137/OTP-13781: Make ODBC configure handle OS X El Capitan
2016-08-04Move expansion of strings in binaries to v3_coreJosé Valim
This speeds up the compilation of binary literals with string values in them. For example, compiling a file with a ~340kB binary would yield the following times by the compiler: Compiling "foo" parse_module : 0.130 s 5327.6 kB transform_module : 0.000 s 5327.6 kB lint_module : 0.011 s 5327.8 kB expand_module : 0.508 s 71881.2 kB v3_core : 0.463 s 11.5 kB Notice the increase in memory and processing time in expand_module and v3_core. This happened because expand_module would expand the string in binaries into chars. For example, the binary <<"foo">>, which is represented as {bin, 1, [ {bin_element, 1, {string, 1, "foo"}, default, default} ]} would be converted to {bin, 1, [ {bin_element, 1, {char, 1, $f}, default, default}, {bin_element, 1, {char, 1, $o}, default, default}, {bin_element, 1, {char, 1, $o}, default, default} ]} However, v3_core would then traverse all of those characters and convert it into an actual binary, as it is a literal value. This patch addresses this issue by moving the expansion of string into chars to v3_core and only if a literal value cannot not be built. This reduces the compilation time of the file mentioned above to the values below: Compiling "bar" parse_module : 0.134 s 5327.6 kB transform_module : 0.000 s 5327.6 kB lint_module : 0.005 s 5327.8 kB expand_module : 0.000 s 5328.7 kB v3_core : 0.013 s 11.2 kB
2016-08-03Fix segfault in crypto by increasing algo_cipher arrayDuncaen
2016-08-02Rewrite SSH for gen_statem M:callback_mode/0Raimo Niskanen
2016-08-02Rewrite SSL for gen_statem M:callback_mode/0Raimo Niskanen
2016-08-02Rewrite Tools for gen_statem M:callback_mode/0Raimo Niskanen
2016-08-02Rewrite gen_statem docs for M:callback_mode/0Raimo Niskanen
2016-08-02Merge branch 'maint'Raimo Niskanen
2016-08-02Merge branch 'efine/inets/validate-inet6fb4/ERL-200/PR-1132/OTP-13776' into ↵Raimo Niskanen
maint * efine/inets/validate-inet6fb4/ERL-200/PR-1132/OTP-13776: Test inet6fb4 in basic suite Actually verify result of testcase Fix inets_sup_SUITE for local tests Add test for inet6fb4 validation Fix httpd_conf:validate_properties/1 for ipfamily
2016-08-01Merge branch 'maint'Björn-Egil Dahlberg
2016-08-01Merge branch 'comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778' into maintBjörn-Egil Dahlberg
* comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778: fix gc_start\end bug
2016-08-01Merge branch 'maint'Raimo Niskanen
2016-08-01Merge branch 'raimo/SCTP-socket-stats/ERL-102/OTP-13773' into maintRaimo Niskanen
* raimo/SCTP-socket-stats/ERL-102/OTP-13773: Fix SCTP send stats in inet_drv Test inet:getstat/1 dead for SCTP send Fix test suite compilation warnings
2016-08-01Test inet6fb4 in basic suiteRaimo Niskanen
2016-07-30Fix building crypto/cmac_nif on 64-bit machines.Petr Gotthard
2016-07-30crypto:cmac calculating the Cipher-based Message Authentication CodePetr Gotthard
The ERL-82 issue requests a way to calculate a CMAC in Erlang. The AES128 CMAC is standartized in RFC 4493 and used e.g. for message authentication in the LoRaWAN networks. The CMAC is implemented by OpenSSL since v1.0.1, but as @IngelaAndin stated in response to the ERL-82, the current crypto implementation does not include functions that call those OpenSSL cryptolib functions. This commit introduces a new function `crypto:cmac` that calls the corresponding OpenSSL functions and calculates the CMAC. Only the cmac_nif is implemented. The incremental functions (init, update, final) are not provided because the current OpenSSL does not allow custom memory allocators like `enif_alloc_resource`. The Erlang user guide states that at least OpenSSL 0.9.8 is required, so I added few #ifdefs so the code is compatible with all versions. However, the OpenSSL pages say that the pre-1.0.1 versions (0.9.8 and 1.0.0) are no longer maintained. Even the 1.0.1 will be retired by Dec 2016. Hence I believe that adding a 1.0.1-only function like CMAC should be OK.
2016-07-29Make ODBC configure handle OS X El CapitanLee Bannard
Change ODBC configure.in script to recognize OS X El Capitan (Darwin v15.x)
2016-07-29Actually verify result of testcaseRaimo Niskanen
2016-07-29Fix inets_sup_SUITE for local testsRaimo Niskanen
2016-07-29fix gc_start\end bugTihon
2016-07-28Add test for inet6fb4 validationEdwin Fine
2016-07-28Test inet:getstat/1 dead for SCTP sendRaimo Niskanen
2016-07-28Fix test suite compilation warningsRaimo Niskanen
2016-07-27Rewrite gen_statem TCs for M:callback_mode/0Raimo Niskanen
2016-07-27Rewrite gen_statem for M:callback_mode/0Raimo Niskanen
2016-07-26Improve format_warning/1 specBrujo Benavides
Let it handle `dial_warning()` input as well, to match what `format_warning/2` expects.
2016-07-26Merge branch 'maint'Björn-Egil Dahlberg
2016-07-26Merge branch 'okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771' into maintBjörn-Egil Dahlberg
* okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771: Remove a duplicated pattern matching in erl_epmd.erl
2016-07-26Merge branch 'maint'Björn-Egil Dahlberg
2016-07-26Merge branch 'lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770' into ↵Björn-Egil Dahlberg
maint * lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770: Respect -proto_dist switch while connection to EPMD
2016-07-25Merge branch 'maint'Raimo Niskanen
2016-07-25Merge branch 'maint-18' into maintRaimo Niskanen
Conflicts: OTP_VERSION erts/doc/src/notes.xml erts/vsn.mk lib/common_test/doc/src/notes.xml lib/common_test/vsn.mk lib/ssl/doc/src/notes.xml lib/ssl/src/ssl.appup.src lib/ssl/vsn.mk lib/stdlib/test/ets_SUITE.erl otp_versions.table
2016-07-24Fix httpd_conf:validate_properties/1 for ipfamilyEdwin Fine
inets:start/2 fails when using the legacy option inet6fb4 with a configuration proplist. It is not translated to inet as documented. This breaks existing code that relies on the documented behavior. This commit fixes the issue by translating inet6fb4 everywhere it is encountered in httpd_conf:validate_properties/1. From inets documentation (http://erlang.org/doc/man/httpd.html): {ipfamily, inet | inet6} Default is inet, legacy option inet6fb4 no longer makes sense and will be translated to inet. Fixes ERL-200.
2016-07-23Prepare releaseErlang/OTP
2016-07-23Merge branch 'raimo/ssl/version-selection/maint-18/OTP-13753' into maint-18Erlang/OTP
* raimo/ssl/version-selection/maint-18/OTP-13753: Improve version selection
2016-07-23Merge branch 'peppe/ct_telnet_duplicated_lines/OTP-13730' into maint-18Erlang/OTP
* peppe/ct_telnet_duplicated_lines/OTP-13730: Fix error with duplicated printouts by ct_telnet:expect/3
2016-07-23Fix error with duplicated printouts by ct_telnet:expect/3Peter Andersson
OTP-13730