aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
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.
2018-09-18Merge branch 'hans/crypto/revert_bad_tests' into maintHans Nilsson
* hans/crypto/revert_bad_tests: crypto: Disable bad tests They do not test what was intended.
2018-09-18crypto: Disable bad testsHans Nilsson
They do not test what was intended.
2018-09-17test ets doc updatesverker-ets-patch-1Sverker Eriksson
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-17Write testcases for recvtos and friendsRaimo Niskanen
Use os:type() and os:version() to predict if the individual options are supposed to be supported. We'll see if this holds.
2018-09-17Merge branch 'bmk/snmp/20180907/atl_conversion_failure/OTP-15287' into maintMicael Karlberg
2018-09-17Merge branch 'maint'Micael Karlberg
2018-09-17Merge branch 'bmk/snmp/20180910/compiler_version_printout/OTP-15290' into maintMicael Karlberg
2018-09-17[snmp] Updated versionMicael Karlberg
OTP-15290
2018-09-17[snmp|compiler] Spurious version message removedMicael Karlberg
The snmp mib compiler printed an spurious version message if the 'version' option was provided. OTP-15290
2018-09-17[snmp] Add proper versionMicael Karlberg
Also fixed case clause. OTP-15287 (ERIERL-206)
2018-09-17stdlib: Allow lists with binaries in the Format argumentHans Bolinder
As a consequence of some refactoring (OTP-14983, option 'chars_limit'), the Format argument of io_lib:format() no longer accepts binaries in lists in Erlang/OTP 21.0. Note that if Format is not of type io:format(), control sequences in Format are ignored. This can result in unpredictable behaviour if, for example, the output of io_lib:format() is used as Format: if the output happens to be a string(), then control sequences are interpreted, otherwise not. A check that Format is of type io:format() will likely be introduced in Erlang/OTP 22.0. That will probably mean work for some users, but considering how unpredictable io_lib:format() is, we should try to fix that.
2018-09-17Merge branch 'maint'Hans Bolinder
* maint: kernel: Adjust disk_log tests kernel: Adjust global testcase
2018-09-17Merge branch 'hasse/kernel/adjust_tests' into maintHans Bolinder
* hasse/kernel/adjust_tests: kernel: Adjust disk_log tests kernel: Adjust global testcase
2018-09-17Merge branch 'maint'Siri Hansen
2018-09-17Merge branch 'siri/logger/post-21-continues/OTP-15132' into maintSiri Hansen
* siri/logger/post-21-continues/OTP-15132: [logger] Read config before terminating handler process [error_logger] Handle report_cb with arity 2 [proc_lib] Improve crash reports for single line logging [logger] Include single_line option to report_cb [logger] Check for deadlock when removing filters [logger] Fix spec for handler callbacks to always return ok [logger] Increase timetrap timer for handler_requests_under_load test [logger] Improve code coverage in test [logger] Refactor, and add error detection for configuration [logger] Fix logger_disk_log_h_SUITE:sync and add som debug info [logger] Update doc about file options in logger_std_h [logger] Remove encoding option from logger_formatter Remove outdated reference to error loggers [logger] Refactor some logger internals
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-17Merge branch 'maint'Hans Nilsson
* maint: crypto: Fix no_aead test crypto: Document AES_CCM and fix errors in User's Guide The sizes in the Algorithms chapter for aes_gcm was wrong or incomplete. crypto: AES_CCM test case crypto: All aes_ccm vectors (including unused) This directory contains all aes_ccm vectors. However, effort is needed to include them in the test suite so they are left for later. crypto: Add AES_CCM crypto Will be increase interoperability of future SSL application versions. crypto: Generalize aes_gcm_(de|en)crypt nifs
2018-09-17Merge branch 'hans/crypto/aes_ccm/OTP-15286' into maintHans Nilsson
* hans/crypto/aes_ccm/OTP-15286: crypto: Fix no_aead test crypto: Document AES_CCM and fix errors in User's Guide The sizes in the Algorithms chapter for aes_gcm was wrong or incomplete. crypto: AES_CCM test case crypto: All aes_ccm vectors (including unused) This directory contains all aes_ccm vectors. However, effort is needed to include them in the test suite so they are left for later. crypto: Add AES_CCM crypto Will be increase interoperability of future SSL application versions. crypto: Generalize aes_gcm_(de|en)crypt nifs
2018-09-17Merge branch 'maint'Hans Nilsson
* maint: crypto: Add forgotten #ifdef MAY prevent compilation errors if the symbol is configured to not be defined in an OpenSSL version where it exists by default. crypto: Change condition for RSA_PKCS1_PSS Trubble on a couple of cross-building machines crypto: RSA options list disclaimer in documentation for crypto:supports/0 The final appearence of the rs_opts entry is still not completly decided. crypto: Add 'rsa_opts' to crypto:supports/0 Needed in future versions of the SSL application.
2018-09-17Merge branch 'hans/crypto/rsassa_pss/OTP-15260' into maintHans Nilsson
* hans/crypto/rsassa_pss/OTP-15260: crypto: Add forgotten #ifdef MAY prevent compilation errors if the symbol is configured to not be defined in an OpenSSL version where it exists by default. crypto: Change condition for RSA_PKCS1_PSS Trubble on a couple of cross-building machines crypto: RSA options list disclaimer in documentation for crypto:supports/0 The final appearence of the rs_opts entry is still not completly decided. crypto: Add 'rsa_opts' to crypto:supports/0 Needed in future versions of the SSL application.
2018-09-14[logger] Read config before terminating handler processSiri Hansen
When a handler process is terminated due to overload, it reads its configuration from the configuration database, so it can be restarted with the same configuration after a small delay. This was earlier done in a different process, which was spawned off from the terminate function. This caused a race condition, where in some cases, the configuration was already removed before it could be read. The reason for spawning off a process, is to avoid a deadlock due to the call to logger:remove_handler/1. This commit moves the call to logger:get_handler_config/1 back to the handler process - to ensure that the data is still there, but keeps the call to logger:remove_handler/1 in the spawned off process - to avoid deadlock.
2018-09-14crypto: Fix no_aead testHans Nilsson