diff options
author | Ralph Amissah <ralph@amissah.com> | 2014-05-25 10:06:59 -0400 |
---|---|---|
committer | Ralph Amissah <ralph@amissah.com> | 2014-05-25 10:06:59 -0400 |
commit | dcb004beebc9551e19e8380702aaa7c38224d787 (patch) | |
tree | 786d575295c7f7a1536ba9ba954043d475fd8a49 /lib/sisu/v5/shared_markup_alt.rb | |
parent | debian/changelog (5.3.6-1) (diff) | |
parent | v5: 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.rb | 20 |
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 |