aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lang/erlang/Makefile22
-rw-r--r--lang/erlang/files/patch-lib_ssl_src_ssl__handshake.erl15
-rw-r--r--lang/erlang/files/patch-lib_ssl_test_ssl__handshake__SUITE.erl27
-rw-r--r--lang/erlang/pkg-plist5
4 files changed, 47 insertions, 22 deletions
diff --git a/lang/erlang/Makefile b/lang/erlang/Makefile
index f503974c80f4..c183c057e341 100644
--- a/lang/erlang/Makefile
+++ b/lang/erlang/Makefile
@@ -3,6 +3,7 @@
PORTNAME= erlang
PORTVERSION= 17.3
+PORTREVISION= 1
PORTEPOCH= 3
CATEGORIES= lang parallel java
MASTER_SITES= http://www.erlang.org/download/:erlangorg \
@@ -140,7 +141,6 @@ CONFIGURE_ARGS+=--without-odbc
ERLANG_MAN= otp_doc_man_${ERL_RELEASE}.tar.gz
ERLANG_DOCS= otp_doc_html_${ERL_RELEASE}.tar.gz
-ERLANG_PLIST= ${WRKDIR}/pkg-plist
.if ${PORT_OPTIONS:MTHREADS}
CONFIGURE_ARGS+=--enable-threads
@@ -188,7 +188,7 @@ post-install:
-C ${STAGEDIR}${PREFIX}/lib/${ERLANG_LIB} \
"man/man$${SECTION}/*.$${SECTION}" || ${TRUE}; \
done
- @${RM} -rf ${STAGEDIR}${PREFIX}/lib/${ERLANG_LIB}/man/cat?
+ ${RM} -rf ${STAGEDIR}${PREFIX}/lib/${ERLANG_LIB}/man/cat?
.if ${PORT_OPTIONS:MDOCS}
${TAR} --unlink -xzpf ${DISTDIR}/${DIST_SUBDIR}/${ERLANG_DOCS} \
@@ -203,23 +203,11 @@ post-install:
@cd ${STAGEDIR}${PREFIX}; ${FIND} lib/${ERLANG_LIB}/* -type d -empty \
| ${SORT} \
- | ${SED} -e 's#^#@exec ${MKDIR} %D/#g' \
- > ${ERLANG_PLIST}
+ | ${SED} -e 's#^#@dir #g' \
+ >> ${TMPPLIST}
@cd ${STAGEDIR}${PREFIX}; ${FIND} lib/${ERLANG_LIB}/* -type f -o -type l \
| ${SORT} \
- >> ${ERLANG_PLIST}
-
- @cd ${STAGEDIR}${PREFIX}; ${FIND} lib/${ERLANG_LIB}/* -type d \
- | ${SORT} -r \
- | ${SED} -e 's/^/@dirrm /g' \
- >> ${ERLANG_PLIST}
-
- @${ECHO_CMD} "r ${TMPPLIST}" > ${WRKDIR}/ex.script
- @${ECHO_CMD} "/Insert PLIST here" >> ${WRKDIR}/ex.script
- @${ECHO_CMD} "d" >> ${WRKDIR}/ex.script
- @${ECHO_CMD} "r ${ERLANG_PLIST}" >> ${WRKDIR}/ex.script
- @${ECHO_CMD} "x!" >> ${WRKDIR}/ex.script
- @cd ${WRKDIR}; ex < ex.script
+ >> ${TMPPLIST}
.include <bsd.port.mk>
diff --git a/lang/erlang/files/patch-lib_ssl_src_ssl__handshake.erl b/lang/erlang/files/patch-lib_ssl_src_ssl__handshake.erl
new file mode 100644
index 000000000000..d415c9a9c802
--- /dev/null
+++ b/lang/erlang/files/patch-lib_ssl_src_ssl__handshake.erl
@@ -0,0 +1,15 @@
+
+$FreeBSD$
+
+--- lib/ssl/src/ssl_handshake.erl.orig
++++ lib/ssl/src/ssl_handshake.erl
+@@ -1732,6 +1732,9 @@
+ #ec_point_formats{ec_point_format_list =
+ ECPointFormats}});
+
++dec_hello_extensions(<<?UINT16(?SNI_EXT), ?UINT16(Len), Rest/binary>>, Acc) when Len == 0 ->
++ dec_hello_extensions(Rest, Acc#hello_extensions{sni = ""}); %% Server may send an empy SNI
++
+ dec_hello_extensions(<<?UINT16(?SNI_EXT), ?UINT16(Len),
+ ExtData:Len/binary, Rest/binary>>, Acc) ->
+ <<?UINT16(_), NameList/binary>> = ExtData,
diff --git a/lang/erlang/files/patch-lib_ssl_test_ssl__handshake__SUITE.erl b/lang/erlang/files/patch-lib_ssl_test_ssl__handshake__SUITE.erl
new file mode 100644
index 000000000000..fd34b5e50bba
--- /dev/null
+++ b/lang/erlang/files/patch-lib_ssl_test_ssl__handshake__SUITE.erl
@@ -0,0 +1,27 @@
+
+$FreeBSD$
+
+--- lib/ssl/test/ssl_handshake_SUITE.erl.orig
++++ lib/ssl/test/ssl_handshake_SUITE.erl
+@@ -39,6 +39,7 @@
+ decode_unknown_hello_extension_correctly,
+ encode_single_hello_sni_extension_correctly,
+ decode_single_hello_sni_extension_correctly,
++ decode_empty_server_sni_correctly,
+ select_proper_tls_1_2_rsa_default_hashsign].
+
+ %%--------------------------------------------------------------------
+@@ -106,6 +107,13 @@
+ Decoded = ssl_handshake:decode_hello_extensions(SNI),
+ Exts = Decoded.
+
++decode_empty_server_sni_correctly(_Config) ->
++ Exts = #hello_extensions{sni = ""},
++ SNI = <<?UINT16(?SNI_EXT),?UINT16(0)>>,
++ Decoded = ssl_handshake:decode_hello_extensions(SNI),
++ Exts = Decoded.
++
++
+ select_proper_tls_1_2_rsa_default_hashsign(_Config) ->
+ % RFC 5246 section 7.4.1.4.1 tells to use {sha1,rsa} as default signature_algorithm for RSA key exchanges
+ {sha, rsa} = ssl_handshake:select_hashsign_algs(undefined, ?rsaEncryption, {3,3}),
diff --git a/lang/erlang/pkg-plist b/lang/erlang/pkg-plist
index 5fbdd5aaa8c9..b3991a1062b1 100644
--- a/lang/erlang/pkg-plist
+++ b/lang/erlang/pkg-plist
@@ -9,14 +9,9 @@ bin/run_erl
bin/to_erl
bin/typer
etc/man.d/erlang.conf
-@comment Insert PLIST here
-@comment -=[ begin PLIST.lib-erlang ]=-
-@comment -=[ end PLIST.lib-erlang ]=-
-@dirrmtry lib/%%ERLANG_LIB%%
%%PORTDOCS%%%%DOCSDIR%%/armstrong_thesis_2003.pdf
%%PORTDOCS%%%%DOCSDIR%%/bjarnelic.pdf
%%PORTDOCS%%%%DOCSDIR%%/erlang-book-part1.pdf
%%PORTDOCS%%%%DOCSDIR%%/master_thesis_patterns.pdf
%%PORTDOCS%%%%DOCSDIR%%/mnesia_overview.pdf
%%PORTDOCS%%%%DOCSDIR%%/programming_rules.pdf
-%%PORTDOCS%%@dirrm %%DOCSDIR%%