aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/src/dist_util.erl
AgeCommit message (Collapse)Author
2019-02-22erts: Implement fragmentation of distrubution messagesLukas Larsson
2019-02-21erts: Move reason in dist messages to payloadLukas Larsson
The dist messages EXIT, EXIT2 and MONITOR_DOWN have been updated with new versions that send the reason term as part of the payload of the message instead of as part of the control message. This allows the decode of the reason to be done by the receiving process instead of the dist entry which in turn makes it possible for multiple decodes to be done in parallel. This change is done in order to make it easier to fragment the potentially large payload of EXIT, EXIT2 and MONITOR_DOWN into multiple distribution messages. OTP-15611
2018-04-26Allow check for node nameRaimo Niskanen
2018-04-23Open for host and node allow listRaimo Niskanen
2018-04-19Improve node allowed checkRaimo Niskanen
* Move the node name check earlier * Check while still a list * Export allowed check function * Make allowed check function handle atom and list mixes
2018-03-23Lift the type restrictions on seq_trace token labelsJohn Högberg
OTP-14899
2018-03-13Merge branch 'sverker/send-tick/OTP-14681'Sverker Eriksson
* sverker/send-tick/OTP-14681: kernel: Fix and improve send_tick logic
2018-03-02erts,kernel: Add dist_util:strict_order_flags/0Sverker Eriksson
to replace DFLAGS_STRICT_ORDER_DELIVERY and remove that compile time dependency.
2018-03-02kernel: Remove DFLAGS_ALL from dist.hrlSverker Eriksson
and remove use in dist_util:check_mandatory
2018-03-02kernel: Simplify dist flags handshake mergingSverker Eriksson
to a simple 'band' operation into ChosenFlags and no need to remember old 'this_flags' and 'other_flags'.
2018-03-02erts,kernel: Add erts_internal:get_dflags/0Sverker Eriksson
for kernel to ask erts about distribution flags and keep this info in one place.
2018-03-02kernel: Remove redundant codeSverker Eriksson
No need to clear them as they cannot be set.
2018-02-05kernel: Do not call erlang:get_stacktrace()Hans Bolinder
2017-11-15erts: Make DFLAGS_NEW_FUN_TAGS mandatorySverker Eriksson
and remove ugly encoding fallback as {fun, ...} DFLAGS_NEW_FUN_TAGS has been supported by vm/erl_interface/jinterface since R13 or even older. Renamed test case obsolete_funs to term2bin_tuple_fallbacks and removed test for {fun,...} fallback and added missing test for bitstring fallback {Binary, Bits}.
2017-10-12kernel: Fix and improve send_tick logicSverker Eriksson
Problem 1: Tick was not sent to hidden when pending sends. Don't hidden need the tick in order to reply? Problem 2: Written packets (#tick.write) was increased even when tick was suppressed due to pending sends. Code rewritten to handle outgoing and incoming separate.
2017-08-28Introduce sender in distributed signals and dflag configurationRickard Green
2017-08-28Support for distribution controller processesRickard Green
2017-05-23kernel: Add early reject of invalid node namesLukas Larsson
2017-05-04Update copyright yearRaimo Niskanen
2017-03-13kernel: Make DFLAG_UTF8_ATOMS mandatorySverker Eriksson
2017-03-13kernel: Rewrite distribution flag verificationSverker Eriksson
2016-08-15kernel: Accept and convert old hs_data recordSverker Eriksson
2016-08-15kernel: Add net_kernel:setopts/2 and getopts/2Sverker Eriksson
2016-08-11kernel: Refactor dist_util:con_loopSverker Eriksson
by separating the constant values into tuple ConData. and that exposed the fact that TcpAddress and MyNode where not used.
2016-04-25Error reasons for more distribution errorsMagnus Henoch
Add descriptive shutdown reasons when an incoming distribution connection is rejected because it is not on the "allowed" list or because it has an incorrect cookie. These error reasons can be seen after calling net_kernel:verbose(1). Distinguishing these failures is valuable, because the log message printed is otherwise identical.
2016-04-13Merge branch 'henrik/update-copyrightyear'Henrik Nord
* henrik/update-copyrightyear: update copyright-year
2016-04-07erts: Add DFLAG_BIG_CREATIONSverker Eriksson
to let future nodes know that we can handle NEW_PID_EXT, NEW_PORT_EXT and NEWER_REFERENCE_EXT.
2016-03-15update copyright-yearHenrik Nord
2016-03-15Keep error reasons for some common distribution errorsDiana Corbacho
These error reasons can be seen in the logs after calling net_kernel:verbose(1).
2015-06-18Change license text to APLv2Bruce Yinhe
2015-03-20Replace usage of erlang:now() with usage of new APIRickard Green
2014-03-14erts: Add distribution capability flag for maps DFLAG_MAP_TAGSverker Eriksson
This is just a preparation to allow detection of older nodes that do not understand maps (R16 and older).
2013-01-25Update copyright yearsBjörn-Egil Dahlberg
2013-01-23Merge branch 'sverk/r16/utf8-atoms'Sverker Eriksson
* sverk/r16/utf8-atoms: erl_interface: Fix bug when transcoding atoms from and to UTF8 erl_interface: Changed erlang_char_encoding interface erts: Testcase doing unicode atom printout with ~w erl_interface: even more utf8 atom stuff erts: Fix bug in analyze_utf8 causing faulty latin1 detection Add UTF-8 node name support for epmd workaround... Fix merge conflict with hasse UTF-8 atom documentation test case erl_interface: utf8 atoms continued Add utf8 atom distribution test cases atom fixes for NIFs and atom_to_binary UTF-8 support for distribution Implement UTF-8 atom support for jinterface erl_interface: Enable decode of unicode atoms stdlib: Fix printing of unicode atoms erts: Change internal representation of atoms to utf8 erts: Refactor rename DFLAG(S)_INTERNAL_TAGS for conformity Conflicts: erts/emulator/beam/io.c OTP-10753
2013-01-16UTF-8 support for distributionRickard Green
2012-12-13Do not return wrong terms unnecessarilyKostis Sagonas
2010-06-01Merge branch 'bg/dist_utils' into devErlang/OTP
* bg/dist_utils: dist_utils: Eliminate crash when list_to_existing_atom/1 fails
2010-06-01dist_utils: Eliminate crash when list_to_existing_atom/1 failsBjörn Gustavsson
In the following scenario list_to_existing_atom/1 may crash during handshake: Start a node in one window: erl -sname adam@localhost Start another node in another window: erl -sname bertil In this node, ping the first node (use the actual hostname in the command): net:ping(adam@hostname). There will be an error report similar to: =ERROR REPORT==== 27-May-2010::15:03:14 === Error in process <0.40.0> on node 'bertil@hostname' with exit value: {badarg,[{erlang,list_to_existing_atom, ["adam@localhost"]},{dist_util,recv_challenge,1},{dist_util,handshake_we_started,1}]} Eliminate the crash and the error report by catching the call to list_to_existing_atom/1 and do a clean shutdown if it fails.
2009-11-20The R13B03 release.OTP_R13B03Erlang/OTP