Compare commits

...
Sign in to create a new pull request.

5 commits

Author SHA1 Message Date
Peter Lemenkov
49876e747a Fix EPMD port assignment in IPv6 environment
See this PR for the details:

* https://github.com/erlang/otp/pull/erlang/otp/pull/1487

Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2017-06-16 17:50:48 +03:00
Peter Lemenkov
38c292c393 Fix DNS resolution if IPv4 is unavailable
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2017-06-14 16:51:02 +03:00
Peter Lemenkov
54d07c1552 CVE-2016-10253
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2017-03-21 19:33:51 +03:00
Peter Lemenkov
900c151e1e Ver. 18.3.4.5
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2017-02-02 14:57:37 +03:00
Peter Lemenkov
65b5d88582 Ver. 18.3.4.4
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2016-08-16 15:49:31 +03:00
19 changed files with 630 additions and 101 deletions

2
.gitignore vendored
View file

@ -65,3 +65,5 @@ otp_src_R14A.tar.gz
/otp-OTP-18.3.4.tar.gz
/otp-OTP-18.3.4.1.tar.gz
/otp-OTP-18.3.4.2.tar.gz
/otp-OTP-18.3.4.4.tar.gz
/otp-OTP-18.3.4.5.tar.gz

View file

@ -68,8 +68,8 @@
Name: erlang
Version: 18.3.4.2
Release: 1%{?dist}
Version: 18.3.4.5
Release: 4%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
@ -134,6 +134,21 @@ Patch10: otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch
# Fedora specific patch
# Respect -proto_dist switch while connection to EPMD
Patch11: otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch
# Fedora specific patch
# erts: Fix correct link flags for hipe_mkliterals
Patch12: otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch
# Fedora specific patch
# erts: Disable -fPIE for HiPE on x86_64
Patch13: otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch
# Fedora specific patch
# Fix CVE-2016-10253
Patch14: otp-0014-Fix-CVE-2016-10253.patch
# Fedora specific patch
# Make inet:gethostbyname respect resolver option `inet6`
Patch15: otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch
# Fedora specific patch
# Fix erl_epmd:port_please when using IPv6
Patch16: otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch
# end of autogenerated patch tag list
BuildRequires: flex
@ -1033,6 +1048,11 @@ Erlang mode for XEmacs (source lisp files).
%patch9 -p1 -b .Don_t_send_unasked_for_systemd_notifications
%patch10 -p1 -b .Fix_decoding_of_LLONG_MIN_in_erl_decode
%patch11 -p1 -b .Respect_proto_dist_switch_while_connection_to_EPMD
%patch12 -p1 -b .erts_Fix_correct_link_flags_for_hipe_mkliterals
%patch13 -p1 -b .erts_Disable_fPIE_for_HiPE_on_x86_64
%patch14 -p1 -b .Fix_CVE_2016_10253
%patch15 -p1 -b .Make_inet_gethostbyname_respect_resolver_option_inet
%patch16 -p1 -b .Fix_erl_epmd_port_please_when_using_IPv6
# end of autogenerated prep patch list
# FIXME we should come up with a better solution
@ -2453,6 +2473,21 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
* Fri Jun 16 2017 Peter Lemenkov <lemenkov@gmail.com> - 18.3.4.5-4
- Fix EPMD port assignment in IPv6 env. (GH#1487)
* Wed Jun 14 2017 Peter Lemenkov <lemenkov@gmail.com> - 18.3.4.5-3
- Fix DNS resolution if IPv4 is unavailable
* Tue Mar 21 2017 Peter Lemenkov <lemenkov@gmail.com> - 18.3.4.5-2
- Fix for CVE-2016-10253
* Thu Feb 2 2017 Peter Lemenkov <lemenkov@gmail.com> - 18.3.4.5-1
- Ver. 18.3.4.5
* Tue Aug 16 2016 Peter Lemenkov <lemenkov@gmail.com> - 18.3.4.4-1
- Ver. 18.3.4.4
* Tue Jul 26 2016 Peter Lemenkov <lemenkov@gmail.com> - 18.3.4.2-1
- Ver. 18.3.4.2

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Do not format man-pages and do not install miscellaneous
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/erts/etc/common/Makefile.in b/erts/etc/common/Makefile.in
index 8e55fa7..9512faa 100644
index 8e55fa78c9..9512faa06e 100644
--- a/erts/etc/common/Makefile.in
+++ b/erts/etc/common/Makefile.in
@@ -551,10 +551,6 @@ endif
@ -21,7 +21,7 @@ index 8e55fa7..9512faa 100644
$(INSTALL_DIR) "$(RELEASE_PATH)/erts-$(VSN)/src"
$(INSTALL_DATA) $(INSTALL_SRC) "$(RELEASE_PATH)/erts-$(VSN)/src"
diff --git a/erts/etc/unix/Install.src b/erts/etc/unix/Install.src
index 6634ae3..fa18956 100644
index 6634ae31d3..fa1895633e 100644
--- a/erts/etc/unix/Install.src
+++ b/erts/etc/unix/Install.src
@@ -141,14 +141,5 @@ cp -p ../releases/%I_SYSTEM_VSN%/start_*.boot .

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Remove rpath
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in
index e66c0ca..574cdf5 100644
index e66c0ca916..574cdf5721 100644
--- a/lib/crypto/c_src/Makefile.in
+++ b/lib/crypto/c_src/Makefile.in
@@ -90,7 +90,7 @@ endif
@ -18,7 +18,7 @@ index e66c0ca..574cdf5 100644
EXTRA_FLAGS = -DHAVE_DYNAMIC_CRYPTO_LIB
else
diff --git a/lib/crypto/priv/Makefile b/lib/crypto/priv/Makefile
index ff9d3e1..d3aba77 100644
index ff9d3e1dc9..d3aba77808 100644
--- a/lib/crypto/priv/Makefile
+++ b/lib/crypto/priv/Makefile
@@ -61,7 +61,7 @@ OBJS = $(OBJDIR)/crypto.o

View file

@ -14,7 +14,7 @@ https://bugzilla.redhat.com/818419
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/asn1/c_src/Makefile b/lib/asn1/c_src/Makefile
index 2b72e1a..0522562 100644
index 2b72e1a214..0522562a1e 100644
--- a/lib/asn1/c_src/Makefile
+++ b/lib/asn1/c_src/Makefile
@@ -143,8 +143,6 @@ release_spec: opt
@ -27,7 +27,7 @@ index 2b72e1a..0522562 100644
release_docs_spec:
diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in
index 574cdf5..428c316 100644
index 574cdf5721..428c3163f5 100644
--- a/lib/crypto/c_src/Makefile.in
+++ b/lib/crypto/c_src/Makefile.in
@@ -200,14 +200,10 @@ docs:
@ -46,7 +46,7 @@ index 574cdf5..428c316 100644
endif
endif
diff --git a/lib/erl_interface/src/Makefile.in b/lib/erl_interface/src/Makefile.in
index 777d709..57917ae 100644
index 777d709b1e..57917ae7ee 100644
--- a/lib/erl_interface/src/Makefile.in
+++ b/lib/erl_interface/src/Makefile.in
@@ -905,14 +905,14 @@ ifneq ($(EXE_TARGETS),)
@ -73,7 +73,7 @@ index 777d709..57917ae 100644
release_docs:
diff --git a/lib/ic/c_src/Makefile.in b/lib/ic/c_src/Makefile.in
index b9f92a0..9612f24 100644
index b9f92a0925..9612f24f93 100644
--- a/lib/ic/c_src/Makefile.in
+++ b/lib/ic/c_src/Makefile.in
@@ -145,12 +145,10 @@ $(OBJDIR)/%.o: %.c
@ -90,7 +90,7 @@ index b9f92a0..9612f24 100644
$(INSTALL_DATA) $(LIBRARY) "$(RELSYSDIR)/priv/lib"
$(INSTALL_DATA) $(IDL_FILES) $(H_FILES) "$(RELEASE_PATH)/usr/include"
diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in
index 045b6d8..39be02a 100644
index 045b6d871a..39be02ad5e 100644
--- a/lib/megaco/src/flex/Makefile.in
+++ b/lib/megaco/src/flex/Makefile.in
@@ -271,7 +271,7 @@ release_spec: opt
@ -103,7 +103,7 @@ index 045b6d8..39be02a 100644
endif
diff --git a/lib/odbc/c_src/Makefile.in b/lib/odbc/c_src/Makefile.in
index 685eb5d..6c8a432 100644
index 685eb5d150..6c8a432fb0 100644
--- a/lib/odbc/c_src/Makefile.in
+++ b/lib/odbc/c_src/Makefile.in
@@ -129,11 +129,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -119,7 +119,7 @@ index 685eb5d..6c8a432 100644
endif
diff --git a/lib/os_mon/c_src/Makefile.in b/lib/os_mon/c_src/Makefile.in
index e9fc5f4..ac9fb73 100644
index e9fc5f4139..ac9fb73abb 100644
--- a/lib/os_mon/c_src/Makefile.in
+++ b/lib/os_mon/c_src/Makefile.in
@@ -126,8 +126,6 @@ $(OBJDIR)/memsup.o: memsup.h
@ -132,7 +132,7 @@ index e9fc5f4..ac9fb73 100644
$(INSTALL_PROGRAM) $(TARGET_FILES) "$(RELSYSDIR)/priv/bin"
diff --git a/lib/runtime_tools/c_src/Makefile.in b/lib/runtime_tools/c_src/Makefile.in
index 448b8c6..860d504 100644
index 448b8c62c2..860d5040b2 100644
--- a/lib/runtime_tools/c_src/Makefile.in
+++ b/lib/runtime_tools/c_src/Makefile.in
@@ -157,10 +157,8 @@ docs:
@ -147,7 +147,7 @@ index 448b8c6..860d504 100644
endif
diff --git a/lib/tools/c_src/Makefile.in b/lib/tools/c_src/Makefile.in
index 66bba22..eea37fc 100644
index 66bba229f6..eea37fcab6 100644
--- a/lib/tools/c_src/Makefile.in
+++ b/lib/tools/c_src/Makefile.in
@@ -198,8 +198,6 @@ include ../vsn.mk

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Do not install Java sources
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/ic/java_src/com/ericsson/otp/ic/Makefile b/lib/ic/java_src/com/ericsson/otp/ic/Makefile
index d9100cf..6886c71 100644
index d9100cf267..6886c7132d 100644
--- a/lib/ic/java_src/com/ericsson/otp/ic/Makefile
+++ b/lib/ic/java_src/com/ericsson/otp/ic/Makefile
@@ -113,8 +113,6 @@ docs:
@ -18,7 +18,7 @@ index d9100cf..6886c71 100644
$(INSTALL_DATA) $(JAVA_DEST_ROOT)$(JARFILE) "$(RELSYSDIR)/priv"
diff --git a/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile b/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile
index 1c8364e..34b64a8 100644
index 1c8364e951..34b64a8ed8 100644
--- a/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile
+++ b/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile
@@ -120,8 +120,6 @@ release release_docs release_tests release_html:

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Do not install nteventlog and related doc-files on non-win32
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/os_mon/doc/src/Makefile b/lib/os_mon/doc/src/Makefile
index 0c5acd9..5f8f1e3 100644
index 0c5acd9740..5f8f1e3920 100644
--- a/lib/os_mon/doc/src/Makefile
+++ b/lib/os_mon/doc/src/Makefile
@@ -36,12 +36,17 @@ RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN)
@ -29,7 +29,7 @@ index 0c5acd9..5f8f1e3 100644
XML_REF6_FILES = os_mon_app.xml
diff --git a/lib/os_mon/src/Makefile b/lib/os_mon/src/Makefile
index 9aa068c..1003d24 100644
index 9aa068cb91..1003d24be9 100644
--- a/lib/os_mon/src/Makefile
+++ b/lib/os_mon/src/Makefile
@@ -34,8 +34,13 @@ RELSYSDIR = $(RELEASE_PATH)/lib/os_mon-$(VSN)

