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
This commit is contained in:
parent
9e8b1a213d
commit
94973bbbe3
3 changed files with 54 additions and 0 deletions
|
@ -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>
|
||||
|
|
46
net-im/ejabberd/files/patch-deps_jose_src_jose__server.erl
Normal file
46
net-im/ejabberd/files/patch-deps_jose_src_jose__server.erl
Normal file
|
@ -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
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue