summaryrefslogtreecommitdiff
path: root/lib/erl_interface/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | erl_call: Assume localhost if hostname resolution failsJohn Högberg2020-04-241-26/+47
| |/ / /
* | | | Fix ei_decode_iodata() illegal write and improve testcaseRickard Green2020-04-221-16/+41
|/ / /
* | | Add ei_decode_iodata()Rickard Green2020-04-172-0/+142
| | |
* | | Merge 'sverker/erl_interface/NetBSD-gethostbyname_r-fix'Sverker Eriksson2020-03-191-3/+3
|\ \ \
| * | | erl_interface: Fix NetBSD crash due to broken gethostbyname_rSverker Eriksson2020-03-091-3/+3
| | | | | | | | | | | | | | | | Probably nicer to fix this in config
* | | | erl_call: Add -R option for dynamic node nameSverker Eriksson2020-03-191-12/+18
| | | |
* | | | erl_interface: Add dynamic node nameSverker Eriksson2020-03-192-50/+109
| | | | | | | | | | | | | | | | | | | | | | | | by passing NULL as node name to ei_connect_xinit() ei_connect_xinit_ussi()
* | | | Merge branch 'maint'Rickard Green2020-03-1336-36/+36
|\ \ \ \ | |/ / / |/| / / | |/ / | | | * maint: Update copyright year
| * | Update copyright yearRickard Green2020-03-1339-39/+39
| | |
* | | Merge branch 'rickard/rm-vxworks/OTP-16329'Rickard Green2020-02-2424-650/+25
|\ \ \ | | | | | | | | | | | | | | | | * rickard/rm-vxworks/OTP-16329: Remove remaining VxWorks support
| * | | Remove remaining VxWorks supportRickard Green2020-02-2024-650/+25
| | | |
* | | | Merge again 'kjell/erl_interface/remove_deprected/OTP-16328'Sverker Eriksson2020-02-211-1/+1
|\ \ \ \ | |/ / / |/| | | | | | | | | | | * kjell/erl_interface/remove_deprected/OTP-16328: erl_interface: Fix broken make clean
| * | | erl_interface: Fix broken make cleanSverker Eriksson2020-02-211-1/+1
| | | |
* | | | Merge branch 'kjell/erl_interface/remove_deprected/OTP-16328'Sverker Eriksson2020-02-1930-6796/+58
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | * kjell/erl_interface/remove_deprected/OTP-16328: erl_interface: Remove module syntax for C functions in docs erl_interface: Fix broken doc links Remove erl_* functions from erl_interface etc
| * | | Remove erl_* functions from erl_interface etcKjell Winblad2020-01-1030-6796/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit: * Removes the erl_interface functions that were scheduled for removal before the OTP 23 release * Removes the old erl_interface library (i.e., liberl_interface.a and *not* libei.a) * Removes references to the removed functions in the documentation * Updates code examples to use the newer ei_* functions instead of the removed erl_* functions * Changes the prefix of the erl_global_* functions to ei_global and modifies these functions so that they work without the removed functions
* | | | Fix ERTS_SKIP_DEPENDDan Gudmundsson2020-01-241-1/+4
| | | | | | | | | | | | | | | | | | | | Makes one time compilation faster on windows, deps generation is slow.
* | | | Merge branch 'maint'Sverker Eriksson2020-01-201-1/+1
|\ \ \ \ | | |/ / | |/| |
| * | | ei_portio.h: avoid ODR violation of 'ei_default_socket_callbacks'Sergei Trofimovich2020-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Noticed as a build failure against fresh gcc-master: ``` LD otp/lib/erl_interface/bin/x86_64-unknown-linux-gnu/erl_call ld: otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(eirecv.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: multiple definition of `ei_default_socket_callbacks'; otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(ei_connect.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: first defined here ld: otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(send.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: multiple definition of `ei_default_socket_callbacks'; otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(ei_connect.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: first defined here ld: otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(send_reg.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: multiple definition of `ei_default_socket_callbacks'; otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(ei_connect.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: first defined here ld: otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(epmd_port.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: multiple definition of `ei_default_socket_callbacks'; otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(ei_connect.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: first defined here ld: otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(ei_portio.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: multiple definition of `ei_default_socket_callbacks'; otp/lib/erl_interface/obj/x86_64-unknown-linux-gnu/libei.a(ei_connect.o):otp/lib/erl_interface/src/misc/ei_portio.h:50: first defined here collect2: error: ld returned 1 exit status make[3]: *** [x86_64-unknown-linux-gnu/Makefile:669: otp/lib/erl_interface/bin/x86_64-unknown-linux-gnu/erl_call] Error 1 ``` The failure looks legitimate: `ei_default_socket_callbacks` is a struct defined in 'ei_portio.h' and in 'ei_portio.c'. The change flips 'ei_portio.h' definition to declaration. gcc-10 will change the default from -fcommon to fno-common: https://gcc.gnu.org/PR85678. The error also happens if CFLAGS=-fno-common passed explicitly. Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* | | | Merge 'sverker/dist-handshake/OTP-16229' into masterSverker Eriksson2020-01-143-114/+373
|\ \ \ \
| * | | | Improve distribution handshakeSverker Eriksson2020-01-143-110/+370
| | |/ / | |/| |
* | | | Extend erl_call with a new flag to access a node at HOSTNAME:PORTKjell Winblad2019-12-191-23/+85
| | | | | | | | | | | | | | | | | | | | | | | | This commit adds the flag -address to the erl_call program. This flag makes it possible for the user to use erl_call to interact with a node even if no EPMD instance is running on the node's host.
* | | | Add functions to connect to a port to the erl_interface APIKjell Winblad2019-12-191-72/+138
|/ / / | | | | | | | | | | | | | | | | | | This commit adds a family of functions to the erl_interface API that make it possible to connect to a node without asking an EPMD instance for a port. The new functions are useful in environments where EPMD is not available.
* | | Merge branch 'sverker/erl-interface-remove-dead-code'Sverker Eriksson2019-11-294-388/+0
|\ \ \ | | | | | | | | | | | | | | | | * sverker/erl-interface-remove-dead-code: erl_interface: Remove dead code in not_used directory
| * | | erl_interface: Remove dead code in not_used directorySverker Eriksson2019-11-274-388/+0
| | | |
* | | | Merge branch 'maint'Sverker Eriksson2019-11-292-10/+18
|\ \ \ \ | |/ / / |/| / / | |/ /
| * | erl_interface: Fix more ussi bugsSverker Eriksson2019-11-271-9/+17
| | | | | | | | | | | | | | | | | | ei_accept must accept unknown listen fd. mutex implementation only worked for first fd.
| * | erl_interface: Fix user supplied socket for windowsSverker Eriksson2019-11-211-1/+1
| | | | | | | | | | | | and others without gcc atomics.
* | | Speedup depend.mk creationDan Gudmundsson2019-11-121-16/+11
| | | | | | | | | | | | | | | | | | | | | | | | Run the dependency generation once and sed several times, since it is only the sed scripts the changes between runs. Speedup most notable on windows where the dependency generation takes a lot of time.
* | | Refactor win32 configure handlingDan Gudmundsson2019-11-121-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are a lot of MIXED_* options and adding a another mode for WSL will make things worse, thus a cleanup is done first. This commit consolidates the handling for the Makefiles, src and scripts and moves the funcionality into similar named wrapper-scripts instead. Path conversion is done with a script 'w32_path.sh' and registry lookups with 'reg_query.sh'. Path to the wrapper scripts is setup with: otp_build env_win32 <arch>.
* | | Merge branch 'maint'Björn Gustavsson2019-08-281-0/+2
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint: scripts/build-otp: Enable compile server for Travis/Jenkins builds Don't use the compile server for PGO Teach erlc to use the compile server Update primary bootstrap Add erl_compiler_server Refactor the erl_compile module Clarify that digraphs are implemented using ETS tables
| * | Teach erlc to use the compile serverBjörn Gustavsson2019-08-261-0/+2
| | |
* | | Merge branch 'maint'Sverker Eriksson2019-08-191-1/+4
|\ \ \ | |/ /
| * | Merge branch 'sverker/erl_interface/ei_decode_fun-fix/OTP-15996' into maintSverker Eriksson2019-08-191-1/+4
| |\ \ | | | | | | | | | | | | | | | | * sverker/erl_interface/ei_decode_fun-fix/OTP-15996: erl_interface: Fix bug in ei_decode_fun for very old encoding
| | * | erl_interface: Fix bug in ei_decode_fun for very old encodingSverker Eriksson2019-08-131-1/+4
| | | | | | | | | | | | | | | | Found by valgrind test runs.
* | | | Merge branch 'sverker/re-enable-big-creation/OTP-15603'Sverker Eriksson2019-07-017-40/+32
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sverker/re-enable-big-creation/OTP-15603: doc: Add links between dist flags and external tags (DTD updated) erts: Fix docs for new pid,port,ref external tags erts: Document new EPMD response ALIVE2_X_RESP erl_interface: Support 32-bit creation local cnode jinterface: Remove old encoding of pid,port,refs epmd: Support 32-bit creation values in local node erl_interface: Remove old encoding of pid,port,refs erts: Remove old encoding of pids, ports and refs erts: Make DFLAG_BIG_CREATION mandatory
| * | | | erl_interface: Support 32-bit creation local cnodeSverker Eriksson2019-05-144-17/+23
| | | | | | | | | | | | | | | | | | | | This reverts revert-commit f824686c3c519ab00582bb1f854fdfda5e4b1240.
| * | | | erl_interface: Remove old encoding of pid,port,refsSverker Eriksson2019-05-143-23/+9
| | |/ / | |/| | | | | | | | | | | | | | | | | | with tiny creation. This reverts revert-commit ef44ba53defa0002ca6b12a786bd2d3555b0bb7b.
* | | | Merge branch 'maint'Sverker Eriksson2019-06-191-12/+19
|\ \ \ \ | | |/ / | |/| |
| * | | erl_interface: Fix bugs in ei_print_term for binary/bitstringSverker Eriksson2019-06-111-12/+19
| | | |
* | | | Merge pull request #2110 from NattyNarwhal/aix-fixes/OTP-15866Lukas Larsson2019-06-192-2/+12
|\ \ \ \ | |/ / / |/| | | Wake AIX up from coma
| * | | Attempt at fixing AIX while keeping API compatibilityCalvin2019-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | erl_interface has a function in a struct, and AIX headers, when you use C instead of C++, pollute the global namespace with definitions that override socket functions, and end up clobbering names of things Erlang/OTP uses. The new socket interface of R22 was one of the victims. I had previously tied to fix it for erl_interface, but the change broke API public surface. What this does is replace the name with a define, that defines to the same name on non-AIX, but uses a "mangled" name on AIX instead. This means internal uses of this function in the struct need to use the preprocessor define instead of the "normal" name, and likewise external users too, but those can be dealt with one-at-a-time on AIX instead of breaking everyone else.
| * | | fix names conflicting with AIX system namesCalvin2019-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | quick and dirty renaming. the reason why is because AIX has some network function names prefixed with "n" for spec compliant versions, and the unprefixed versions are just redfined or are wrappers. as such, rename the erts/ei functions with these names. fixes compile on IBM i 7.3
| * | | Don't use gethostbyname_r on AIXCalvin Buckley2019-05-291-1/+11
| |/ / | | | | | | | | | Patch adapated from Bull's R15 SRPM.
* | | Teach ei_print_term() to print funsBjörn Gustavsson2019-05-291-0/+18
| | |
* | | Teach ei_print_term() to print mapsBjörn Gustavsson2019-05-291-1/+18
| | |
* | | Correct decoding of old funs (FUN_EXT)Björn Gustavsson2019-05-291-4/+6
| | | | | | | | | | | | | | | If the environment is empty, don't access the free_vars pointer and don't allocate a zero-size buffer. Better safe than sorry.
* | | Correct decoding of external funsBjörn Gustavsson2019-05-212-0/+4
|/ /
* | Merge branch 'maint'Rickard Green2019-05-061-2/+10
|\ \ | |/ | | | | | | * maint: Increase max number of node name characters to 256
| * Increase max number of node name characters to 256Rickard Green2019-04-301-2/+10
| |
| * Merge branch 'lukas/erl_interface/depend-fix/OTP-15757' into maint-21Erlang/OTP2019-04-122-1149/+18
| |\ | | | | | | | | | | | | * lukas/erl_interface/depend-fix/OTP-15757: erl_interface: Generate dependencies at compile time