aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2018-10-16Update zlib to 1.2.11John Högberg
2018-10-15[socket-nif] Fix socket close when owner process exitsMicael Karlberg
The handling of terminating controlling-process was incomplete. Also added state check (CLOSED and CLOSING) in all nif-functions to prevent access for a closed (or closing) socket. OTP-14831
2018-10-15erts: Fix bug in debug_free for NULL pointerSverker Eriksson
causing ASSERT in sys_memset to fail.
2018-10-12Merge branch 'maint'Rickard Green
* maint: Updated OTP version Prepare release erts: Fix UNC path handling on Windows erts: Fix a compiler warning eldap: Fix race at socket close Fix bug for sockopt pktoptions on BSD erts: Fix memory leak on file read errors
2018-10-12Merge branch 'maint-21' into maintRickard Green
* maint-21: Updated OTP version Prepare release erts: Fix UNC path handling on Windows erts: Fix a compiler warning eldap: Fix race at socket close Fix bug for sockopt pktoptions on BSD erts: Fix memory leak on file read errors
2018-10-12Prepare releaseErlang/OTP
2018-10-12Merge branch 'john/erts/fix-unc-paths-windows/OTP-15333/ERL-737' into maint-21Erlang/OTP
* john/erts/fix-unc-paths-windows/OTP-15333/ERL-737: erts: Fix UNC path handling on Windows erts: Fix a compiler warning
2018-10-12Merge branch 'raimo/BSD-sockopt-pktoptions/ERIERL-187/OTP-14297' into maint-21Erlang/OTP
* raimo/BSD-sockopt-pktoptions/ERIERL-187/OTP-14297: Fix bug for sockopt pktoptions on BSD
2018-10-12Merge branch 'maint'Raimo Niskanen
Conflicts: erts/preloaded/ebin/prim_inet.beam
2018-10-12Merge pull request #1974 from ↵Raimo Niskanen
RaimoNiskanen/raimo/getifaddrs-netns/ERIERL-189/OTP-15121 Implement {netns,NS} option for inet:getifaddrs/1 and friends
2018-10-11"cork" tcp socket around file:sendfileIgor Slepchin
This fixes 200ms delay on the last TCP segment when using file:sendfile/2 on Linux (ERL-698).
2018-10-11Merge branch 'maint'Rickard Green
* maint: Updated OTP version Prepare release
2018-10-11Merge branch 'maint-17' into maintRickard Green
* maint-17: Updated OTP version Prepare release
2018-10-11Prepare releaseErlang/OTP
2018-10-11Merge branch 'sverker/r16/binary_to_atom-utf8-crash/ERL-474/OTP-14590' into ↵Erlang/OTP
maint-17 * sverker/r16/binary_to_atom-utf8-crash/ERL-474/OTP-14590: erts: Fix crash in binary_to_atom/term for invalid utf8
2018-10-11Merge branch 'sverker/big-bxor-bug/ERL-450/OTP-14514' into maint-17Erlang/OTP
* sverker/big-bxor-bug/ERL-450/OTP-14514: erts: Fix bug in bxor of a big negative number
2018-10-11Merge branch 'sverker/bin2term-zlib-bug/ERL-340/OTP-14159' into maint-17Erlang/OTP
* sverker/bin2term-zlib-bug/ERL-340/OTP-14159: erts: Fix binary_to_term for compressed and zlib >= v1.2.9
2018-10-11Merge branch 'rickard/thr-prgr-unmanaged-delay-bug/OTP-13869' into maint-17Erlang/OTP
* rickard/thr-prgr-unmanaged-delay-bug/OTP-13869: Fix erts_thr_progress_unmanaged_delay()
2018-10-11Merge branch 'rickard/drv-send-term-thr-bug/OTP-13866' into maint-17Erlang/OTP
* rickard/drv-send-term-thr-bug/OTP-13866: Fix thread calls to erl_drv_send_term()/erl_drv_output_term()
2018-10-11Merge branch 'rickard/port-sig-dropped-fix/OTP-13424' into maint-17Erlang/OTP
* rickard/port-sig-dropped-fix/OTP-13424: Fix implementation of dropped signal to port
2018-10-11Allow undefined macros when building zlibFrank Hunleth
When building Erlang on a system that uses the Musl C library, it's possible to get the following error: In file included from zlib/adler32.c:11:0: zlib/zutil.h:172:39: error: "_LFS64_LARGEFILE" is not defined [-Werror=undef] (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0) ^~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors On the same systems, zlib is built without `-Werror=undef` so do the same when building it with Erlang. Signed-off-by: Frank Hunleth <[email protected]>
2018-10-11erts: Fix UNC path handling on WindowsJohn Högberg
This is unlikely to be the last of the path problems seen after OTP 21, and I'm starting to regret my decision to unconditionally use long paths. The idea to hit all long-path problems all the time was good in theory as it makes such bugs far more visible, but there just aren't enough people who test pre-release versions on Windows, making this the world's slowest game of whack-a-mole.
2018-10-11erts: Fix a compiler warningJohn Högberg
This would've been a bug if the value was used.
2018-10-11Add nopush TCP socket optionIgor Slepchin
This translates to TCP_CORK on Linux and TCP_NOPUSH on BSD. In effect, this acts as super-Nagle: no partial TCP segments are sent out until this option is turned off. Once turned off, all accumulated unsent data is sent out immediately. The latter is *not* the case on OSX, hence the implementation ignores "nopush" on OSX to reduce confusion.
2018-10-09[socket-nif|doc] Add preliminary doc for the function supportsMicael Karlberg
Added preliminary documentation for the function socket:supports/0,1,2,3. It still does not generate proper doc for supports/3 (the last arg, Opt, don't get a type). OTP-14831
2018-10-09erts: Fix bug introduced in merge commitSverker Eriksson
f4f409ff28185b3308359ca5ca91921bc51f536f
2018-10-09Merge branch 'maint'Sverker Eriksson
# Conflicts: # erts/emulator/beam/erl_db_tree.c
2018-10-09Merge branch 'sverker/erts/ets-select_replace-bug/OTP-15346' into maintSverker Eriksson
* sverker/erts/ets-select_replace-bug/OTP-15346: erts: Fix bug in ets:select_replace for bound key
2018-10-09erts: Fix bug in ets:select_replace for bound keySverker Eriksson
which may cause following calls to ets:next or ets:prev to fail.
2018-10-09[socket-nif] The supports function now also handles sctp and ipv6Micael Karlberg
The supports function now also handles testing for SCTP and IPv6 support. Basic test at the moment, but better then nothing. OTP-14831
2018-10-09[socket-nif] Completed (ahum) the socket option(s) part of supportsMicael Karlberg
"Completed" the socket options part of the supports function. OTP-14831
2018-10-08Merge branch 'sverker/erts/freeing-ordered_set-nodes/OTP-15323'Sverker Eriksson
* origin/sverker/erts/freeing-ordered_set-nodes/OTP-15323: erts: Refactor out DbRouteKey struct erts: Remove dead code in erl_db_catree erts: Fix bug in erl_db_catree erts: Remove "dynamic" lock order support erts: Add lock order check for route nodes erts: Add lock order check of erl_db_catree base nodes erts: Add Erlang term order to lock checker erts: Add some ERTS_RESTRICT pointers erts: Do some refactoring in erl_db_catree.c erts: Improve deallocation of CATree nodes erts: Refactor rename union in DbTableCATreeNode erts: Fix compiler warning in erl_bif_binary.c
2018-10-08[socket-nif] Add the options for socket, ip and ipv6 for supportsMicael Karlberg
Add the options for level socket (full), ip and ipv6 to the supports function. OTP-14831
2018-10-08Merge pull request #1964 from lemenkov/more_os_getenv_2Hans Bolinder
Use os:getenv/2 where possible
2018-10-05[socket-nif] Add first three socket (socket) options to supportsMicael Karlberg
Added the first three socket (level socket) options to the supports function(s). OTP-14831
2018-10-05Fix run_erl.c so it compiles on SolarisRogier Velting
The checks in place to allow this file to compile on macOS and BSD can be extended to include Solaris.
2018-10-05[socket-nif] Add *preliminary* new function supports/0,1Micael Karlberg
2018-10-04Merge branch 'bmk/20181004/nififying_inet_freebsd_fixes/OTP-14831' into ↵Micael Karlberg
bmk/20180918/nififying_inet/OTP-14831
2018-10-04[socket-nif] Add owner validation when setopt controlling_processMicael Karlberg
Before allowing setopt(Sock, opt, controlling_process, NewPid), verify that the caller is actually the current controlling_process. OTP-14831
2018-10-04Merge branch 'maint'Sverker Eriksson
2018-10-04Merge PR-1962 from gomoripeti/ms_bit_size OTP-15343Sverker Eriksson
Document bit_size in match-specs and allow in fun2ms
2018-10-04[socket-nif] Fixed decode of send and recv flagsMicael Karlberg
Add explicitly handling the default case, when not flags are provided (value of zero). OTP-14831
2018-10-04[socket-nif] Socket option 'SO_DOMAIN' not avalable on all platformsMicael Karlberg
Internally in the socket module we accessed domain, type and protocol for an open socket. But as it turns out, domain (family) is not actually available as a socket option on all platforms. FreeBSD in this case. So, since we store these values in the socket descriptor anyway, we switch to use these values for our internal use instead. OTP-14831
2018-10-03erts: Refactor out DbRouteKey structSverker Eriksson
to not abuse DbTerm.
2018-10-03erts: Remove dead code in erl_db_catreeSverker Eriksson
'parent' is route node and 'neighbor' is base node, they can never be equal. 'neighbor_parent' has already been set correctly for all cases.
2018-10-03erts: Fix bug in erl_db_catreeSverker Eriksson
Search stack must be cleared before retry.
2018-10-03erts: Remove "dynamic" lock order supportSverker Eriksson
2018-10-03erts: Add lock order check for route nodesSverker Eriksson
Lock order is reverse tree depth, from leafs toward root. This solution may eventually fail if running too long as route nodes do not increase their 'lc_order' in a join operation when they move up in the tree. But who runs a VM with lock-checker for such a long time?
2018-10-03erts: Add lock order check of erl_db_catree base nodesSverker Eriksson
Lock order is key term order, so each base node needs its own key if lock check is enabled.
2018-10-03erts: Add Erlang term order to lock checkerSverker Eriksson