1 module Puppet::Parser::Functions
2 newfunction(:hmac, :type => :rvalue) do |args|
3 secretfile = args.shift()
9 secret = File.new(secretfile, "r").read
11 raise Puppet::ParseError, "Error loading secret from #{secretfile}: #{e.message}\n#{e.backtrace}"
14 return OpenSSL::HMAC.hexdigest(OpenSSL::Digest::Digest.new('sha256'), secret, data)
19 # vim:set shiftwidth=2: