diff options
author | Sverker Eriksson <sverker@erlang.org> | 2016-04-07 20:38:55 +0200 |
---|---|---|
committer | Sverker Eriksson <sverker@erlang.org> | 2016-04-07 20:38:55 +0200 |
commit | e4b8b9be39601b1c79dfd5d8e807ae4c404b6935 (patch) | |
tree | 7c6988f656aee95f639ac8a6293328b333f1f3d2 /lib | |
parent | 539ce190ba8f8842c24b17f3257c44cd850d7e01 (diff) | |
download | otp-e4b8b9be39601b1c79dfd5d8e807ae4c404b6935.tar.gz otp-e4b8b9be39601b1c79dfd5d8e807ae4c404b6935.tar.bz2 otp-e4b8b9be39601b1c79dfd5d8e807ae4c404b6935.zip |
erts: Add DFLAG_BIG_CREATION
to let future nodes know that we can handle
NEW_PID_EXT, NEW_PORT_EXT and NEWER_REFERENCE_EXT.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/erl_interface/src/connect/ei_connect.c | 3 | ||||
-rw-r--r-- | lib/erl_interface/src/connect/ei_connect_int.h | 1 | ||||
-rw-r--r-- | lib/jinterface/java_src/com/ericsson/otp/erlang/AbstractNode.java | 4 | ||||
-rw-r--r-- | lib/kernel/include/dist.hrl | 1 | ||||
-rw-r--r-- | lib/kernel/src/dist_util.erl | 3 |
5 files changed, 9 insertions, 3 deletions
diff --git a/lib/erl_interface/src/connect/ei_connect.c b/lib/erl_interface/src/connect/ei_connect.c index 7b1b2810bb..f2531de5bd 100644 --- a/lib/erl_interface/src/connect/ei_connect.c +++ b/lib/erl_interface/src/connect/ei_connect.c @@ -1342,7 +1342,8 @@ static int send_name_or_challenge(int fd, char *nodename, | DFLAG_NEW_FLOATS | DFLAG_SMALL_ATOM_TAGS | DFLAG_UTF8_ATOMS - | DFLAG_MAP_TAG)); + | DFLAG_MAP_TAG + | DFLAG_BIG_CREATION)); if (f_chall) put32be(s, challenge); memcpy(s, nodename, strlen(nodename)); diff --git a/lib/erl_interface/src/connect/ei_connect_int.h b/lib/erl_interface/src/connect/ei_connect_int.h index efb6719a1d..12e089f60e 100644 --- a/lib/erl_interface/src/connect/ei_connect_int.h +++ b/lib/erl_interface/src/connect/ei_connect_int.h @@ -106,6 +106,7 @@ extern int h_errno; #define DFLAG_SMALL_ATOM_TAGS 0x4000 #define DFLAG_UTF8_ATOMS 0x10000 #define DFLAG_MAP_TAG 0x20000 +#define DFLAG_BIG_CREATION 0x40000 ei_cnode *ei_fd_to_cnode(int fd); int ei_distversion(int fd); diff --git a/lib/jinterface/java_src/com/ericsson/otp/erlang/AbstractNode.java b/lib/jinterface/java_src/com/ericsson/otp/erlang/AbstractNode.java index d7ba88288f..0072c5939a 100644 --- a/lib/jinterface/java_src/com/ericsson/otp/erlang/AbstractNode.java +++ b/lib/jinterface/java_src/com/ericsson/otp/erlang/AbstractNode.java @@ -95,6 +95,7 @@ public class AbstractNode implements OtpTransportFactory { static final int dFlagUnicodeIo = 0x1000; static final int dFlagUtf8Atoms = 0x10000; static final int dFlagMapTag = 0x20000; + static final int dFlagBigCreation = 0x40000; int ntype = NTYPE_R6; int proto = 0; // tcp/ip @@ -103,7 +104,8 @@ public class AbstractNode implements OtpTransportFactory { int creation = 0; int flags = dFlagExtendedReferences | dFlagExtendedPidsPorts | dFlagBitBinaries | dFlagNewFloats | dFlagFunTags - | dflagNewFunTags | dFlagUtf8Atoms | dFlagMapTag; + | dflagNewFunTags | dFlagUtf8Atoms | dFlagMapTag + | dFlagBigCreation; /* initialize hostname and default cookie */ static { diff --git a/lib/kernel/include/dist.hrl b/lib/kernel/include/dist.hrl index 47d9459a19..412ea58e65 100644 --- a/lib/kernel/include/dist.hrl +++ b/lib/kernel/include/dist.hrl @@ -39,3 +39,4 @@ -define(DFLAG_SMALL_ATOM_TAGS, 16#4000). -define(DFLAG_UTF8_ATOMS, 16#10000). -define(DFLAG_MAP_TAG, 16#20000). +-define(DFLAG_BIG_CREATION, 16#40000). diff --git a/lib/kernel/src/dist_util.erl b/lib/kernel/src/dist_util.erl index e3817fcce5..36b9a22493 100644 --- a/lib/kernel/src/dist_util.erl +++ b/lib/kernel/src/dist_util.erl @@ -118,7 +118,8 @@ make_this_flags(RequestType, OtherNode) -> ?DFLAG_DIST_HDR_ATOM_CACHE bor ?DFLAG_SMALL_ATOM_TAGS bor ?DFLAG_UTF8_ATOMS bor - ?DFLAG_MAP_TAG). + ?DFLAG_MAP_TAG bor + ?DFLAG_BIG_CREATION). handshake_other_started(#hs_data{request_type=ReqType}=HSData0) -> {PreOtherFlags,Node,Version} = recv_name(HSData0), |