aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v5/shared_markup_alt.rb
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2014-05-25 10:06:59 -0400
committerRalph Amissah <ralph@amissah.com>2014-05-25 10:06:59 -0400
commitdcb004beebc9551e19e8380702aaa7c38224d787 (patch)
tree786d575295c7f7a1536ba9ba954043d475fd8a49 /lib/sisu/v5/shared_markup_alt.rb
parentdebian/changelog (5.3.6-1) (diff)
parentv5: merge v6 to v5, version bump to 5.4.*, reason adds structure check (diff)
Merge tag 'sisu_5.4.0' into debian/sid
SiSU 5.4.0
Diffstat (limited to 'lib/sisu/v5/shared_markup_alt.rb')
-rw-r--r--lib/sisu/v5/shared_markup_alt.rb20
1 files changed, 16 insertions, 4 deletions
diff --git a/lib/sisu/v5/shared_markup_alt.rb b/lib/sisu/v5/shared_markup_alt.rb
index 5a37c934..1fb078c6 100644
--- a/lib/sisu/v5/shared_markup_alt.rb
+++ b/lib/sisu/v5/shared_markup_alt.rb
@@ -207,20 +207,32 @@ module SiSU_TextRepresentation
@t_o,@s=x,x.obj.dup
end
@env ||=SiSU_Env::InfoEnv.new(@md.fns)
- @sha_ =((@env.digest.type =='sha256') ? true : false)
+ @sha_ = @env.digest(@md.opt).type
begin
- @sha_ ? (require 'digest/sha2') : (require 'digest/md5')
+ case @sha_
+ when :sha512
+ require 'digest/sha2'
+ when :sha256
+ require 'digest/sha2'
+ when :md5
+ require 'digest/md5'
+ end
rescue LoadError
SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia).error((@sha_ ? 'digest/sha2' : 'digest/md5') + ' NOT FOUND')
end
end
def digest(txt)
d=nil
- if @sha_
+ case @sha_
+ when :sha512
+ for hash_class in [ Digest::SHA512 ]
+ d=hash_class.hexdigest(txt)
+ end
+ when :sha256
for hash_class in [ Digest::SHA256 ]
d=hash_class.hexdigest(txt)
end
- else
+ when :md5
for hash_class in [ Digest::MD5 ]
d=hash_class.hexdigest(txt)
end