git: 94973bbbe379 - main - net-im/ejabberd: Fix for lang/erlang update to 24.x
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 12 Oct 2021 12:23:53 UTC
The branch main has been updated by ashish: URL: https://cgit.FreeBSD.org/ports/commit/?id=94973bbbe379378b11aa53d9a43e4cb807c4b466 commit 94973bbbe379378b11aa53d9a43e4cb807c4b466 Author: Ashish SHUKLA <ashish@FreeBSD.org> AuthorDate: 2021-10-12 12:18:08 +0000 Commit: Ashish SHUKLA <ashish@FreeBSD.org> CommitDate: 2021-10-12 12:23:34 +0000 net-im/ejabberd: Fix for lang/erlang update to 24.x While here, also add the SQL files for other RDBMS supported by ejabberd PR: 259067 Reported by: Marko Cupać <marko dot cupac at mimar dot rs> MFH: 2021Q4 --- net-im/ejabberd/Makefile | 2 + .../files/patch-deps_jose_src_jose__server.erl | 46 ++++++++++++++++++++++ net-im/ejabberd/pkg-plist | 6 +++ 3 files changed, 54 insertions(+) diff --git a/net-im/ejabberd/Makefile b/net-im/ejabberd/Makefile index 67e6d60f2baa..7038251c355d 100644 --- a/net-im/ejabberd/Makefile +++ b/net-im/ejabberd/Makefile @@ -1,5 +1,6 @@ PORTNAME= ejabberd PORTVERSION= 21.07 +PORTREVISION= 1 CATEGORIES= net-im MAINTAINER= ashish@FreeBSD.org @@ -194,5 +195,6 @@ post-install: ${STAGEDIR}${DATADIR} @${CHMOD} +x ${STAGEDIR}${PREFIX}/${EJABBERD_LIBDIR}/${PORTNAME}-${PORTVERSION}/lib/eimp-${EIMP_VER}/priv/bin/eimp @${STRIP_CMD} ${STAGEDIR}${PREFIX}/${EJABBERD_LIBDIR}/${PORTNAME}-${PORTVERSION}/lib/eimp-${EIMP_VER}/priv/bin/eimp + @cd ${WRKSRC}/sql && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${EJABBERD_LIBDIR}/${PORTNAME}-${PORTVERSION}/priv/sql .include <bsd.port.post.mk> diff --git a/net-im/ejabberd/files/patch-deps_jose_src_jose__server.erl b/net-im/ejabberd/files/patch-deps_jose_src_jose__server.erl new file mode 100644 index 000000000000..be50a38e7244 --- /dev/null +++ b/net-im/ejabberd/files/patch-deps_jose_src_jose__server.erl @@ -0,0 +1,46 @@ +Source: https://github.com/potatosalad/erlang-jose/commit/833f81666a0f9fc31e7a3c2403d72e168a4a3209.patch + +--- deps/jose/src/jose_server.erl.orig 2018-12-31 15:47:40 UTC ++++ deps/jose/src/jose_server.erl +@@ -162,9 +162,7 @@ support_check() -> + + %% @private + check_ec_key_mode(_Fallback, Entries) -> +- ECPEMEntry = { +- 'ECPrivateKey', +- << ++ PEMBin = << + 48,119,2,1,1,4,32,104,152,88,12,19,82,251,156,171,31,222,207, + 0,76,115,88,210,229,36,106,137,192,81,153,154,254,226,38,247, + 70,226,157,160,10,6,8,42,134,72,206,61,3,1,7,161,68,3,66,0,4, +@@ -173,13 +171,23 @@ check_ec_key_mode(_Fallback, Entries) -> + 36,225,0,90,21,186,235,132,152,229,13,189,196,121,64,84,64, + 229,173,12,24,23,127,175,67,247,29,139,91 + >>, +- not_encrypted +- }, +- case public_key:pem_entry_decode(ECPEMEntry) of +- #'ECPrivateKey'{ privateKey = PrivateKey, publicKey = PublicKey } when is_list(PrivateKey) andalso is_tuple(PublicKey) -> +- [{ec_key_mode, list} | Entries]; +- #'ECPrivateKey'{ privateKey = PrivateKey, publicKey = PublicKey } when is_binary(PrivateKey) andalso is_binary(PublicKey) -> +- [{ec_key_mode, binary} | Entries] ++ PEMEntry = {'ECPrivateKey', PEMBin, not_encrypted}, ++ %% Erlang 24 changes 'ECPrivateKey' record in a way that makes record matching fail ++ %% when this module is compiled on Erlang 23 (or earlier) but runs on 24. ++ %% So we destructure tuples, as ugly as it may be. ++ %% ++ %% See erlang-jose#113 for details. ++ PrivateKey = case list_to_integer(erlang:system_info(otp_release)) >= 24 of ++ true -> ++ {'ECPrivateKey', _Version, PrivKey0, _Params, _PubKey0, _Attributes} = public_key:pem_entry_decode(PEMEntry), ++ PrivKey0; ++ false -> ++ {'ECPrivateKey', _Version, PrivKey0, _Params, _PubKey0} = public_key:pem_entry_decode(PEMEntry), ++ PrivKey0 ++ end, ++ case is_binary(PrivateKey) of ++ true -> [{ec_key_mode, binary} | Entries]; ++ _ -> [{ec_key_mode, list} | Entries] + end. + + %% @private diff --git a/net-im/ejabberd/pkg-plist b/net-im/ejabberd/pkg-plist index 14f8d2388840..dcee360dc44b 100644 --- a/net-im/ejabberd/pkg-plist +++ b/net-im/ejabberd/pkg-plist @@ -866,6 +866,12 @@ %%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/msgs/zh.msg %%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/lite.sql %%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/lite.new.sql +%%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/mssql.sql +%%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/mysql.new.sql +%%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/mysql.old-to-new.sql +%%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/mysql.sql +%%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/pg.new.sql +%%EJABBERD_LIBDIR%%/%%PORTNAME%%-%%PORTVERSION%%/priv/sql/pg.sql sbin/%%PORTNAME%%ctl %%DATADIR%%/captcha.sh %%PORTDOCS%%%%DOCSDIR%%/COPYING