aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2018-09-18[net-nif] The net-module now actually loadsMicael Karlberg
The net (nif) module now actually loads (automatically) when the VM is started (*on linux*). Now we must make sure it *actually* works, and implement the rest of the stuff...
2018-09-18[net-nif] Added preliminary net nif fileMicael Karlberg
OTP-14831
2018-09-18[net-nif] Erlang interface module for netMicael Karlberg
This is part of the nififying of the inet driver. OTP-14831
2018-09-18[socket-nif] Added some use of debug and fixed bindMicael Karlberg
Added (some) use of the debug printouts in (nif-) open and bind. Also fixed handling of the address argument in the bind function(s) (since it was changed to be of the in_sockaddr()). OTP-14831
2018-09-18[socket-nif] The info function now returns a non-empty mapMicael Karlberg
The map returned by the info function is now populated with the "global stuff". That is, debug, iow and the (global) counters (which are still not actually incremented). Also added debug functions and macros (not yet used). OTP-14831
2018-09-18[socket-nif] Fixed getopt function specMicael Karlberg
2018-09-18[socket-nif-doc] More polishingMicael Karlberg
Also added (a very) temporary example. OTP-14831
2018-09-18[socket-nif-doc] Fixed socket type and function openMicael Karlberg
The doc for type socket was missing (as it is opaque), so instead its replaced with a simple text referring to the functions open and accept. The open function missed a spec (for open/2), the text for default protocol needed some omrpvement and finally the Extra argument needed explaining.
2018-09-18[socket-nif-doc] Add preliminary doc for socketMicael Karlberg
The doc now builds. Had to update the code (spec and types) to match. Though, te result is less then stellar. OTP-14831
2018-09-18[socket-nif] Updated socket preloaded beamMicael Karlberg
2018-09-18[socket-nif] More getoptMicael Karlberg
Added guards and type specs for native getopt.
2018-09-18[socket-nif] More getoptMicael Karlberg
Its now possible to specify some "base" type(s) when retreiving an "native" option (base type instead of value size).
2018-09-18[socket-nif] getopt partially implementedMicael Karlberg
There are still many options not implemented (just as for setopt), but this will have to do for now...
2018-09-18[socket-nif] more setoptMicael Karlberg
Rewrote the setopt handling. Still not complete, but now the structure is "complete". That is, there is atleast one option handled for each level.
2018-09-18[socket-nif] setopt for socket option(s) rcvbuf and sndnufMicael Karlberg
2018-09-18[socket-nif] setopt of socket option broadcastMicael Karlberg
2018-09-18[socket-nif] setopt of socket option dontrouteMicael Karlberg
2018-09-18[socket-nif] setopt of socket option priorityMicael Karlberg
2018-09-18[socket-nif] setopt of socket option reuseaddrMicael Karlberg
2018-09-18[socket-nif] More setopt - udpMicael Karlberg
Add setopt for one udp option: cork. This is not platform independent. Aas fas as I know, it only works on linux, so for now this serves as a placeholder.
2018-09-18[socket-nif] More setoptMicael Karlberg
Add handling of nodelay tcp option setopt. Added placeholder sctp options autoclose and nodelay (since my machine does not actually have sctp installed...).
2018-09-18[socket-nif] setopt of (tcp) congestionMicael Karlberg
2018-09-18[socket-nif] Network interface mappings and sock addrMicael Karlberg
Add functions for mapping network interface names and indexes. Also refined the types for socket addresses: in4_sockaddr and in6_sockaddr.
2018-09-18[socket-nif] More setoptMicael Karlberg
"Handle" the linger option "fully". We still have a lot of options to handle. We also need to analyze the nif-code for setopt...
2018-09-18[socket-nif] Preliminary setoptMicael Karlberg
*Very* partial setopt implementation.
2018-09-18[socket-nif] Completed the shutdown functionMicael Karlberg
2018-09-18[socket-nif] More close-related workMicael Karlberg
There are still some questions regarding what hapopens when writing / reading from an (remote) closed socket (I talking about "properly" closed sockets).
2018-09-18[socket-nif] "Completed" the close functionMicael Karlberg
There is probably a lot of things left to be here. For instance the handling of ECONNRESET when reading (recv and recvfrom). Also some stuff about setopt and getopt.
2018-09-18[socket-nif] Completed the recv and recvfrom functionsMicael Karlberg
Also updated the socket type (now a record for easy use).
2018-09-18[socket-nif] Corrected timout handlingMicael Karlberg
The timeout handling for accept and send was unnecessarily complex.
2018-09-18[socket-nif] Completed recvMicael Karlberg
Need to fix the use of the request ref (ID) handling in previous functions.
2018-09-18[socket-nif] Implemented sendtoMicael Karlberg
Still not handling queue'ing of multiple send requests.
2018-09-18[socket-nif] Completed sendMicael Karlberg
We still need to handle simultaneous ops. That is, handle if two different procs tries to send at the same time. Or a recv and send at the same time. Ops queue?
2018-09-18[socket-nif] Completed acceptMicael Karlberg
2018-09-18[socket-nif] Completed listenMicael Karlberg
2018-09-18[socket-nif] Completed connectMicael Karlberg
Still not implemented the 'cancel' operation. This will be used when, for instance, we need to cancel an ongoing connect that has taken to long time to complete (the select). The idea is to use select(STOP).
2018-09-18[socket-nif] preliminary version of the new socket interface (nififying)Micael Karlberg
2018-09-17Merge branch 'maint'Raimo Niskanen
2018-09-17Merge branch 'raimo/receive-TOS-TCLASS/ERIERL-187/OTP-15145' into maintRaimo Niskanen
* raimo/receive-TOS-TCLASS/ERIERL-187/OTP-15145: Write testcases for recvtos and friends Fix term buffer overflow bug Fix documentation due to feedback Implement socket option recvtos and friends
2018-09-17Merge branch 'maint'John Högberg
* maint: Improve trapping in lists:reverse/2 Fix unsafe use of lists:reverse/1
2018-09-17Merge branch 'john/erts/improve-list-reverse-trapping/OTP-15199' into maintJohn Högberg
* john/erts/improve-list-reverse-trapping/OTP-15199: Improve trapping in lists:reverse/2 Fix unsafe use of lists:reverse/1
2018-09-17Merge branch 'maint'Rickard Green
* maint: Fix PGO configure test
2018-09-17Merge branch 'rickard/conf-pgo/OTP-15282' into maintRickard Green
* rickard/conf-pgo/OTP-15282: Fix PGO configure test
2018-09-14Merge branch 'maint'Hans Bolinder
* maint: erts: Add comment about [] and nil() to The Abstract Format syntax_tools: Correct erl_syntax:revert/1
2018-09-14Merge branch 'hasse/syntax_tools/fix_revert/OTP-15294' into maintHans Bolinder
* hasse/syntax_tools/fix_revert/OTP-15294: erts: Add comment about [] and nil() to The Abstract Format syntax_tools: Correct erl_syntax:revert/1
2018-09-14erts: Add comment about [] and nil() to The Abstract FormatHans Bolinder
2018-09-13Improve trapping in lists:reverse/2John Högberg
If the process had more free space than reductions it could run a lot longer than it was supposed to. It didn't honor the number of reductions going in either, nor did it bump reductions when returning its result or erroring out. This commit also removes this function from a work function in scheduler_SUITE as it's extremely sensitive to the number of reductions spent in the test, causing equal_and_high_with_part_time_max to fail on some machines.
2018-09-13Fix unsafe use of lists:reverse/1John Högberg
We said reverse/2 but used reverse/1 which is unsafe to use in preloaded modules. This didn't have any effect in practice as the affected functions weren't used before the code server was started, but it's still an error.
2018-09-12Merge branch 'maint'Rickard Green
* maint: Updated OTP version Update release notes Update version numbers erts: Fix "Prevent inconsistent node lists" fix Fix include-path regression caused by dd0a39c Restore default SIGTERM behaviour for port programs
2018-09-12Merge branch 'maint-21' into maintRickard Green
* maint-21: Updated OTP version Update release notes Update version numbers erts: Fix "Prevent inconsistent node lists" fix Fix include-path regression caused by dd0a39c Restore default SIGTERM behaviour for port programs