summaryrefslogtreecommitdiffstats
path: root/web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 02:57:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 02:57:58 +0000
commitbe1c7e50e1e8809ea56f2c9d472eccd8ffd73a97 (patch)
tree9754ff1ca740f6346cf8483ec915d4054bc5da2d /web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb
parentInitial commit. (diff)
downloadnetdata-upstream.tar.xz
netdata-upstream.zip
Adding upstream version 1.44.3.upstream/1.44.3upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb')
-rw-r--r--web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb46
1 files changed, 46 insertions, 0 deletions
diff --git a/web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb b/web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb
new file mode 100644
index 00000000..7779f54b
--- /dev/null
+++ b/web/server/h2o/libh2o/deps/mruby-digest/mrblib/digest.rb
@@ -0,0 +1,46 @@
+if Object.const_defined? :Digest
+module Digest
+ class Base
+ def self.digest(data)
+ self.new.update(data).digest
+ end
+ def self.file(path)
+ self.new.update(File.open(path).read)
+ end
+ def self.hexdigest(data)
+ self.new.update(data).hexdigest
+ end
+ def ==(other)
+ if other.kind_of? String
+ self.hexdigest == other
+ else
+ self.digest == other.digest
+ end
+ end
+ def file(path)
+ self.update(File.open(path).read)
+ end
+ def hexdigest!
+ x = self.hexdigest
+ self.reset
+ x
+ end
+
+ alias length digest_length
+ alias size digest_length
+ alias to_s hexdigest
+ alias << update
+ end
+
+ class HMAC
+ def self.digest(data, key, digest)
+ self.new(key, digest).update(data).digest
+ end
+ def self.hexdigest(data, key, digest)
+ self.new(key, digest).update(data).hexdigest
+ end
+
+ alias << update
+ end
+end
+end