diff options
author | Harald Welte <laforge@gnumonks.org> | 2018-10-07 11:10:42 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2018-10-07 11:15:00 +0200 |
commit | a02280fa7707fbaaa4b169752d2a5e5943bd9932 (patch) | |
tree | 69057991272b149a4dc12a45c75582c3861a46c4 | |
parent | 9b6bfccdd791cb2e8ac7e4dbdf2949b5b303423e (diff) |
redmine: Fix openid
For some reason, redmine:3.4 ships with ancient (2014) ruby-openid,
which is no longer compatible with the way how ruby handles HMAC.
Change-Id: I60f6f1ede059accf6b29891abcfe3b2529744e8a
-rw-r--r-- | redmine/Dockerfile | 3 | ||||
-rw-r--r-- | redmine/hmac.diff | 21 |
2 files changed, 24 insertions, 0 deletions
diff --git a/redmine/Dockerfile b/redmine/Dockerfile index 25f6308..488d6f4 100644 --- a/redmine/Dockerfile +++ b/redmine/Dockerfile @@ -7,3 +7,6 @@ RUN apt-get update && \ mscgen \ patch && \ apt-get clean + +ADD hmac.diff /tmp/hmac.diff +RUN cd / && patch -p0 < /tmp/hmac.diff diff --git a/redmine/hmac.diff b/redmine/hmac.diff new file mode 100644 index 0000000..197960b --- /dev/null +++ b/redmine/hmac.diff @@ -0,0 +1,21 @@ +--- usr/local/bundle/gems/ruby-openid-2.3.0/lib/openid/cryptutil.rb.old 2018-10-07 08:53:33.612724431 +0000 ++++ usr/local/bundle/gems/ruby-openid-2.3.0/lib/openid/cryptutil.rb 2018-10-07 08:54:03.016525355 +0000 +@@ -39,6 +39,6 @@ + def CryptUtil.hmac_sha1(key, text) +- if Digest.const_defined? :HMAC +- Digest::HMAC.new(key,Digest::SHA1).update(text).digest ++ if defined? OpenSSL ++ OpenSSL::HMAC.digest(OpenSSL::Digest::SHA1.new, key, text) + else + return HMAC::SHA1.digest(key, text) + end +@@ -50,7 +50,7 @@ + + def CryptUtil.hmac_sha256(key, text) +- if Digest.const_defined? :HMAC +- Digest::HMAC.new(key,Digest::SHA256).update(text).digest ++ if defined? OpenSSL ++ OpenSSL::HMAC.digest(OpenSSL::Digest::SHA256.new, key, text) + else + return HMAC::SHA256.digest(key, text) + end |