diff --git a/.gitignore b/.gitignore index 17c7274..79bb3a2 100644 --- a/.gitignore +++ b/.gitignore @@ -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 diff --git a/erlang.spec b/erlang.spec index 8d5649d..2f3532f 100644 --- a/erlang.spec +++ b/erlang.spec @@ -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 - 18.3.4.5-4 +- Fix EPMD port assignment in IPv6 env. (GH#1487) + +* Wed Jun 14 2017 Peter Lemenkov - 18.3.4.5-3 +- Fix DNS resolution if IPv4 is unavailable + +* Tue Mar 21 2017 Peter Lemenkov - 18.3.4.5-2 +- Fix for CVE-2016-10253 + +* Thu Feb 2 2017 Peter Lemenkov - 18.3.4.5-1 +- Ver. 18.3.4.5 + +* Tue Aug 16 2016 Peter Lemenkov - 18.3.4.4-1 +- Ver. 18.3.4.4 + * Tue Jul 26 2016 Peter Lemenkov - 18.3.4.2-1 - Ver. 18.3.4.2 diff --git a/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch b/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch index 2602d40..8edb62e 100644 --- a/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch +++ b/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Do not format man-pages and do not install miscellaneous Signed-off-by: Peter Lemenkov 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 . diff --git a/otp-0002-Remove-rpath.patch b/otp-0002-Remove-rpath.patch index 77418af..dd0a326 100644 --- a/otp-0002-Remove-rpath.patch +++ b/otp-0002-Remove-rpath.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Remove rpath Signed-off-by: Peter Lemenkov 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 diff --git a/otp-0003-Do-not-install-C-sources.patch b/otp-0003-Do-not-install-C-sources.patch index d4abd19..c8cfdab 100644 --- a/otp-0003-Do-not-install-C-sources.patch +++ b/otp-0003-Do-not-install-C-sources.patch @@ -14,7 +14,7 @@ https://bugzilla.redhat.com/818419 Signed-off-by: Peter Lemenkov 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 diff --git a/otp-0004-Do-not-install-Java-sources.patch b/otp-0004-Do-not-install-Java-sources.patch index d9ba9c4..b463baa 100644 --- a/otp-0004-Do-not-install-Java-sources.patch +++ b/otp-0004-Do-not-install-Java-sources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Do not install Java sources Signed-off-by: Peter Lemenkov 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: diff --git a/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch b/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch index b0c843e..a9b2589 100644 --- a/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch +++ b/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Do not install nteventlog and related doc-files on non-win32 Signed-off-by: Peter Lemenkov 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) diff --git a/otp-0006-Do-not-install-erlang-sources.patch b/otp-0006-Do-not-install-erlang-sources.patch index 2af76d2..7362a97 100644 --- a/otp-0006-Do-not-install-erlang-sources.patch +++ b/otp-0006-Do-not-install-erlang-sources.patch @@ -8,7 +8,7 @@ Signed-off-by: Peter Lemenkov Signed-off-by: Hans Ulrich Niedermann 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 diff --git a/otp-0007-Split-off-webtool-dependency-from-tools.patch b/otp-0007-Split-off-webtool-dependency-from-tools.patch index 9a06884..8c8188e 100644 --- a/otp-0007-Split-off-webtool-dependency-from-tools.patch +++ b/otp-0007-Split-off-webtool-dependency-from-tools.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Split off webtool dependency from tools Signed-off-by: Peter Lemenkov 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 @@ diff --git a/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch b/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch index d148331..efb3a4f 100644 --- a/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch +++ b/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch @@ -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) diff --git a/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch b/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch index 1d19ace..daf9e82 100644 --- a/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch +++ b/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch @@ -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) diff --git a/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch b/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch index d832978..3bd9868 100644 --- a/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch +++ b/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch @@ -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) diff --git a/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch b/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch index 8b8fd0d..7d118fc 100644 --- a/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch +++ b/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Respect -proto_dist switch while connection to EPMD Signed-off-by: Peter Lemenkov 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}}}; diff --git a/otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch b/otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch new file mode 100644 index 0000000..d3cedaa --- /dev/null +++ b/otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch @@ -0,0 +1,45 @@ +From: Sverker Eriksson +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 diff --git a/otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch b/otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch new file mode 100644 index 0000000..2f585c6 --- /dev/null +++ b/otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch @@ -0,0 +1,32 @@ +From: Sverker Eriksson +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*) diff --git a/otp-0014-Fix-CVE-2016-10253.patch b/otp-0014-Fix-CVE-2016-10253.patch new file mode 100644 index 0000000..ca5ab5d --- /dev/null +++ b/otp-0014-Fix-CVE-2016-10253.patch @@ -0,0 +1,318 @@ +From: Zephyr Pellerin +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(). */ + diff --git a/otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch b/otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch new file mode 100644 index 0000000..6801da6 --- /dev/null +++ b/otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch @@ -0,0 +1,58 @@ +From: Daniel Sommermann +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 + + Return a hostent record for the host with the given name + +-

Returns a hostent record given a hostname.

++

Returns a hostent record for the host with the specified ++ hostname.

++

If resolver option inet6 is true, ++ an IPv6 address is looked up. If that fails, ++ the IPv4 address is looked up and returned on ++ IPv6-mapped IPv4 format.

+
+ + +@@ -1288,4 +1293,3 @@ setcap cap_sys_admin,cap_sys_ptrace,cap_dac_read_search+epi beam.smp + + + +- +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 diff --git a/otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch b/otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch new file mode 100644 index 0000000..2d3efdf --- /dev/null +++ b/otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch @@ -0,0 +1,26 @@ +From: John Eckersberg +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 -> diff --git a/sources b/sources index 1a7d38d..4f1d585 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fd9934b664769500f3216f688eb57493 otp-OTP-18.3.4.2.tar.gz +SHA512 (otp-OTP-18.3.4.5.tar.gz) = 359562801008c8623c24a26149ee2253474e24c3d2884acdfb4f15b4a284c9a5dbc02a9da80a4b344912239452d8742dd467ac47d452c72c16637dfe05021736