summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-im/ejabberd/files/ejabberd-2.1.5-md2-optional.patch')
-rw-r--r--net-im/ejabberd/files/ejabberd-2.1.5-md2-optional.patch259
1 files changed, 0 insertions, 259 deletions
diff --git a/net-im/ejabberd/files/ejabberd-2.1.5-md2-optional.patch b/net-im/ejabberd/files/ejabberd-2.1.5-md2-optional.patch
deleted file mode 100644
index e11cad3..0000000
--- a/net-im/ejabberd/files/ejabberd-2.1.5-md2-optional.patch
+++ /dev/null
@@ -1,259 +0,0 @@
-commit d2d8a09b4afdb5f77b903411ff16fbb0b739d3e4
-Author: Evgeniy Khramtsov <ekhramtsov@process-one.net>
-Date: Sat Aug 7 22:04:57 2010 +1000
-
- Make MD2 autodetected (EJAB-1285)
-
-diff --git a/src/Makefile.in b/src/Makefile.in
-index 7d225f3..4e56181 100644
---- a/src/Makefile.in
-+++ b/src/Makefile.in
-@@ -64,6 +64,11 @@ ifeq (@transient_supervisors@, false)
- EFLAGS+=-DNO_TRANSIENT_SUPERVISORS
- endif
-
-+ifeq (@md2@, true)
-+ EFLAGS+=-DHAVE_MD2
-+ ERLANG_CFLAGS += -DHAVE_MD2
-+endif
-+
- INSTALL_EPAM=
- ifeq (@pam@, pam)
- INSTALL_EPAM=install -m 750 $(O_USER) epam $(PBINDIR)
-diff --git a/src/configure.ac b/src/configure.ac
-index 1497643..1d25dd8 100644
---- a/src/configure.ac
-+++ b/src/configure.ac
-@@ -148,6 +148,9 @@ if test "$ENABLEUSER" != ""; then
- AC_SUBST([INSTALLUSER], [$ENABLEUSER])
- fi
-
-+AC_CHECK_HEADER(openssl/md2.h, md2=true, md2=false)
-+AC_SUBST(md2)
-+
- AC_CANONICAL_SYSTEM
- #AC_DEFINE_UNQUOTED(CPU_VENDOR_OS, "$target")
- #AC_SUBST(target_os)
-diff --git a/src/mod_caps.erl b/src/mod_caps.erl
-index 7fb011e..d9f4f30 100644
---- a/src/mod_caps.erl
-+++ b/src/mod_caps.erl
-@@ -276,25 +276,8 @@ feature_response(#iq{type = result,
- sub_el = [{xmlelement, _, _, Els}]},
- Host, From, Caps, [SubNode | SubNodes]) ->
- BinaryNode = node_to_binary(Caps#caps.node, SubNode),
-- IsValid = case Caps#caps.hash of
-- "md2" ->
-- Caps#caps.version == make_disco_hash(Els, md2);
-- "md5" ->
-- Caps#caps.version == make_disco_hash(Els, md5);
-- "sha-1" ->
-- Caps#caps.version == make_disco_hash(Els, sha1);
-- "sha-224" ->
-- Caps#caps.version == make_disco_hash(Els, sha224);
-- "sha-256" ->
-- Caps#caps.version == make_disco_hash(Els, sha256);
-- "sha-384" ->
-- Caps#caps.version == make_disco_hash(Els, sha384);
-- "sha-512" ->
-- Caps#caps.version == make_disco_hash(Els, sha512);
-- _ ->
-- true
-- end,
-- if IsValid ->
-+ case check_hash(Caps, Els) of
-+ true ->
- Features = lists:flatmap(
- fun({xmlelement, "feature", FAttrs, _}) ->
- [xml:get_attr_s("var", FAttrs)];
-@@ -304,7 +287,7 @@ feature_response(#iq{type = result,
- mnesia:dirty_write(
- #caps_features{node_pair = BinaryNode,
- features = features_to_binary(Features)});
-- true ->
-+ false ->
- mnesia:dirty_write(#caps_features{node_pair = BinaryNode})
- end,
- feature_request(Host, From, Caps, SubNodes);
-@@ -349,6 +332,7 @@ make_my_disco_hash(Host) ->
- ""
- end.
-
-+-ifdef(HAVE_MD2).
- make_disco_hash(DiscoEls, Algo) ->
- Concat = [concat_identities(DiscoEls),
- concat_features(DiscoEls),
-@@ -370,6 +354,64 @@ make_disco_hash(DiscoEls, Algo) ->
- sha:sha512(Concat)
- end).
-
-+check_hash(Caps, Els) ->
-+ case Caps#caps.hash of
-+ "md2" ->
-+ Caps#caps.version == make_disco_hash(Els, md2);
-+ "md5" ->
-+ Caps#caps.version == make_disco_hash(Els, md5);
-+ "sha-1" ->
-+ Caps#caps.version == make_disco_hash(Els, sha1);
-+ "sha-224" ->
-+ Caps#caps.version == make_disco_hash(Els, sha224);
-+ "sha-256" ->
-+ Caps#caps.version == make_disco_hash(Els, sha256);
-+ "sha-384" ->
-+ Caps#caps.version == make_disco_hash(Els, sha384);
-+ "sha-512" ->
-+ Caps#caps.version == make_disco_hash(Els, sha512);
-+ _ ->
-+ true
-+ end.
-+-else.
-+make_disco_hash(DiscoEls, Algo) ->
-+ Concat = [concat_identities(DiscoEls),
-+ concat_features(DiscoEls),
-+ concat_info(DiscoEls)],
-+ base64:encode_to_string(
-+ if Algo == md5 ->
-+ crypto:md5(Concat);
-+ Algo == sha1 ->
-+ crypto:sha(Concat);
-+ Algo == sha224 ->
-+ sha:sha224(Concat);
-+ Algo == sha256 ->
-+ sha:sha256(Concat);
-+ Algo == sha384 ->
-+ sha:sha384(Concat);
-+ Algo == sha512 ->
-+ sha:sha512(Concat)
-+ end).
-+
-+check_hash(Caps, Els) ->
-+ case Caps#caps.hash of
-+ "md5" ->
-+ Caps#caps.version == make_disco_hash(Els, md5);
-+ "sha-1" ->
-+ Caps#caps.version == make_disco_hash(Els, sha1);
-+ "sha-224" ->
-+ Caps#caps.version == make_disco_hash(Els, sha224);
-+ "sha-256" ->
-+ Caps#caps.version == make_disco_hash(Els, sha256);
-+ "sha-384" ->
-+ Caps#caps.version == make_disco_hash(Els, sha384);
-+ "sha-512" ->
-+ Caps#caps.version == make_disco_hash(Els, sha512);
-+ _ ->
-+ true
-+ end.
-+-endif.
-+
- concat_features(Els) ->
- lists:usort(
- lists:flatmap(
-diff --git a/src/sha.erl b/src/sha.erl
-index 64c15c1..06dd3c2 100644
---- a/src/sha.erl
-+++ b/src/sha.erl
-@@ -28,7 +28,11 @@
- -author('alexey@process-one.net').
-
- -export([start/0, sha/1, sha1/1, sha224/1, sha256/1, sha384/1,
-- sha512/1, md2/1]).
-+ sha512/1]).
-+
-+-ifdef(HAVE_MD2).
-+-export([md2/1]).
-+-endif.
-
- -include("ejabberd.hrl").
-
-@@ -80,8 +84,10 @@ sha384(Text) ->
- sha512(Text) ->
- erlang:port_control(?DRIVER, 512, Text).
-
-+-ifdef(HAVE_MD2).
- md2(Text) ->
- erlang:port_control(?DRIVER, 2, Text).
-+-endif.
-
- driver_path() ->
- Suffix = case os:type() of
-diff --git a/src/tls/Makefile.in b/src/tls/Makefile.in
-index 4458796..ee40f93 100644
---- a/src/tls/Makefile.in
-+++ b/src/tls/Makefile.in
-@@ -30,6 +30,11 @@ ifdef debug
- EFLAGS+=+debug_info +export_all
- endif
-
-+ifeq (@md2@, true)
-+ EFLAGS+=-DHAVE_MD2
-+ ERLANG_CFLAGS += -DHAVE_MD2
-+endif
-+
- ERLSHLIBS = ../tls_drv.so ../sha_drv.so
- OUTDIR = ..
- SOURCES = $(wildcard *.erl)
-diff --git a/src/tls/sha_drv.c b/src/tls/sha_drv.c
-index 13d6580..8e6de32 100644
---- a/src/tls/sha_drv.c
-+++ b/src/tls/sha_drv.c
-@@ -20,7 +20,9 @@
-
- #include <erl_driver.h>
- #include <openssl/sha.h>
-+#ifdef HAVE_MD2
- #include <openssl/md2.h>
-+#endif
-
- static ErlDrvData sha_drv_start(ErlDrvPort port, char *buf)
- {
-@@ -36,11 +38,13 @@ static int sha_drv_control(ErlDrvData handle,
- ErlDrvBinary *b = NULL;
-
- switch (command) {
-+#ifdef HAVE_MD2
- case 2:
- rlen = MD2_DIGEST_LENGTH;
- b = driver_alloc_binary(rlen);
- if (b) MD2((unsigned char*)buf, len, (unsigned char*)b->orig_bytes);
- break;
-+#endif
- case 224:
- rlen = SHA224_DIGEST_LENGTH;
- b = driver_alloc_binary(rlen);
-
-
-commit b14899d41ae8f0d3e750ba42e297ea5815bf30c1
-Author: Badlop <badlop@process-one.net>
-Date: Sat Aug 7 19:42:56 2010 +0200
-
- Update the 'configure' script
-
-diff --git a/src/configure b/src/configure
-index 2d44646..d515abc 100755
---- a/src/configure
-+++ b/src/configure
-@@ -608,6 +608,7 @@ build_os
- build_vendor
- build_cpu
- build
-+md2
- INSTALLUSER
- SSL_CFLAGS
- SSL_LIBS
-@@ -4822,6 +4823,16 @@ if test "$ENABLEUSER" != ""; then
-
- fi
-
-+ac_fn_c_check_header_mongrel "$LINENO" "openssl/md2.h" "ac_cv_header_openssl_md2_h" "$ac_includes_default"
-+if test "x$ac_cv_header_openssl_md2_h" = x""yes; then :
-+ md2=true
-+else
-+ md2=false
-+fi
-+
-+
-+
-+
- ac_aux_dir=
- for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
- for ac_t in install-sh install.sh shtool; do