aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2014-10-21dialyzer: remove recognition of the compiler option 'asm'Hans Bolinder
The compiler option 'asm' has been replaced by 'from_asm' in Erlang/OTP 18.0.
2014-10-20Merge branch 'lukas/erts/non-blocking-shell'Lukas Larsson
* lukas/erts/non-blocking-shell: Fix io:columns/0 timeout when invoked via user kernel,ssh: Add synchronous user_drv protocol erts: Make writing to non-tty fds non-blocking erts: Make tty driver non-blocking
2014-10-20Merge branch 'tuncer/compiler/finalize-asm-deprecation/OTP-12100'Björn Gustavsson
* tuncer/compiler/finalize-asm-deprecation/OTP-12100: compiler: finalize 18.x 'asm' deprecation
2014-10-20Merge branch 'maint'Björn Gustavsson
* maint: BER decoding: Don't allow primitives with indefinite lengths
2014-10-20Merge branch 'bjorn/asn1/primitive-indefinite-length/OTP-12205' into maintBjörn Gustavsson
* bjorn/asn1/primitive-indefinite-length/OTP-12205: BER decoding: Don't allow primitives with indefinite lengths
2014-10-20Merge branch 'maint'Bruce Yinhe
2014-10-20Merge branch 'adelzhang/fix_application_master_comment' into maintBruce Yinhe
* adelzhang/fix_application_master_comment: Fix obsolete comment
2014-10-16Fix io:columns/0 timeout when invoked via userJosé Valim
This patch fixes an issue where io:columns/0 times out when invoked from any application callback (or any supervisor/supervised module since the group leader is inherited). To reproduce the issue, one must simply call io:columns() from any application callback. You will notice the process will block for 2 seconds which then times out and returns {:error, :enotsup}. Note this bug only happens inside the erlang shell (using -noshell or escripts do not trigger the bug). To fix the bug, it is important to understand how io requests flow from application callback processes. Here are the steps followed: 1. Since io:columns/1 is timing out, the first step is to find out who is the group leader for the application callback process. Using process_info/1, we can see the parent process is the application_master and handles io_requests by delegating them to the group_leader. 2. By inspecting the application_master process, we can find the group_leader the message is sent is the registered process named user. The process is running the group module which does handle io:columns/1 requests delegating them to user_drv process. 3. The user_drv process does handle tty_geometry requests, except that a clause above ends up short-circuiting all tty_geometry requests from the user process. This patch moves the user clause below the specific driver messages. OTP-12241
2014-10-16kernel,ssh: Add synchronous user_drv protocolLukas Larsson
Added a put_chars_sync to the protocol that can be used to talk to user_drv and made group use it. This is needed in order to guarantee that bytes has been pushed to the tty port when doing something like this: io:format("halting\n"),erlang:halt(0). Before this change the halting message could be lost in the message queue of the user_drv process, this is no longer possible. This commit also fixes ssh_cli as that plugs itself in as a user_drv process. OTP-12240
2014-10-16Merge branch 'maint'Hans Nilsson
* maint: ssh: Fixes clause syntax error in ssh.appup.src
2014-10-16ssh: Fixes clause syntax error in ssh.appup.srcHans Nilsson
2014-10-15Merge branch 'maint'Hans Nilsson
2014-10-15Merge branch 'hans/eldap/cuddle_with_tests' into maintHans Nilsson
2014-10-15Merge branch 'maint-17' into maintBruce Yinhe
Conflicts: OTP_VERSION
2014-10-14eldap: dynamically excludes unsupported ip versions.Hans Nilsson
2014-10-13Merge branch 'maint'Bruce Yinhe
2014-10-13Merge branch 'archimed-shaman/leex_line_wrap_issue' into maintBruce Yinhe
OTP-12238 * archimed-shaman/leex_line_wrap_issue: Fix line counting in token and tokens functions Add unit test for string fun in leex test suite Fix the line counting in string function
2014-10-13Merge branch 'ia/ssl/seperate-clinet-server-session-table/OTP-11365'Ingela Anderton Andin
* ia/ssl/seperate-clinet-server-session-table/OTP-11365: ssl: Separate session cache for client and server
2014-10-13ssl: Separate session cache for client and serverIngela Anderton Andin
Even though in the most common case an erlang node will not be both client and server, it may happen (for instance when running the erlang ditribution over TLS). Also try to mitigate the affect of dumb clients that could cause a very lagre session cache on the client side that can cause long delays in the client. The server will have other means to handle a large session table and will not do any select operations on it anyhow.
2014-10-13Merge branch 'maint'Hans Nilsson
2014-10-13Merge branch 'hans/ssh/closed_int/OTP-12004' into maintHans Nilsson
2014-10-13Update release notesErlang/OTP
2014-10-13Merge branch ↵Erlang/OTP
'ia/patch-17/ssh/user-interaction/OTP-11329/sftp-version/OTP-12227' into maint-17 * ia/patch-17/ssh/user-interaction/OTP-11329/sftp-version/OTP-12227: ssh: Prepare for release ssh: Add option sftp_vsn ssh: Fix option user_interaction to work as expected
2014-10-13ssh: Prepare for releaseIngela Anderton Andin
2014-10-11Merge branch 'maint'Siri Hansen
2014-10-10ssh: Add option sftp_vsnIngela Anderton Andin
2014-10-10[observer] Remove note about R15B nodes in user guideSiri Hansen
A note in the user guide says "Only R15B nodes can be observed". This note was written because the observer_backend module did not exist in earlier releases. It should have said "R15B or later". However, now that we are on OTP-17, we don't think the note is necessary anymore so it is now removed.
2014-10-10Merge branch 'maint'Hans Bolinder
* maint: dialyzer: do a minor re-factoring dialyzer: Ignore ERL_COMPILER_OPTIONS when compiling dialyzer: fix bug concerning compiler option 'warnings_as_errors'
2014-10-10Merge branch 'hb/dialyzer/warnings_as_errors/OTP-12225' into maintHans Bolinder
* hb/dialyzer/warnings_as_errors/OTP-12225: dialyzer: do a minor re-factoring dialyzer: Ignore ERL_COMPILER_OPTIONS when compiling dialyzer: fix bug concerning compiler option 'warnings_as_errors'
2014-10-09ssh: Fix option user_interaction to work as expectedIngela Anderton Andin
When password authentication is implemented with ssh keyboard-interactive method and the password is already supplied, so that we do not need to query the user, connections should succeed even though the user_interaction option is set to false.
2014-10-09ssh: Corrected ret val from ssh_connection:subsystem/4.Hans Nilsson
2014-10-09ssh: testcaseHans Nilsson
2014-10-08dialyzer: do a minor re-factoringHans Bolinder
A minor re-factoring and generalization.
2014-10-08Merge branch 'maint'Siri Hansen
2014-10-08Merge branch 'siri/cuddle-with-tests' into maintSiri Hansen
* siri/cuddle-with-tests: [ct test] Explicitly unregister event receiver to avoid badarg
2014-10-08dialyzer: Ignore ERL_COMPILER_OPTIONS when compilingHans Bolinder
If, for instance, 'warn_unused_import' is present in ERL_COMPILER_OPTIONS then many files in Erlang/OTP (Kernel, STDLIB, ...) cannot be analyzed by Dialyzer since the option is not present when compiling Erlang/OTP, but 'warnings_as_errors' is. The case that ERL_COMPILER_OPTIONS contains 'warnings_as_errors' can only be handled by ignoring ERL_COMPILER_OPTIONS.
2014-10-08ssl: Prepare for releaseIngela Anderton Andin
2014-10-08ssl: Servers may include an empty SNI-extensionIngela Anderton Andin
2014-10-08dialyzer: fix bug concerning compiler option 'warnings_as_errors'Hans Bolinder
A typical scenario: the type digraph() is used in R16 (compilation with the option 'warnings_as_errors' results in no warning); then the module is analyzed by a 17 Dialyzer where digraph() is obsolete, and since the warning is turned into an error Dialyzer fails to load the module. Thanks to Michael Truog.
2014-10-06Merge branch 'maint'Bruce Yinhe
2014-10-06Merge branch 'vinoski/edlin-ctrl-u' into maintBruce Yinhe
OTP-12224 * vinoski/edlin-ctrl-u: Make shell ctrl-u save killed text correctly
2014-10-06Merge branch 'maint'Ingela Anderton Andin
2014-10-06Merge branch 'ia/ssl/link-fix' into maintIngela Anderton Andin
* ia/ssl/link-fix: ssl: Fix link error in documentation
2014-10-06Merge branch 'maint'Bruce Yinhe
2014-10-06Merge branch 's1n4/httpc_doc_typo' into maintBruce Yinhe
OTP-12221 * s1n4/httpc_doc_typo: httpc: Fix a typo in the documentation
2014-10-03Merge branch 'egil/maps/variable-keys/OTP-12218'Björn-Egil Dahlberg
* egil/maps/variable-keys/OTP-12218: (22 commits) compiler: Update test for Maps aliasing compiler: Properly support Map aliasing compiler: Refactor Map pairs aliasing compiler: Fix harmless need_heap error for Maps stdlib: Update Map tests stdlib: Use environment bindings for Maps keys in erl_eval matching debugger: Update Map tests compiler: Update Map tests compiler: Fix v3_core Maps pair chains compiler: Use expressions in core patterns compiler: Use variables in Map cerl inliner compiler: Reintroduce binary limit for Map keys compiler: Shameless v3_core hack for variables compiler: Use variables in Map beam assmebler compiler: Use variables in Map kernel pass compiler: Use variables in Map core pass compiler: Normalize unary ops on Maps key literals stdlib: Update Map tests stdlib: erl_lint Map key variables compiler: Maps are always patterns never values in matching ...
2014-10-03ssl: Fix link error in documentationIngela Anderton Andin
2014-10-02compiler: Update test for Maps aliasingBjörn-Egil Dahlberg
2014-10-02compiler: Properly support Map aliasingBjörn-Egil Dahlberg
Matching of type: #{K := V1} = #{K := V2} = M, Will alias (coalesce) to #{K := V1 = V2} = M.
2014-10-02Merge branch 'maint'Siri Hansen
Conflicts: lib/stdlib/src/stdlib.appup.src