View file

@ -8,7 +8,7 @@ Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
Signed-off-by: Hans Ulrich Niedermann <hun@n-dimensional.de>
diff --git a/erts/preloaded/src/Makefile b/erts/preloaded/src/Makefile
index 52034a0..56d91b9 100644
index 52034a0881..56d91b928b 100644
--- a/erts/preloaded/src/Makefile
+++ b/erts/preloaded/src/Makefile
@@ -86,8 +86,6 @@ $(APP_TARGET): $(APP_SRC) $(ERL_TOP)/erts/vsn.mk
@ -21,7 +21,7 @@ index 52034a0..56d91b9 100644
$(INSTALL_DATA) $(STATIC_TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/asn1/src/Makefile b/lib/asn1/src/Makefile
index 5b34017..d4677d6 100644
index 5b34017e9b..d4677d6b80 100644
--- a/lib/asn1/src/Makefile
+++ b/lib/asn1/src/Makefile
@@ -155,7 +155,7 @@ release_spec: opt
@ -34,7 +34,7 @@ index 5b34017..d4677d6 100644
$(INSTALL_DATA) $(EXAMPLES) "$(RELSYSDIR)/examples"
diff --git a/lib/common_test/src/Makefile b/lib/common_test/src/Makefile
index 987345c..f53546a 100644
index 987345c679..f53546a9ec 100644
--- a/lib/common_test/src/Makefile
+++ b/lib/common_test/src/Makefile
@@ -144,7 +144,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -47,7 +47,7 @@ index 987345c..f53546a 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/compiler/src/Makefile b/lib/compiler/src/Makefile
index 299b289..36a048b 100644
index 299b2892fc..36a048bc85 100644
--- a/lib/compiler/src/Makefile
+++ b/lib/compiler/src/Makefile
@@ -172,8 +172,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -62,7 +62,7 @@ index 299b289..36a048b 100644
$(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/cosEvent/src/Makefile b/lib/cosEvent/src/Makefile
index b79f0ec..30d1a1d 100644
index b79f0ec1e5..30d1a1d3d9 100644
--- a/lib/cosEvent/src/Makefile
+++ b/lib/cosEvent/src/Makefile
@@ -203,7 +203,7 @@ release_spec: opt
@ -75,7 +75,7 @@ index b79f0ec..30d1a1d 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosEventDomain/src/Makefile b/lib/cosEventDomain/src/Makefile
index da8dcf0..88b3993 100644
index da8dcf08b6..88b3993786 100644
--- a/lib/cosEventDomain/src/Makefile
+++ b/lib/cosEventDomain/src/Makefile
@@ -172,7 +172,7 @@ release_spec: opt
@ -88,7 +88,7 @@ index da8dcf0..88b3993 100644
$(INSTALL_DATA) $(EXTERNAL_GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosFileTransfer/src/Makefile b/lib/cosFileTransfer/src/Makefile
index f9107ff..74d337d 100644
index f9107ff48f..74d337d5f4 100644
--- a/lib/cosFileTransfer/src/Makefile
+++ b/lib/cosFileTransfer/src/Makefile
@@ -180,9 +180,7 @@ release_spec: opt
@ -103,7 +103,7 @@ index f9107ff..74d337d 100644
release_docs_spec:
diff --git a/lib/cosNotification/src/Makefile b/lib/cosNotification/src/Makefile
index 72b063f..0fdb82e 100644
index 72b063fd1c..0fdb82ea33 100644
--- a/lib/cosNotification/src/Makefile
+++ b/lib/cosNotification/src/Makefile
@@ -371,8 +371,7 @@ release_spec: opt
@ -117,7 +117,7 @@ index 72b063f..0fdb82e 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosProperty/src/Makefile b/lib/cosProperty/src/Makefile
index cd559e1..bdf035e 100644
index cd559e168f..bdf035e795 100644
--- a/lib/cosProperty/src/Makefile
+++ b/lib/cosProperty/src/Makefile
@@ -180,8 +180,7 @@ release_spec: opt
@ -131,7 +131,7 @@ index cd559e1..bdf035e 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosTime/src/Makefile b/lib/cosTime/src/Makefile
index 7a14db6..4b55398 100644
index 7a14db6974..4b5539851f 100644
--- a/lib/cosTime/src/Makefile
+++ b/lib/cosTime/src/Makefile
@@ -199,8 +199,7 @@ release_spec: opt
@ -145,7 +145,7 @@ index 7a14db6..4b55398 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosTransactions/src/Makefile b/lib/cosTransactions/src/Makefile
index 90e1e51..05826e0 100644
index 90e1e5130f..05826e0fab 100644
--- a/lib/cosTransactions/src/Makefile
+++ b/lib/cosTransactions/src/Makefile
@@ -174,7 +174,7 @@ release_spec: opt
@ -158,7 +158,7 @@ index 90e1e51..05826e0 100644
$(INSTALL_DATA) $(EXTERNAL_GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/crypto/src/Makefile b/lib/crypto/src/Makefile
index 6e4008e..c2d00fc 100644
index 6e4008e434..c2d00fc7f5 100644
--- a/lib/crypto/src/Makefile
+++ b/lib/crypto/src/Makefile
@@ -82,8 +82,6 @@ docs:
@ -171,7 +171,7 @@ index 6e4008e..c2d00fc 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) \
$(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/debugger/src/Makefile b/lib/debugger/src/Makefile
index f115f49..e7dc360 100644
index f115f49d98..e7dc360a44 100644
--- a/lib/debugger/src/Makefile
+++ b/lib/debugger/src/Makefile
@@ -117,7 +117,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -184,7 +184,7 @@ index f115f49..e7dc360 100644
$(INSTALL_DATA) $(TARGET_FILES) $(TARGET_TOOLBOX_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/dialyzer/src/Makefile b/lib/dialyzer/src/Makefile
index 770af21..4f8a6d8 100644
index 770af2140f..4f8a6d8f3a 100644
--- a/lib/dialyzer/src/Makefile
+++ b/lib/dialyzer/src/Makefile
@@ -152,7 +152,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -197,7 +197,7 @@ index 770af21..4f8a6d8 100644
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/diameter/src/Makefile b/lib/diameter/src/Makefile
index e0bbbdf..10771b2 100644
index e0bbbdfe63..10771b2b4a 100644
--- a/lib/diameter/src/Makefile
+++ b/lib/diameter/src/Makefile
@@ -251,11 +251,8 @@ release_spec: opt
@ -215,7 +215,7 @@ index e0bbbdf..10771b2 100644
$(EXAMPLE_DIRS:%/=release_examples_%): release_examples_%:
$(INSTALL_DIR) "$(RELSYSDIR)/examples/$*"
diff --git a/lib/edoc/src/Makefile b/lib/edoc/src/Makefile
index 4e5a418..c0bb0c3 100644
index 4e5a4182da..c0bb0c32ec 100644
--- a/lib/edoc/src/Makefile
+++ b/lib/edoc/src/Makefile
@@ -88,7 +88,7 @@ release_spec: opt
@ -228,7 +228,7 @@ index 4e5a418..c0bb0c3 100644
release_docs_spec:
diff --git a/lib/eldap/src/Makefile b/lib/eldap/src/Makefile
index cd3c102..b55c513 100644
index cd3c102f55..b55c513e90 100644
--- a/lib/eldap/src/Makefile
+++ b/lib/eldap/src/Makefile
@@ -99,10 +99,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -243,7 +243,7 @@ index cd3c102..b55c513 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/erl_docgen/src/Makefile b/lib/erl_docgen/src/Makefile
index 7d41506..3f3562f 100644
index 7d41506dbd..3f3562fce1 100644
--- a/lib/erl_docgen/src/Makefile
+++ b/lib/erl_docgen/src/Makefile
@@ -90,8 +90,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -256,7 +256,7 @@ index 7d41506..3f3562f 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/et/src/Makefile b/lib/et/src/Makefile
index 461a52d..1f2e885 100644
index 461a52d480..1f2e885d3f 100644
--- a/lib/et/src/Makefile
+++ b/lib/et/src/Makefile
@@ -109,7 +109,6 @@ release_spec: opt
@ -268,7 +268,7 @@ index 461a52d..1f2e885 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/eunit/src/Makefile b/lib/eunit/src/Makefile
index 86a6d88..5732fd8 100644
index 86a6d8831e..5732fd85f3 100644
--- a/lib/eunit/src/Makefile
+++ b/lib/eunit/src/Makefile
@@ -120,7 +120,6 @@ release_spec: opt
@ -280,7 +280,7 @@ index 86a6d88..5732fd8 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include"
diff --git a/lib/gs/src/Makefile b/lib/gs/src/Makefile
index ff3080e..60337dd 100644
index ff3080e20e..60337dd00d 100644
--- a/lib/gs/src/Makefile
+++ b/lib/gs/src/Makefile
@@ -109,8 +109,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -295,7 +295,7 @@ index ff3080e..60337dd 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/priv/bitmap"
diff --git a/lib/hipe/cerl/Makefile b/lib/hipe/cerl/Makefile
index 0938010..134ed7b 100644
index 0938010577..134ed7b602 100644
--- a/lib/hipe/cerl/Makefile
+++ b/lib/hipe/cerl/Makefile
@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -308,7 +308,7 @@ index 0938010..134ed7b 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/flow/Makefile b/lib/hipe/flow/Makefile
index f0af6ac..16b512e 100644
index f0af6ac166..16b512e19a 100644
--- a/lib/hipe/flow/Makefile
+++ b/lib/hipe/flow/Makefile
@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -321,7 +321,7 @@ index f0af6ac..16b512e 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/icode/Makefile b/lib/hipe/icode/Makefile
index a82e28c..f364a53 100644
index a82e28c7d9..f364a53ca2 100644
--- a/lib/hipe/icode/Makefile
+++ b/lib/hipe/icode/Makefile
@@ -120,7 +120,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -334,7 +334,7 @@ index a82e28c..f364a53 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/llvm/Makefile b/lib/hipe/llvm/Makefile
index f6f6f6b..4369923 100644
index f6f6f6be1c..436992310e 100644
--- a/lib/hipe/llvm/Makefile
+++ b/lib/hipe/llvm/Makefile
@@ -103,7 +103,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -347,7 +347,7 @@ index f6f6f6b..4369923 100644
$(INSTALL_DATA) $(TARGET_FILES) $(RELSYSDIR)/ebin
diff --git a/lib/hipe/main/Makefile b/lib/hipe/main/Makefile
index d44be2d..ed81f10 100644
index d44be2d9fa..ed81f103a8 100644
--- a/lib/hipe/main/Makefile
+++ b/lib/hipe/main/Makefile
@@ -118,7 +118,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -360,7 +360,7 @@ index d44be2d..ed81f10 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/misc/Makefile b/lib/hipe/misc/Makefile
index be5c9bc..d40b322 100644
index be5c9bc2b6..d40b322461 100644
--- a/lib/hipe/misc/Makefile
+++ b/lib/hipe/misc/Makefile
@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -373,7 +373,7 @@ index be5c9bc..d40b322 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/rtl/Makefile b/lib/hipe/rtl/Makefile
index 1bf52fe..5049bec 100644
index 1bf52fe312..5049beca5d 100644
--- a/lib/hipe/rtl/Makefile
+++ b/lib/hipe/rtl/Makefile
@@ -105,7 +105,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -386,7 +386,7 @@ index 1bf52fe..5049bec 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/util/Makefile b/lib/hipe/util/Makefile
index 4a78ad7..1b1ce05 100644
index 4a78ad7a1b..1b1ce05cc5 100644
--- a/lib/hipe/util/Makefile
+++ b/lib/hipe/util/Makefile
@@ -50,7 +50,6 @@ HIPE_MODULES =
@ -407,7 +407,7 @@ index 4a78ad7..1b1ce05 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/ic/src/Makefile b/lib/ic/src/Makefile
index a6da81a..60870be 100644
index a6da81a03b..60870be1ca 100644
--- a/lib/ic/src/Makefile
+++ b/lib/ic/src/Makefile
@@ -200,7 +200,7 @@ release_spec: opt
@ -420,7 +420,7 @@ index a6da81a..60870be 100644
$(INSTALL_DIR) "$(RELSYSDIR)/examples/c-client"
$(INSTALL_DATA) $(CCL_EX_FILES) "$(RELSYSDIR)/examples/c-client"
diff --git a/lib/inets/src/ftp/Makefile b/lib/inets/src/ftp/Makefile
index f8daa2b..48e5d49 100644
index f8daa2b894..48e5d490c6 100644
--- a/lib/inets/src/ftp/Makefile
+++ b/lib/inets/src/ftp/Makefile
@@ -91,7 +91,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -433,7 +433,7 @@ index f8daa2b..48e5d49 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/http_client/Makefile b/lib/inets/src/http_client/Makefile
index cb97b52..cb13dfb 100644
index cb97b525f6..cb13dfbb4e 100644
--- a/lib/inets/src/http_client/Makefile
+++ b/lib/inets/src/http_client/Makefile
@@ -92,7 +92,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -446,7 +446,7 @@ index cb97b52..cb13dfb 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/http_lib/Makefile b/lib/inets/src/http_lib/Makefile
index 4a4eef9..c779c8e 100644
index 4a4eef9f24..c779c8ef16 100644
--- a/lib/inets/src/http_lib/Makefile
+++ b/lib/inets/src/http_lib/Makefile
@@ -90,7 +90,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -459,7 +459,7 @@ index 4a4eef9..c779c8e 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/http_server/Makefile b/lib/inets/src/http_server/Makefile
index 1c05d45..88f9f62 100644
index 1c05d454a5..88f9f62d3b 100644
--- a/lib/inets/src/http_server/Makefile
+++ b/lib/inets/src/http_server/Makefile
@@ -135,7 +135,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -472,7 +472,7 @@ index 1c05d45..88f9f62 100644
$(INSTALL_DATA) $(TARGET_FILES) $(BEHAVIOUR_TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/inets_app/Makefile b/lib/inets/src/inets_app/Makefile
index 7f51676..093f462 100644
index 7f51676dc5..093f4622aa 100644
--- a/lib/inets/src/inets_app/Makefile
+++ b/lib/inets/src/inets_app/Makefile
@@ -116,7 +116,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -485,7 +485,7 @@ index 7f51676..093f462 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/tftp/Makefile b/lib/inets/src/tftp/Makefile
index d5d94e1..5583064 100644
index d5d94e1b78..5583064658 100644
--- a/lib/inets/src/tftp/Makefile
+++ b/lib/inets/src/tftp/Makefile
@@ -96,7 +96,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -498,7 +498,7 @@ index d5d94e1..5583064 100644
$(INSTALL_DATA) $(TARGET_FILES) $(BEHAVIOUR_TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/kernel/src/Makefile b/lib/kernel/src/Makefile
index 57daceb..1cebd80 100644
index 57dacebde3..1cebd801be 100644
--- a/lib/kernel/src/Makefile
+++ b/lib/kernel/src/Makefile
@@ -200,7 +200,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -510,7 +510,7 @@ index 57daceb..1cebd80 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/megaco/src/app/Makefile b/lib/megaco/src/app/Makefile
index 8f8e6ec..9e0bc82 100644
index 8f8e6ecded..9e0bc82329 100644
--- a/lib/megaco/src/app/Makefile
+++ b/lib/megaco/src/app/Makefile
@@ -114,7 +114,7 @@ release_spec: opt
@ -523,7 +523,7 @@ index 8f8e6ec..9e0bc82 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/megaco/src/binary/Makefile b/lib/megaco/src/binary/Makefile
index 711fbb7..1db4593 100644
index 711fbb7665..1db4593c6e 100644
--- a/lib/megaco/src/binary/Makefile
+++ b/lib/megaco/src/binary/Makefile
@@ -176,7 +176,7 @@ release_spec: opt
@ -536,7 +536,7 @@ index 711fbb7..1db4593 100644
release_docs_spec:
diff --git a/lib/megaco/src/engine/Makefile b/lib/megaco/src/engine/Makefile
index 208942c..d5b7218 100644
index 208942c3be..d5b721854d 100644
--- a/lib/megaco/src/engine/Makefile
+++ b/lib/megaco/src/engine/Makefile
@@ -102,7 +102,7 @@ release_spec: opt
@ -549,7 +549,7 @@ index 208942c..d5b7218 100644
diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in
index 39be02a..8c6ba31 100644
index 39be02ad5e..8c6ba31cee 100644
--- a/lib/megaco/src/flex/Makefile.in
+++ b/lib/megaco/src/flex/Makefile.in
@@ -268,7 +268,6 @@ release_spec: opt
@ -561,7 +561,7 @@ index 39be02a..8c6ba31 100644
ifeq ($(ENABLE_MEGACO_FLEX_SCANNER),true)
$(INSTALL_DATA) $(FLEX_FILES) "$(RELSYSDIR)/src/flex"
diff --git a/lib/megaco/src/tcp/Makefile b/lib/megaco/src/tcp/Makefile
index 0c546a8..78f659a 100644
index 0c546a881f..78f659a2e8 100644
--- a/lib/megaco/src/tcp/Makefile
+++ b/lib/megaco/src/tcp/Makefile
@@ -94,7 +94,7 @@ release_spec: opt
@ -574,7 +574,7 @@ index 0c546a8..78f659a 100644
release_docs_spec:
diff --git a/lib/megaco/src/text/Makefile b/lib/megaco/src/text/Makefile
index f4fc56a..1cc73fd 100644
index f4fc56a27d..1cc73fd7c3 100644
--- a/lib/megaco/src/text/Makefile
+++ b/lib/megaco/src/text/Makefile
@@ -135,7 +135,7 @@ release_spec: opt
@ -587,7 +587,7 @@ index f4fc56a..1cc73fd 100644
release_docs_spec:
diff --git a/lib/megaco/src/udp/Makefile b/lib/megaco/src/udp/Makefile
index 7288c20..aefd9f3 100644
index 7288c205f0..aefd9f3cfc 100644
--- a/lib/megaco/src/udp/Makefile
+++ b/lib/megaco/src/udp/Makefile
@@ -94,7 +94,7 @@ release_spec: opt
@ -600,7 +600,7 @@ index 7288c20..aefd9f3 100644
release_docs_spec:
diff --git a/lib/mnesia/src/Makefile b/lib/mnesia/src/Makefile
index dae0df7..6294ae9 100644
index dae0df76f3..6294ae92ce 100644
--- a/lib/mnesia/src/Makefile
+++ b/lib/mnesia/src/Makefile
@@ -133,7 +133,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -613,7 +613,7 @@ index dae0df7..6294ae9 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/observer/src/Makefile b/lib/observer/src/Makefile
index 2d42510..7579014 100644
index 2d42510b47..7579014d35 100644
--- a/lib/observer/src/Makefile
+++ b/lib/observer/src/Makefile
@@ -152,7 +152,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -625,7 +625,7 @@ index 2d42510..7579014 100644
$(INSTALL_DIR) "$(RELSYSDIR)/examples"
$(INSTALL_DATA) $(EXAMPLE_FILES) "$(RELSYSDIR)/examples"
diff --git a/lib/odbc/src/Makefile b/lib/odbc/src/Makefile
index 51c9ed3..50a4c10 100644
index 51c9ed3d5c..50a4c1088c 100644
--- a/lib/odbc/src/Makefile
+++ b/lib/odbc/src/Makefile
@@ -110,7 +110,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -638,7 +638,7 @@ index 51c9ed3..50a4c10 100644
$(INSTALL_DATA) $(EXT_HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/orber/COSS/CosNaming/Makefile b/lib/orber/COSS/CosNaming/Makefile
index 0eca8dd..18d9627 100644
index 0eca8ddfab..18d9627c8c 100644
--- a/lib/orber/COSS/CosNaming/Makefile
+++ b/lib/orber/COSS/CosNaming/Makefile
@@ -145,8 +145,8 @@ release_spec: opt
@ -653,7 +653,7 @@ index 0eca8dd..18d9627 100644
release_docs_spec:
diff --git a/lib/orber/src/Makefile b/lib/orber/src/Makefile
index 30b74c4..9c6708f 100644
index 30b74c490a..9c6708fdd3 100644
--- a/lib/orber/src/Makefile
+++ b/lib/orber/src/Makefile
@@ -253,7 +253,7 @@ release_spec: opt
@ -666,7 +666,7 @@ index 30b74c4..9c6708f 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) $(GEN_HRL_FILES_EXT) "$(RELSYSDIR)/include"
diff --git a/lib/os_mon/src/Makefile b/lib/os_mon/src/Makefile
index 1003d24..1b12154 100644
index 1003d24be9..1b1215456e 100644
--- a/lib/os_mon/src/Makefile
+++ b/lib/os_mon/src/Makefile
@@ -105,7 +105,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -678,7 +678,7 @@ index 1003d24..1b12154 100644
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/ose/src/Makefile b/lib/ose/src/Makefile
index a89e939..224d944 100644
index a89e9392e9..224d944d71 100644
--- a/lib/ose/src/Makefile
+++ b/lib/ose/src/Makefile
@@ -94,9 +94,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -692,7 +692,7 @@ index a89e939..224d944 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/otp_mibs/src/Makefile b/lib/otp_mibs/src/Makefile
index 03892cd..c3ad326 100644
index 03892cd43d..c3ad326faf 100644
--- a/lib/otp_mibs/src/Makefile
+++ b/lib/otp_mibs/src/Makefile
@@ -96,8 +96,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -705,7 +705,7 @@ index 03892cd..c3ad326 100644
$(INSTALL_DATA) $(TARGETS) "$(RELSYSDIR)/ebin"
diff --git a/lib/parsetools/src/Makefile b/lib/parsetools/src/Makefile
index dbecdd2..1d45801 100644
index dbecdd24a5..1d45801b95 100644
--- a/lib/parsetools/src/Makefile
+++ b/lib/parsetools/src/Makefile
@@ -91,8 +91,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -718,7 +718,7 @@ index dbecdd2..1d45801 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/percept/src/Makefile b/lib/percept/src/Makefile
index 9b963e0..deeb75c 100644
index 9b963e0fae..deeb75c132 100644
--- a/lib/percept/src/Makefile
+++ b/lib/percept/src/Makefile
@@ -97,7 +97,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -730,7 +730,7 @@ index 9b963e0..deeb75c 100644
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
# $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/public_key/asn1/Makefile b/lib/public_key/asn1/Makefile
index 7474297..a510658 100644
index 7474297b9b..a51065850b 100644
--- a/lib/public_key/asn1/Makefile
+++ b/lib/public_key/asn1/Makefile
@@ -96,8 +96,8 @@ release_spec: opt
@ -745,7 +745,7 @@ index 7474297..a510658 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/public_key/src/Makefile b/lib/public_key/src/Makefile
index 786f244..0463c67 100644
index 786f244f85..0463c678f6 100644
--- a/lib/public_key/src/Makefile
+++ b/lib/public_key/src/Makefile
@@ -109,8 +109,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -758,7 +758,7 @@ index 786f244..0463c67 100644
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/reltool/src/Makefile b/lib/reltool/src/Makefile
index 1fea415..a756470 100644
index 1fea41550c..a756470503 100644
--- a/lib/reltool/src/Makefile
+++ b/lib/reltool/src/Makefile
@@ -100,7 +100,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -771,7 +771,7 @@ index 1fea415..a756470 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/runtime_tools/src/Makefile b/lib/runtime_tools/src/Makefile
index 99b90f9..25b3ebb 100644
index 99b90f9ec5..25b3ebb671 100644
--- a/lib/runtime_tools/src/Makefile
+++ b/lib/runtime_tools/src/Makefile
@@ -97,8 +97,6 @@ docs:
@ -784,7 +784,7 @@ index 99b90f9..25b3ebb 100644
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/examples"
diff --git a/lib/sasl/src/Makefile b/lib/sasl/src/Makefile
index 7ff6a03..a304900 100644
index 7ff6a03a50..a304900917 100644
--- a/lib/sasl/src/Makefile
+++ b/lib/sasl/src/Makefile
@@ -93,7 +93,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -796,7 +796,7 @@ index 7ff6a03..a304900 100644
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/agent/Makefile b/lib/snmp/src/agent/Makefile
index 89037b3..01de885 100644
index 89037b3ea8..01de885f0d 100644
--- a/lib/snmp/src/agent/Makefile
+++ b/lib/snmp/src/agent/Makefile
@@ -131,7 +131,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -809,7 +809,7 @@ index 89037b3..01de885 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/app/Makefile b/lib/snmp/src/app/Makefile
index 7972d95..78a9f2b 100644
index 7972d9549d..78a9f2b6ec 100644
--- a/lib/snmp/src/app/Makefile
+++ b/lib/snmp/src/app/Makefile
@@ -132,7 +132,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -822,7 +822,7 @@ index 7972d95..78a9f2b 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/compile/Makefile b/lib/snmp/src/compile/Makefile
index 54f2e22..488faa4 100644
index 54f2e229b9..488faa4727 100644
--- a/lib/snmp/src/compile/Makefile
+++ b/lib/snmp/src/compile/Makefile
@@ -123,7 +123,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -835,7 +835,7 @@ index 54f2e22..488faa4 100644
$(INSTALL_DATA) $(EBIN_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/bin"
diff --git a/lib/snmp/src/manager/Makefile b/lib/snmp/src/manager/Makefile
index 382f83b..db50c26 100644
index 382f83b78e..db50c264ad 100644
--- a/lib/snmp/src/manager/Makefile
+++ b/lib/snmp/src/manager/Makefile
@@ -114,7 +114,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -848,7 +848,7 @@ index 382f83b..db50c26 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/snmp/src/misc/Makefile b/lib/snmp/src/misc/Makefile
index c71ecf9..d17e699 100644
index c71ecf994e..d17e699be0 100644
--- a/lib/snmp/src/misc/Makefile
+++ b/lib/snmp/src/misc/Makefile
@@ -112,7 +112,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -861,7 +861,7 @@ index c71ecf9..d17e699 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/ssh/src/Makefile b/lib/ssh/src/Makefile
index b44c8ee..8f8b58d 100644
index b44c8eef35..8f8b58dcd7 100644
--- a/lib/ssh/src/Makefile
+++ b/lib/ssh/src/Makefile
@@ -135,7 +135,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -874,7 +874,7 @@ index b44c8ee..8f8b58d 100644
$(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \
$(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/ssl/src/Makefile b/lib/ssl/src/Makefile
index 7a7a373..419fa9e 100644
index 7a7a373487..419fa9e090 100644
--- a/lib/ssl/src/Makefile
+++ b/lib/ssl/src/Makefile
@@ -142,7 +142,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -887,7 +887,7 @@ index 7a7a373..419fa9e 100644
$(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \
$(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/stdlib/src/Makefile b/lib/stdlib/src/Makefile
index 9f4a446..50ac11e 100644
index 9f4a446ea0..50ac11ec80 100644
--- a/lib/stdlib/src/Makefile
+++ b/lib/stdlib/src/Makefile
@@ -207,7 +207,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -899,7 +899,7 @@ index 9f4a446..50ac11e 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/syntax_tools/src/Makefile b/lib/syntax_tools/src/Makefile
index 2e91adf..0085fca 100644
index 2e91adf8af..0085fca025 100644
--- a/lib/syntax_tools/src/Makefile
+++ b/lib/syntax_tools/src/Makefile
@@ -100,8 +100,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -912,7 +912,7 @@ index 2e91adf..0085fca 100644
$(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include"
diff --git a/lib/test_server/src/Makefile b/lib/test_server/src/Makefile
index 6a26ee2..7336477 100644
index 6a26ee2933..73364773db 100644
--- a/lib/test_server/src/Makefile
+++ b/lib/test_server/src/Makefile
@@ -124,7 +124,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -924,7 +924,7 @@ index 6a26ee2..7336477 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/tools/src/Makefile b/lib/tools/src/Makefile
index 9fcfb79..b30b173 100644
index 9fcfb79628..b30b173e87 100644
--- a/lib/tools/src/Makefile
+++ b/lib/tools/src/Makefile
@@ -107,7 +107,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@ -937,7 +937,7 @@ index 9fcfb79..b30b173 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/typer/src/Makefile b/lib/typer/src/Makefile
index 620ca21..9c9390e 100644
index 620ca21827..9c9390e103 100644
--- a/lib/typer/src/Makefile
+++ b/lib/typer/src/Makefile
@@ -102,9 +102,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -951,7 +951,7 @@ index 620ca21..9c9390e 100644
$(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/webtool/src/Makefile b/lib/webtool/src/Makefile
index a5a8eaf..be80ba7 100644
index a5a8eaf5dc..be80ba74aa 100644
--- a/lib/webtool/src/Makefile
+++ b/lib/webtool/src/Makefile
@@ -88,8 +88,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
@ -964,7 +964,7 @@ index a5a8eaf..be80ba7 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/wx/src/Makefile b/lib/wx/src/Makefile
index b345e34..153a270 100644
index b345e34684..153a2707ad 100644
--- a/lib/wx/src/Makefile
+++ b/lib/wx/src/Makefile
@@ -122,9 +122,9 @@ $(EBIN)/%.beam: $(EGEN)/%.erl $(HEADER_FILES)
@ -980,7 +980,7 @@ index b345e34..153a270 100644
$(INSTALL_DATA) $(EXT_HRL) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/xmerl/src/Makefile b/lib/xmerl/src/Makefile
index f8f0320..099513e 100644
index f8f0320f46..099513e380 100644
--- a/lib/xmerl/src/Makefile
+++ b/lib/xmerl/src/Makefile
@@ -218,9 +218,7 @@ release_spec: opt

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Split off webtool dependency from tools
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/tools/src/cover_web.erl b/lib/tools/src/cover_web.erl
index ae8b3f2..539ca96 100644
index ae8b3f25cf..539ca96b8e 100644
--- a/lib/tools/src/cover_web.erl
+++ b/lib/tools/src/cover_web.erl
@@ -51,14 +51,25 @@

View file

@ -8,7 +8,7 @@ https://bugzilla.redhat.com/show_bug.cgi?id=1291856
https://bugzilla.redhat.com/show_bug.cgi?id=1291857
diff --git a/erts/emulator/beam/dist.c b/erts/emulator/beam/dist.c
index 787241b..069d80a 100644
index 787241b960..069d80ac4b 100644
--- a/erts/emulator/beam/dist.c
+++ b/erts/emulator/beam/dist.c
@@ -1980,7 +1980,7 @@ dist_port_command(Port *prt, ErtsDistOutputBuf *obuf)

View file

@ -19,7 +19,7 @@ This patch disables indiscriminate confirmation sending, and does it
only when it was explicitly asked to do so.
diff --git a/erts/epmd/src/epmd.c b/erts/epmd/src/epmd.c
index 5513cb2..4740ce8 100644
index 5513cb2d7e..4740ce8534 100644
--- a/erts/epmd/src/epmd.c
+++ b/erts/epmd/src/epmd.c
@@ -592,8 +592,10 @@ void epmd_cleanup_exit(EpmdVars *g, int exitval)
@ -36,7 +36,7 @@ index 5513cb2..4740ce8 100644
exit(exitval);
}
diff --git a/erts/epmd/src/epmd_srv.c b/erts/epmd/src/epmd_srv.c
index e1bac99..59d59ad 100644
index e1bac99ef9..59d59ad0f7 100644
--- a/erts/epmd/src/epmd_srv.c
+++ b/erts/epmd/src/epmd_srv.c
@@ -452,9 +452,11 @@ void run(EpmdVars *g)

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Fix decoding of LLONG_MIN in erl_decode
Reported-by: Peter Lemenkov
diff --git a/lib/erl_interface/src/legacy/erl_marshal.c b/lib/erl_interface/src/legacy/erl_marshal.c
index a4216c9..6a1b573 100644
index a4216c9541..6a1b573d52 100644
--- a/lib/erl_interface/src/legacy/erl_marshal.c
+++ b/lib/erl_interface/src/legacy/erl_marshal.c
@@ -727,6 +727,13 @@ static ETERM *erl_decode_it(unsigned char **ext)

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Respect -proto_dist switch while connection to EPMD
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/kernel/src/erl_epmd.erl b/lib/kernel/src/erl_epmd.erl
index c6202dd..ec2e330 100644
index c6202dd796..ec2e3309c8 100644
--- a/lib/kernel/src/erl_epmd.erl
+++ b/lib/kernel/src/erl_epmd.erl
@@ -103,6 +103,10 @@ names(EpmdAddr) ->
@ -20,7 +20,7 @@ index c6202dd..ec2e330 100644
gen_server:call(erl_epmd, {register, Name, PortNo, Family}, infinity).
diff --git a/lib/kernel/src/inet_tcp_dist.erl b/lib/kernel/src/inet_tcp_dist.erl
index 64b28bb..ffbd5d5 100644
index 64b28bb49b..ffbd5d5a21 100644
--- a/lib/kernel/src/inet_tcp_dist.erl
+++ b/lib/kernel/src/inet_tcp_dist.erl
@@ -73,7 +73,7 @@ gen_listen(Driver, Name) ->
@ -32,3 +32,16 @@ index 64b28bb..ffbd5d5 100644
{ok, Creation} ->
{ok, {Socket, TcpAddress, Creation}};
Error ->
diff --git a/lib/ssl/src/ssl_tls_dist_proxy.erl b/lib/ssl/src/ssl_tls_dist_proxy.erl
index 4c789793ec..7c6b14fcaf 100644
--- a/lib/ssl/src/ssl_tls_dist_proxy.erl
+++ b/lib/ssl/src/ssl_tls_dist_proxy.erl
@@ -116,7 +116,7 @@ handle_call({listen, Driver, Name}, _From, State) ->
{ok, TcpAddress} = get_tcp_address(Socket),
{ok, WorldTcpAddress} = get_tcp_address(World),
{_,Port} = WorldTcpAddress#net_address.address,
- case erl_epmd:register_node(Name, Port) of
+ case erl_epmd:register_node(Name, Port, Driver) of
{ok, Creation} ->
{reply, {ok, {Socket, TcpAddress, Creation}},
State#state{listen={Socket, World}}};

View file

@ -0,0 +1,45 @@
From: Sverker Eriksson <sverker@erlang.org>
Date: Wed, 9 Nov 2016 16:52:23 +0100
Subject: [PATCH] erts: Fix correct link flags for hipe_mkliterals
and no need for $(INCLUDED).
diff --git a/erts/emulator/Makefile.in b/erts/emulator/Makefile.in
index a919f0e3ac..15e5609d08 100644
--- a/erts/emulator/Makefile.in
+++ b/erts/emulator/Makefile.in
@@ -53,6 +53,7 @@ CREATE_DIRS=
LDFLAGS=@LDFLAGS@
ARFLAGS=rc
OMIT_OMIT_FP=no
+TYPE_LIBS=
ifeq ($(TYPE),debug)
PURIFY =
@@ -91,7 +92,7 @@ PURIFY =
TYPEMARKER = .gcov
TYPE_FLAGS = $(DEBUG_CFLAGS) -DERTS_GCOV -DNO_JUMP_TABLE -fprofile-arcs -ftest-coverage -O0 -DERTS_CAN_INLINE=0 -DERTS_INLINE=
ifneq ($(findstring solaris,$(TARGET)),solaris)
-LIBS += -lgcov
+TYPE_LIBS = -lgcov
endif
ENABLE_ALLOC_TYPE_VARS += debug
else
@@ -147,6 +148,8 @@ endif
endif
endif
+LIBS += $(TYPE_LIBS)
+
comma:=,
space:=
space+=
@@ -956,7 +959,7 @@ $(OBJDIR)/%.o: hipe/%.c
$(V_CC) $(subst O2,O3, $(CFLAGS)) $(INCLUDES) -c $< -o $@
$(BINDIR)/hipe_mkliterals$(TF_MARKER): $(OBJDIR)/hipe_mkliterals.o
- $(ld_verbose)$(CC) $(CFLAGS) $(INCLUDES) -o $@ $<
+ $(ld_verbose)$(CC) $(LDFLAGS) -o $@ $< $(TYPE_LIBS)
$(OBJDIR)/hipe_mkliterals.o: $(HIPE_ASM) $(TTF_DIR)/erl_alloc_types.h $(DTRACE_HEADERS) \
$(TTF_DIR)/OPCODES-GENERATED $(TARGET)/TABLES-GENERATED

View file

@ -0,0 +1,32 @@
From: Sverker Eriksson <sverker@erlang.org>
Date: Tue, 8 Nov 2016 16:52:32 +0100
Subject: [PATCH] erts: Disable -fPIE for HiPE on x86_64
diff --git a/erts/configure.in b/erts/configure.in
index 4ade3b3086..e99d22a0af 100644
--- a/erts/configure.in
+++ b/erts/configure.in
@@ -2887,6 +2887,22 @@ case $ARCH-$OPSYS in
;;
esac
+dnl Check to disable -fPIE and friends for HiPE on amd64
+if test X${enable_hipe} = Xyes && test X$ARCH = Xamd64; then
+ AC_TRY_COMPILE(, [#if defined(__pie__) || defined(__PIE__)
+ #error -fPIE is enabled by default
+ #endif],
+ [AC_MSG_NOTICE([No -fPIE enabled by default])],
+ [AC_MSG_WARN([Security feature -fPIE will be disabled for HiPE])
+ STATIC_CFLAGS="-fno-PIE $STATIC_CFLAGS"
+ saved_LDFLAGS=$LDFLAGS
+ LDFLAGS="-no-pie $LDFLAGS"
+ AC_TRY_LINK(,, [],
+ [AC_MSG_WARN([Linked does not accept option -no-pie])
+ LDFLAGS=$saved_LDFLAGS])])
+
+fi
+
if test X${enable_fp_exceptions} = Xauto ; then
case $host_os in
*linux*)

View file

@ -0,0 +1,318 @@
From: Zephyr Pellerin <zv@nxvr.org>
Date: Mon, 20 Mar 2017 15:36:41 -0700
Subject: [PATCH] Fix CVE-2016-10253
diff --git a/erts/emulator/pcre/pcre_compile.c b/erts/emulator/pcre/pcre_compile.c
index d48126a55d..15a81fae56 100644
--- a/erts/emulator/pcre/pcre_compile.c
+++ b/erts/emulator/pcre/pcre_compile.c
@@ -2335,34 +2335,36 @@ for (;;)
}
}
-
-
/*************************************************
-* Scan compiled branch for non-emptiness *
-*************************************************/
+ * Scan compiled branch for non-emptiness *
+ *************************************************/
/* This function scans through a branch of a compiled pattern to see whether it
-can match the empty string or not. It is called from could_be_empty()
-below and from compile_branch() when checking for an unlimited repeat of a
-group that can match nothing. Note that first_significant_code() skips over
-backward and negative forward assertions when its final argument is TRUE. If we
-hit an unclosed bracket, we return "empty" - this means we've struck an inner
-bracket whose current branch will already have been scanned.
-
-Arguments:
- code points to start of search
- endcode points to where to stop
- utf TRUE if in UTF-8 / UTF-16 / UTF-32 mode
- cd contains pointers to tables etc.
-
-Returns: TRUE if what is matched could be empty
+ can match the empty string or not. It is called from could_be_empty()
+ below and from compile_branch() when checking for an unlimited repeat of a
+ group that can match nothing. Note that first_significant_code() skips over
+ backward and negative forward assertions when its final argument is TRUE. If we
+ hit an unclosed bracket, we return "empty" - this means we've struck an inner
+ bracket whose current branch will already have been scanned.
+
+ Arguments:
+ code points to start of search
+ endcode points to where to stop
+ utf TRUE if in UTF-8 / UTF-16 / UTF-32 mode
+ cd contains pointers to tables etc.
+ recurses chain of recurse_check to catch mutual recursion
+
+ Returns: TRUE if what is matched could be empty
*/
+
static BOOL
could_be_empty_branch(const pcre_uchar *code, const pcre_uchar *endcode,
- BOOL utf, compile_data *cd)
+ BOOL utf, compile_data *cd, recurse_check *recurses)
{
register pcre_uchar c;
+recurse_check this_recurse;
+
for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE);
code < endcode;
code = first_significant_code(code + PRIV(OP_lengths)[c], TRUE))
@@ -2390,25 +2392,47 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE);
if (c == OP_RECURSE)
{
- const pcre_uchar *scode;
+ const pcre_uchar *scode = cd->start_code + GET(code, 1);
+ const pcre_uchar *endgroup = scode;
BOOL empty_branch;
- /* Test for forward reference */
+ /* Test for forward reference or uncompleted reference. This is disabled
+ when called to scan a completed pattern by setting cd->start_workspace to
+ NULL. */
- for (scode = cd->start_workspace; scode < cd->hwm; scode += LINK_SIZE)
- if ((int)GET(scode, 0) == (int)(code + 1 - cd->start_code)) return TRUE;
+ if (cd->start_workspace != NULL)
+ {
+ const pcre_uchar *tcode;
+ for (tcode = cd->start_workspace; tcode < cd->hwm; tcode += LINK_SIZE)
+ if ((int)GET(tcode, 0) == (int)(code + 1 - cd->start_code)) return TRUE;
+ if (GET(scode, 1) == 0) return TRUE; /* Unclosed */
+ }
- /* Not a forward reference, test for completed backward reference */
+ /* If the reference is to a completed group, we need to detect whether this
+ is a recursive call, as otherwise there will be an infinite loop. If it is
+ a recursion, just skip over it. Simple recursions are easily detected. For
+ mutual recursions we keep a chain on the stack. */
- empty_branch = FALSE;
- scode = cd->start_code + GET(code, 1);
- if (GET(scode, 1) == 0) return TRUE; /* Unclosed */
+ do endgroup += GET(endgroup, 1); while (*endgroup == OP_ALT);
+ if (code >= scode && code <= endgroup) continue; /* Simple recursion */
+ else
+ {
+ recurse_check *r = recurses;
+ for (r = recurses; r != NULL; r = r->prev)
+ if (r->group == scode) break;
+ if (r != NULL) continue; /* Mutual recursion */
+ }
+
+ /* Completed reference; scan the referenced group, remembering it on the
+ stack chain to detect mutual recursions. */
- /* Completed backwards reference */
+ empty_branch = FALSE;
+ this_recurse.prev = recurses;
+ this_recurse.group = scode;
do
{
- if (could_be_empty_branch(scode, endcode, utf, cd))
+ if (could_be_empty_branch(scode, endcode, utf, cd, &this_recurse))
{
empty_branch = TRUE;
break;
@@ -2448,7 +2472,7 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE);
if (c == OP_BRA || c == OP_BRAPOS ||
c == OP_CBRA || c == OP_CBRAPOS ||
c == OP_ONCE || c == OP_ONCE_NC ||
- c == OP_COND)
+ c == OP_COND || c == OP_SCOND)
{
BOOL empty_branch;
if (GET(code, 1) == 0) return TRUE; /* Hit unclosed bracket */
@@ -2464,8 +2488,8 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE);
empty_branch = FALSE;
do
{
- if (!empty_branch && could_be_empty_branch(code, endcode, utf, cd))
- empty_branch = TRUE;
+ if (!empty_branch && could_be_empty_branch(code, endcode, utf, cd,
+ recurses)) empty_branch = TRUE;
code += GET(code, 1);
}
while (*code == OP_ALT);
@@ -2522,34 +2546,57 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE);
/* Opcodes that must match a character */
+ case OP_ANY:
+ case OP_ALLANY:
+ case OP_ANYBYTE:
+
case OP_PROP:
case OP_NOTPROP:
+ case OP_ANYNL:
+
+ case OP_NOT_HSPACE:
+ case OP_HSPACE:
+ case OP_NOT_VSPACE:
+ case OP_VSPACE:
case OP_EXTUNI:
+
case OP_NOT_DIGIT:
case OP_DIGIT:
case OP_NOT_WHITESPACE:
case OP_WHITESPACE:
case OP_NOT_WORDCHAR:
case OP_WORDCHAR:
- case OP_ANY:
- case OP_ALLANY:
- case OP_ANYBYTE:
+
case OP_CHAR:
case OP_CHARI:
case OP_NOT:
case OP_NOTI:
+
case OP_PLUS:
+ case OP_PLUSI:
case OP_MINPLUS:
- case OP_POSPLUS:
- case OP_EXACT:
+ case OP_MINPLUSI:
+
case OP_NOTPLUS:
+ case OP_NOTPLUSI:
case OP_NOTMINPLUS:
+ case OP_NOTMINPLUSI:
+
+ case OP_POSPLUS:
+ case OP_POSPLUSI:
case OP_NOTPOSPLUS:
+ case OP_NOTPOSPLUSI:
+
+ case OP_EXACT:
+ case OP_EXACTI:
case OP_NOTEXACT:
+ case OP_NOTEXACTI:
+
case OP_TYPEPLUS:
case OP_TYPEMINPLUS:
case OP_TYPEPOSPLUS:
case OP_TYPEEXACT:
+
return FALSE;
/* These are going to continue, as they may be empty, but we have to
@@ -2583,30 +2630,58 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE);
return TRUE;
/* In UTF-8 mode, STAR, MINSTAR, POSSTAR, QUERY, MINQUERY, POSQUERY, UPTO,
- MINUPTO, and POSUPTO may be followed by a multibyte character */
+ MINUPTO, and POSUPTO and their caseless and negative versions may be
+ followed by a multibyte character. */
#if defined SUPPORT_UTF && !defined COMPILE_PCRE32
case OP_STAR:
case OP_STARI:
+ case OP_NOTSTAR:
+ case OP_NOTSTARI:
+
case OP_MINSTAR:
case OP_MINSTARI:
+ case OP_NOTMINSTAR:
+ case OP_NOTMINSTARI:
+
case OP_POSSTAR:
case OP_POSSTARI:
+ case OP_NOTPOSSTAR:
+ case OP_NOTPOSSTARI:
+
case OP_QUERY:
case OP_QUERYI:
+ case OP_NOTQUERY:
+ case OP_NOTQUERYI:
+
case OP_MINQUERY:
case OP_MINQUERYI:
+ case OP_NOTMINQUERY:
+ case OP_NOTMINQUERYI:
+
case OP_POSQUERY:
case OP_POSQUERYI:
+ case OP_NOTPOSQUERY:
+ case OP_NOTPOSQUERYI:
+
if (utf && HAS_EXTRALEN(code[1])) code += GET_EXTRALEN(code[1]);
break;
case OP_UPTO:
case OP_UPTOI:
+ case OP_NOTUPTO:
+ case OP_NOTUPTOI:
+
case OP_MINUPTO:
case OP_MINUPTOI:
+ case OP_NOTMINUPTO:
+ case OP_NOTMINUPTOI:
+
case OP_POSUPTO:
case OP_POSUPTOI:
+ case OP_NOTPOSUPTO:
+ case OP_NOTPOSUPTOI:
+
if (utf && HAS_EXTRALEN(code[1 + IMM2_SIZE])) code += GET_EXTRALEN(code[1 + IMM2_SIZE]);
break;
#endif
@@ -2632,7 +2707,6 @@ return TRUE;
}
-
/*************************************************
* Scan compiled regex for non-emptiness *
*************************************************/
@@ -2660,7 +2734,7 @@ could_be_empty(const pcre_uchar *code, const pcre_uchar *endcode,
{
while (bcptr != NULL && bcptr->current_branch >= code)
{
- if (!could_be_empty_branch(bcptr->current_branch, endcode, utf, cd))
+ if (!could_be_empty_branch(bcptr->current_branch, endcode, utf, cd, NULL))
return FALSE;
bcptr = bcptr->outer;
}
@@ -2668,7 +2742,6 @@ return TRUE;
}
-
/*************************************************
* Check for POSIX class syntax *
*************************************************/
@@ -5392,7 +5465,7 @@ for (;; ptr++)
pcre_uchar *scode = bracode;
do
{
- if (could_be_empty_branch(scode, ketcode, utf, cd))
+ if (could_be_empty_branch(scode, ketcode, utf, cd, NULL))
{
*bracode += OP_SBRA - OP_BRA;
break;
diff --git a/erts/emulator/pcre/pcre_internal.h b/erts/emulator/pcre/pcre_internal.h
index af436bd99b..eb0db89619 100644
--- a/erts/emulator/pcre/pcre_internal.h
+++ b/erts/emulator/pcre/pcre_internal.h
@@ -2455,6 +2455,13 @@ typedef struct branch_chain {
pcre_uchar *current_branch;
} branch_chain;
+/* Structure for mutual recursion detection. */
+
+typedef struct recurse_check {
+ struct recurse_check *prev;
+ const pcre_uchar *group;
+} recurse_check;
+
/* Structure for items in a linked list that represents an explicit recursive
call within the pattern; used by pcre_exec(). */

View file

@ -0,0 +1,58 @@
From: Daniel Sommermann <dcsommer@whatsapp.com>
Date: Fri, 20 May 2016 15:47:16 -0700
Subject: [PATCH] Make inet:gethostbyname respect resolver option `inet6`
This makes the implementation text of inet:gethostbyname/1 identical to
that of inet_res:gethostbyname/1. I also copied over the doc note about
this resolver option.
diff --git a/lib/kernel/doc/src/inet.xml b/lib/kernel/doc/src/inet.xml
index 088d78c1d6..f38af7a06b 100644
--- a/lib/kernel/doc/src/inet.xml
+++ b/lib/kernel/doc/src/inet.xml
@@ -11,7 +11,7 @@
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
-
+
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
@@ -184,7 +184,12 @@ fe80::204:acff:fe17:bf38
<name name="gethostbyname" arity="1"/>
<fsummary>Return a hostent record for the host with the given name</fsummary>
<desc>
- <p>Returns a <c>hostent</c> record given a hostname.</p>
+ <p>Returns a <c>hostent</c> record for the host with the specified
+ hostname.</p>
+ <p>If resolver option <c>inet6</c> is <c>true</c>,
+ an IPv6 address is looked up. If that fails,
+ the IPv4 address is looked up and returned on
+ IPv6-mapped IPv4 format.</p>
</desc>
</func>
<func>
@@ -1288,4 +1293,3 @@ setcap cap_sys_admin,cap_sys_ptrace,cap_dac_read_search+epi beam.smp
</list>
</section>
</erlref>
-
diff --git a/lib/kernel/src/inet.erl b/lib/kernel/src/inet.erl
index c1ae99ea24..713a9cf725 100644
--- a/lib/kernel/src/inet.erl
+++ b/lib/kernel/src/inet.erl
@@ -439,7 +439,12 @@ getstat(Socket,What) ->
Hostent :: hostent().
gethostbyname(Name) ->
- gethostbyname_tm(Name, inet, false).
+ case inet_db:res_option(inet6) of
+ true ->
+ gethostbyname_tm(Name, inet6, false);
+ false ->
+ gethostbyname_tm(Name, inet, false)
+ end.
-spec gethostbyname(Hostname, Family) ->
{ok, Hostent} | {error, posix()} when

View file

@ -0,0 +1,26 @@
From: John Eckersberg <jeckersb@redhat.com>
Date: Wed, 14 Jun 2017 12:32:17 -0400
Subject: [PATCH] Fix erl_epmd:port_please when using IPv6
This mirrors the behavior of inet:gethostbyname when no family or
timeout is supplied.
diff --git a/lib/kernel/src/erl_epmd.erl b/lib/kernel/src/erl_epmd.erl
index ec2e3309c8..07bfb451ae 100644
--- a/lib/kernel/src/erl_epmd.erl
+++ b/lib/kernel/src/erl_epmd.erl
@@ -79,7 +79,13 @@ port_please(Node, EpmdAddr, Timeout) ->
port_please1(Node,HostName, Timeout) ->
- case inet:gethostbyname(HostName, inet, Timeout) of
+ Family = case inet_db:res_option(inet6) of
+ true ->
+ inet6;
+ false ->
+ inet
+ end,
+ case inet:gethostbyname(HostName, Family, Timeout) of
{ok,{hostent, _Name, _ , _Af, _Size, [EpmdAddr | _]}} ->
get_port(Node, EpmdAddr, Timeout);
Else ->

View file

@ -1 +1 @@
fd9934b664769500f3216f688eb57493 otp-OTP-18.3.4.2.tar.gz
SHA512 (otp-OTP-18.3.4.5.tar.gz) = 359562801008c8623c24a26149ee2253474e24c3d2884acdfb4f15b4a284c9a5dbc02a9da80a4b344912239452d8742dd467ac47d452c72c16637dfe05021736