aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-09-18[net-nif] Added debuggingMicael Karlberg
Added a command function, which is currently only used to enable and disable debug, which is also added.
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-18Merge branch 'maint'Hans Bolinder
* maint: stdlib: Allow lists with binaries in the Format argument
2018-09-18Merge branch 'hasse/stdlib/binary_in_format/OTP-15304' into maintHans Bolinder
* hasse/stdlib/binary_in_format/OTP-15304: stdlib: Allow lists with binaries in the Format argument
2018-09-18Merge branch 'maint'Sverker Eriksson
2018-09-18Merge pull request #1956 from erlang/sverker-ets-patch-1Sverker Eriksson
ets:new/2 doc update
2018-09-18Merge branch 'maint'Hans Nilsson
* maint: crypto: Fix bad return/exception for unsupported cipher crypto: Use aead functions for CHACHA20_POLY1305
2018-09-18Merge branch 'hans/crypto/chacha_poly_into_aead_fns/OTP-15300' into maintHans Nilsson
* hans/crypto/chacha_poly_into_aead_fns/OTP-15300: crypto: Fix bad return/exception for unsupported cipher crypto: Use aead functions for CHACHA20_POLY1305
2018-09-18crypto: Fix bad return/exception for unsupported cipherHans Nilsson
Accidently f11391139c4165e8541a52d45cd1525343a83927 merged by 0a218353e4360e36bac304b6a4e0effe78d95615 changed the return exception 'notsup' to 'badarg' for unsupported chipher names. This changes that back.
2018-09-18crypto: Use aead functions for CHACHA20_POLY1305Hans Nilsson
This previously implemented cipher is a block cipher despite using chacha. It also uses the EVP_CIPHER_CTX api which now unifies AES_GCM and AES_CCM into one pair of encrypt and decrypt functions. By integrating the existing chacha20_poly1305 code into aead_encrypt and aead_decrypt we could remove two C-functions and simplify both the C-code and the corresponding Erlang code in the CRYPTO application.
2018-09-18Merge branch 'maint'Hans Nilsson
* maint: crypto: Disable problematic RSA options in LibreSSL
2018-09-18Merge branch 'hans/crypto/disable_rsa_sslv23_libressl/OTP-15303' into maintHans Nilsson
* hans/crypto/disable_rsa_sslv23_libressl/OTP-15303: crypto: Disable problematic RSA options in LibreSSL
2018-09-18crypto: Disable problematic RSA options in LibreSSLHans Nilsson
2018-09-18Merge branch 'maint'Hans Nilsson
* maint: crypto: Disable bad tests They do not test what was intended.