Age | Commit message (Collapse) | Author |
|
* pan/epmd-vulnerabilities/OTP-8780:
Teach testcases to survive TIME_WAIT overload
Update erl_interface doc and testsuite for epmd changes
Restore null termination of input buffer
Teach testcase epmd_SUITE:too_large to accept econnaborted
Teach epmd_cli.c to not respond 'Killed' when killing denied
Calculate minimal packet size for ALIVE2 requests correctly
Document epmd and it's options properly and fixup help text
Fix anomalies in epmd not yet reported as security issues
Remove two buffer overflow vulnerabilities in EPMD
Remove all support for ancient EPMD protocol
Remove very old protocol from EPMD
Conflicts:
lib/erl_interface/src/epmd/epmd_port.c
|
|
* rickard/timer-wheel/OTP-8835:
Use mutex instead of rwlock
|
|
|
|
* pan/binary-bif-valgrind-leak/OTP-8823:
Teach erl_bif_binary not leak memory by doing malloc(0)
|
|
|
|
Use mutex instead of rwlock since the read lock is more or less
unused and it can be quite contended.
|
|
|
|
|
|
* bjorn/http-packet-error/OTP-8831:
Make gen_tcp:recv/2 consistent with ssl:recv/2
|
|
* sv/ethread-atomic-mips:
add MIPS architecture to GCC ethread atomics support
|
|
* rickard/rwmtx-spin/OTP-8819:
Fix deadlock in reader optimized rwlock implementation
Remove unused variables
Increase spincount with many schedulers
Re-enable spin wait on ethreads rwlocks
|
|
When the HTTP packet mode has been enabled for a socket,
the ssl and gen_tcp modules have different error indications
when there is an error while parsing the HTTP header:
ssl:recv(SSLSocket, 0) -> {ok, {http_error, _Str}}
gen_tcp:recv(Socket, 0) -> {error, {http_error, _Str}}
We have decided to change gen_tcp:recv/2 to behave the same
way as ssl:recv/2. That means that there will be always be
an ok tuple if data could be succefully read from the socket,
and an error tuple if there was a read error at the socket level.
|
|
A bug causing a deadlock in the reader optimized rwlock
implementation has been fixed. This bug appeared in
commit 59ee2a593090e7d53c97ceba63cbd300d1b9657e, i.e.,
it has not been seen in any released versions.
|
|
|
|
|
|
Spin wait on most ethread rwlocks used by the runtime system was
unintentionally disabled during development. Spin wait has now been enabled
again. This bug appeared in commit 59ee2a593090e7d53c97ceba63cbd300d1b9657e,
i.e., it has not been seen in any released versions.
|
|
* cg/docs-fixes:
Linkify applications listed under "See Also"
Fix minor typos in the documentation
|
|
Gcc for MIPS supports immediate atomic gets and sets, and also
supports a working __sync_synchronize() for gcc 4.2 and greater.
|
|
|
|
semanticts -> semantics
where -> were
ddl -> dll
NIF's -> NIFs
OS-dependant -> OS-dependent
|
|
* pg/fix-hipe-crash-in-gc_after_bif:
Fix call to erts_gc_after_bif_call in hipe glue
|
|
* mk/net-dragonfly-bsd-patches:
Remove unused variables
Use proper install method
Add support for DragonFly BSD
Add support for NetBSD
|
|
* ms/inet-bug-fixes:
inet: support retrieving MAC address on BSD
inet: fix getservbyname buffer overflow
inet: fix ifr_name buffer overflow
inet: null terminate ifr_name buffer
OTP-8816
|
|
R12B-0 changed the signature of erts_gc_after_bif_call and it now
takes 4 parameters instead of 2 in R11B-5. Yet, the glue code was not
updated accordingly. As a result, the function erts_gc_after_bif_call
was called with garbage and would randomly cause a crash later in the
garbage collector code.
The fix consists in passing NULL and 0 for the third and fourth
parameters, since there is no term to add to rootset, recovering the
behaviour of R11B-5
(see otp_src_R11B-5/erts/emulator/beam/erl_gc.c, line 314).
(Includes assembly language fixes and code style improvements
suggested by Mikael Pettersson.)
|
|
|
|
Also made the SEEALSO link at the bottom of erl_nif.xml more "erlangish".
|
|
The make_term_n function in nif_SUITE.c created resources that never
got released, creating valgrind memcheck Definitely Lost warnings.
|
|
The scheduler wakeup threshold is now possible to adjust at system boot.
For more information see the `+swt' command line argument of `erl'.
|
|
Lower the scheduler wakeup threshold since schedulers aren't spuriously
woken as before (since commit 59ee2a593090e7d53c97ceba63cbd300d1b9657e).
|
|
On systems supporting getaddrinfo(), support looking up the MAC
address from inet:ifget/2. The results have the same quirks as with
Linux: if the MAC address is longer than 6 bytes (e.g., fw0 under
Mac OS X), the address is truncated; if the interface does not have
a MAC address (e.g., lo0), an address consisting of 0's is returned.
|
|
Added erlang:system_info(build_type) which makes it
easier to chose drivers, NIF libraries, etc based
on build type of the runtime system.
|
|
* dgud/ssl-commit-example-certs:
Cleanup ssl configure parts
Remove cert building from Makefiles
Checkin example certs instead of generating them.
|
|
* rickard/cpu-info-testcase/OTP-8765:
Fix crash when calling erlang:system_info(update_cpu_info)
Add testcase for erlang:system_info(update_cpu_info)
|
|
* rani/sctp-sndrcvinfo/OTP-8795:
Fix xfer_active close expection for Solaris behaviour
Keep default #sctp_sndrcvinfo{} fields on gen_sctp:send/4
Fill in sinfo_assoc_id in struct sctp_sndrcvinfo for getopt()
Conflicts:
lib/kernel/test/gen_sctp_SUITE.erl
|
|
* rani/sctp-linger-bugfix/OTP-8726:
Fix SCTP linger option
|
|
* pg/fix-segfault-on-crash_dump-with-hipe:
Fix segmentation fault when dumping the crash log with hipe enabled and natively compiled modules
OTP-8801
|
|
* mp/fix-hipe-on_load_crash:
fix native code crash when calling unloaded module with on_load function
OTP-8799
|
|
* mp/robustify-hipe_bifs_get_hrvtime:
robustify hipe_bifs:get_hrvtime/0
OTP-8798
|
|
Calling erlang:system_info(update_cpu_info) on platforms where no
CPU topology was found could result in a crash if other CPU
information had changed. This bug was introduced in the 'dev'
branch before R14B (commit 1b273b618002d65159453fdfb9520a9476e4423a).
That is, the bug has never been seen in a released runtime system.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Use erts_(v)snprintf to ensure no buffer overruns in debug printouts.
Disallow everything except port and name requests from remote nodes.
Disallow kill command even from localhost if alive nodes exist.
-relaxed_command_check when starting epmd returns the possibility to
kill this epmd when nodes are alive (from localhost).
Disallow stop command completely except if -relaxed_command_check is given
when epmd was started.
Environment variable ERL_EPMD_RELAXED_COMMAND_CHECK can be set to always get
-relaxed_command_check.
|
|
|
|
|