aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-05-30ssh: ssh:connect, ssh:shell and ssh_sftp:start_subsystem supports client ↵Hans Nilsson
tcp-socket as input
2016-05-30Merge branch 'dgud/wx/quote-atoms-in-specs'Dan Gudmundsson
* dgud/wx/quote-atoms-in-specs: wx: Quote atoms in types and specs
2016-05-30Merge branch 'dgud/stdlib/relax-proc_lib-initial-call/OTP-13623'Dan Gudmundsson
* dgud/stdlib/relax-proc_lib-initial-call/OTP-13623: Relax translation of initial calls
2016-05-30edoc_run: Add types and specsKostis Sagonas
2016-05-30Eliminate unsafe use of Y registersBjörn Gustavsson
If the Core Erlang optimization were turned off (using no_copt), the optimization passes for Beam assembly could generate unsafe code that did not initialize all Y registers before (for example) a call instruction. To fix this, beam_dead should not attempt to remove stores to Y registers. That is not safe if there is an exception-generating instruction inside a try...catch block.
2016-05-30beam_validator: Add is_bitstring/1 as a safe BIFBjörn Gustavsson
beam_validator wrongly complained that the following was not safe because it didn't know that is_bitstring/1 is safe: food(Curriculum) -> [try is_bitstring(functions) catch _ -> 0 end, Curriculum]. While we are it, also add a new bif_SUITE test suite to cover some more code in beam_validator.
2016-05-30beam_validator: Remove uncovered lineBjörn Gustavsson
The raise/3 instruction is specially handled, thus there is no need for bif_type/3 to handle raise/3 (also, the number of arguments was incorrect, so it could never have matched).
2016-05-30Teach beam_utils:is_pure_test/1 to handle is_bitstr and is_function2Björn Gustavsson
The 'is_bitstr' and 'is_function2' tests are pure. The corresponding BIFs have different names; thus the default call to erl_internal:new_type_test/2 is not sufficient.
2016-05-30wx: Fix occasional seq fault after appliction stopsDan Gudmundsson
There seems to be a timeing dependent double delete when doing reference cleanup after wx:destroy(). wxGraphicsObjects can thus not be free'ed by wx in the cleanup phase. A guess is that the underlying rendering context deletes all graphics objects without careeing about wxWidgets reference counting.
2016-05-30Update primary bootstrapBjörn Gustavsson
2016-05-30Merge branch 'kostis/beam_disasm-entry-type/PR-1072'Björn Gustavsson
* kostis/beam_disasm-entry-type/PR-1072: Declare the type of function entry points Export label() type
2016-05-30Fix leaking transports in traffic/relay suitesAnders Svensson
Listening transports weren't removed, which diameter_reg:subs/0 revealed.
2016-05-30Close listening sockets at transport removalAnders Svensson
The transport interface documented in diameter_transport(3) is used to start/stop accepting/connecting transport processes: they're started with a function call, and told to die with their parent process. In the accepting case, both diameter_tcp and diameter_sctp start a listening process when the first accepting transport is started. However, there's no way for a listening process to find out that that it should stop listening when transport configuration is removed. Both diameter_tcp and diameter_sctp have used a timer to terminate the listening process after all existing accepting processes have died as a consequence of transport removal. The problem with this is that nothing stops a new client from connecting before this, and also that no new transport can succeed in opening the same listening port (eg. reconfiguration) until the old listener dies. This commit solves the problem by adding diameter_reg:subscribe/2, to allow callers to subscribe to messages about added/removed associations. A call to diameter:add_transport/2 results in a new child process that registers a term that a listening process subscribes to. Transport removal results in the death of the child, and the resulting notification to the listener causes the latter to close its socket and terminate. This is still an internal interface, but the subscription mechanism should probably be made external (eg. a diameter:subscribe/1 that can be used to subscribe to specified messages), so that transport modules other than diameter's own can make use of it. There is no support for soft upgrade.
2016-05-30Don't restart transport processes after transport removalAnders Svensson
A replacement accepting transport could be started after the service process received a shutdown message from diameter_config, if a connection was accepted before the transport process in question was terminated. The replacement lived on until the service needed to restart it.
2016-05-30Rename diameter_reg:del -> removeAnders Svensson
Letters are cheap.
2016-05-30Add diameter_reg:subscribe/2Anders Svensson
To allow processes to subscribe to a message when a matching association is added or removed. The intention is to use this in diameter_{tcp,sctp}, in order for listening processes to find out when transport their transport configuration has been removed.
2016-05-30Add dialyzer specs to diameter_regAnders Svensson
Last missed in commit 25bef13f.
2016-05-30Remove diameter_reg:repl/2Anders Svensson
Unused, and in the way for what's to come.
2016-05-30Remove diameter_reg bloatAnders Svensson
Unexpected messages don't happen in practice, and no_auto_import is neither necessery nor difficult to avoid.
2016-05-27ssl: Fix TLS version handling in dtls adepted testsIngela Anderton Andin
2016-05-27stdlib: Fix small inconsistencies in ets_SUITEBjörn-Egil Dahlberg
2016-05-27stdlib: Strengthen or relax test casesBjörn-Egil Dahlberg
In particular, valgrind needs a lot of time for certain tests.
2016-05-27kernel: Don't test negative time values in file infoBjörn-Egil Dahlberg
2016-05-27Update preloadedSverker Eriksson
2016-05-27Merge branch 'richcarl/erts/fix-init-stop/PR-911/OTP-13630/OTP-13631'Sverker Eriksson
2016-05-27runtime_tools: Cuddle with t_receive testsBjörn-Egil Dahlberg
2016-05-27Declare the type of function entry pointsKostis Sagonas
This shuts off compiler warnings and will allow to enable stronger compiler checks files that include beam_disasm.hrl in the hipe application. While doing that, also modified a comment in the header file and turned a case statement into effectively an assertion: there should not really be any beam files where functions do not have a label as entry point, right?
2016-05-27Export label() typeKostis Sagonas
2016-05-27Merge branch 'egil/et/fix-unmatched_return/OTP-13595'Björn-Egil Dahlberg
* egil/et/fix-unmatched_return/OTP-13595: et: Fix unmatched return warnings
2016-05-27Merge branch 'egil/runtime_tools/update-lttng-doc'Björn-Egil Dahlberg
* egil/runtime_tools/update-lttng-doc: runtime_tools: Document a lttng usage example
2016-05-27Merge branch 'ingela/ssl/doc-enhancment/ERL-131'Ingela Anderton Andin
* ingela/ssl/doc-enhancment/ERL-131: ssl: Add default values and clarifications
2016-05-27ssl: Add default values and clarificationsIngela Anderton Andin
2016-05-27Bumped runtime dependencies between erts, kernel, stdlib, saslRickard Green
2016-05-27Merge branch 'kennethlakin/beast-mitigation-options/PR-1041/OTP-13629'Ingela Anderton Andin
* kennethlakin/beast-mitigation-options/PR-1041/OTP-13629: ssl: Add BEAST mitigation selection option
2016-05-27Fix windowsRickard Green
2016-05-27Merge branch 'rickard/doc-fix'Rickard Green
* rickard/doc-fix: Minor doc fix
2016-05-27Minor doc fixRickard Green
2016-05-27Merge branch 'rickard/on_heap-fix/OTP-13366'Rickard Green
* rickard/on_heap-fix/OTP-13366: Improve message allocation in enif_send() Fix message queue update on replacement and removal of message
2016-05-27Merge branch 'rickard/rm-mqd-mixed/OTP-13366'Rickard Green
* rickard/rm-mqd-mixed/OTP-13366: Remove the 'message_queue_data' option 'mixed'
2016-05-27Merge branch 'lukas/erts/win-large_binary_port_command/OTP-13628'Lukas Larsson
* lukas/erts/win-large_binary_port_command/OTP-13628: erts: Split large binaries into multiple iovec
2016-05-27erts: Split large binaries into multiple iovecLukas Larsson
On windows the max size of an iov element is long, i.e. 4GB so in order to write larger binaries to file we split the binary into smaller 2GB chunks so that the write is possible.
2016-05-27Merge branch 'lukas/erts/tracing/tracer-move-extra-to-map/OTP-10267'Lukas Larsson
* lukas/erts/tracing/tracer-move-extra-to-map/OTP-10267: runtime_tools: Fix erl_tracer testcases runtime_tools: Fix documentation for dbg:p erts: Move tracer SecondTraceTerm to Opts map
2016-05-27Merge branch 'legoscia/erts/epmd-module-option/OTP-13627'Lukas Larsson
* legoscia/erts/epmd-module-option/OTP-13627: Add tests for -start_epmd and -epmd_module options Use the -epmd_module flag consistently Add -start_epmd command line option
2016-05-26crypto: Add OpenSSL_version macrosSverker Eriksson
to make it easier to read and construct version checks.
2016-05-26runtime_tools: Document a lttng usage exampleBjörn-Egil Dahlberg
2016-05-26crypto: Allow any AES-GCM tag length for non-EVP implSverker Eriksson
Same fix as was done for EVP in f4f588683dce36c447017.
2016-05-26Improve message allocation in enif_send()Rickard Green
2016-05-26Fix message queue update on replacement and removal of messageRickard Green
2016-05-26crypto: Workaround buggy GCM via EVPSverker Eriksson
2016-05-26et: Fix unmatched return warningsBjörn-Egil Dahlberg