Age | Commit message (Collapse) | Author |
|
|
|
|
|
This reverts commit 6454221ad87d1cd8fc877b424db3c4a8e9835577.
|
|
|
|
You previously had to initialize ei via erl_init() which
implied that you were forced to link against the erl_interface
even when not using it (besides initializing ei).
|
|
|
|
|
|
|
|
* sverker/erl_interface/valgrind/OTP-15171:
erl_interface: Fix bug in ei_*receive_msg* functions
erl_interface: Seal test case memory leaks
erl_interface: Initialize erl_errno to zero
erts: Remove use of VALGRIND_PRINTF_XML
erl_interface: Add valgrind ability for test port programs
erts: Fix benign bug in cerl for valgrind
erts: Fix buggy calls to erts_sys_explicit_8bit_getenv
|
|
|
|
into maint
|
|
by not using unsafe ei_gethostbyname.
|
|
* maint-20:
Updated OTP version
Prepare release
kernel: Fix tick count bug when pending writes
kernel: Send tick to hidden node even if pending writes
ic: Fix buffer overrun bug in oe_ei_encode_atom
erl_interface: Fix simultaneous connection setup
|
|
by also accepting status "ok_simultaneous".
|
|
|
|
when ei_gethostbyname_r returns ERANGE.
|
|
|
|
if the hostname is 64 characters on a linux system.
|
|
|
|
the same as erlexec do to set -home command argument
which is used to look for .erlang.cookie.
|
|
by separating WIN32 and other implementation more.
|
|
* henrik/update-copyrightyear:
update copyright-year
|
|
to let future nodes know that we can handle
NEW_PID_EXT, NEW_PORT_EXT and NEWER_REFERENCE_EXT.
|
|
|
|
192c4a80c broke the build on at least Debian/Hurd and Debian/kFreeBSD,
because it's not linux but still using glibc. To fix it, test for
__GLIBC__ in addition to __linux__.
|
|
This reverts commit 192c4a80c7d6fe9949aecb864901c4a3d9549f36.
This breaks on Debian/Hurd, Debian/kFreeBSD, and possibly other
platforms as well. Will be solved differently in a follow-up commit.
|
|
To fix conditional selection of the actually available gethostbyname_r
and gethostbyaddr_r, we replace __GLIBC__ with __linux__. @zenhack
tested this to work with gcc and clang targeting glibc, uclibc, musl,
and bionic.
The proper way to check this is through configure.in.
|
|
|
|
|
|
Enable a cross compile Erlang/OTP platform to Android or Raspberry PI
using Android NDK. Port emulator and core application to support target
HW platform. Exclude any add-on services required for OTP platform deployment
into target hardware due to device fragmentation and jail-break requirements.
* fix erts/emulator/beam/sys.h
Disable redefinition of __noreturn macro
* port erts/emulator/sys/unix/erl_child_setup.c
Use techniques proposed by https://code.google.com/p/erlang4android to
access system properties
* fix erts/emulator/sys/unix/erl_unix_sys_ddll.c
The static linking of emulator cannot find dlerror(), dlopen() symbols
* port erts/emulator/sys/unix/sys.c
make path to shell configurable at build time
* port erts/etc/common/Makefile.in
disable librt for *-linux-androideabi
* port erts/lib_src/pthread/ethread.c
Use techniques proposed by https://code.google.com/p/erlang4android to
disable emulator crash if kernel threads are on. Replace unreliable
pthread_sigmask() by sigprocmask()
* port lib/erl_interface/src/connect/ei_connect.c
Disable call to undefined gethostid()
* port lib/erl_interface/src/connect/ei_resolve.c
Use gethostbyname_r() on Android platform
|
|
This is just a preparation to allow detection of older nodes
that do not understand maps (R16 and older).
|
|
|
|
These are not needed when not on VXWORKS or without _REENTRANT.
connect/ei_resolve.c:302:24: warning: unused function 'my_gethostbyname_r' [-Wunused-function]
static struct hostent *my_gethostbyname_r(const char *name,
^
connect/ei_resolve.c:360:24: warning: unused function 'my_gethostbyaddr_r' [-Wunused-function]
static struct hostent *my_gethostbyaddr_r(const char *addr,
^
|
|
Why we are assigning a pointer to pointer to char to a pointer to char
baffles me. The warning is:
connect/ei_resolve.c:229:11: warning: incompatible pointer types assigning to 'char *' from 'char **'; dereference
with * [-Wincompatible-pointer-types]
*pptr = src_aliases;
^ ~~~~~~~~~~~
*
|
|
|
|
in order to be backward compatible with user code that
accesses the members of erlang_pid and friend.
The documentation does not mention the content of these structs,
but we have example code that does. So the safe way it the revert
the node_org_enc field (added in R16A) and instead determine in
runtime which atom encoding to use depending on if the node atom
contains unicode (>255) characters or not.
|
|
|
|
|
|
|
|
Changed to EI_ALIGNBYTES
|
|
|
|
* cg/fix-sizeof-array-arg:
Fix using sizeof() for array given as function argument
OTP-9151
|
|
|
|
When using the sizeof() operator for an array given as function argument it
returns the size of the pointer.
In this case, the affected function hex(char digest[16], char buff[33]) will
just print 4 or 8 byte instead of the full length of 16 bytes, on 32bit and
64bit systems respectively.
|
|
* vb/ei-exts:
Fix testcases erl_global_whereis, erl_global_names
Fix wrong erl_compare_ext result comparing lists
Correct erl_global{register, unregister} functions
Add PID (~p) type parameters to ei_format
Add char (~c) type parameters to ei_format
OTP-9015
Conflicts:
lib/erl_interface/include/ei.h
|
|
|
|
C node needs DFLAG_DIST_MONITOR flag set when connecting,
and support for processing monitoring start/end messages
received from counterpart, to make global registration
actually work.
|
|
|
|
|
|
* mk/net-dragonfly-bsd-patches:
Remove unused variables
Use proper install method
Add support for DragonFly BSD
Add support for NetBSD
|