Sha256: a09ea137300c20b0ce6a8b6fba17e08d8578bae881c0f92d0ee8ba826360cbe9

Contents?: true

Size: 437 Bytes

Versions: 6

Compression:

Stored size: 437 Bytes

Contents

# SHA1 checksum generator
bs = ENV['bs'] ? ENV['bs'].to_i : 4096
require 'digest/sha1'
use Rack::ContentLength
app = lambda do |env|
  /\A100-continue\z/i =~ env['HTTP_EXPECT'] and
    return [ 100, {}, [] ]
  digest = Digest::SHA1.new
  input = env['rack.input']
  buf = input.read(bs)
  begin
    digest.update(buf)
  end while input.read(bs, buf)

  [ 200, {'Content-Type' => 'text/plain'}, [ digest.hexdigest << "\n" ] ]
end
run app

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rainbows-0.5.0 t/sha1.ru
rainbows-0.4.0 t/sha1.ru
rainbows-0.3.0 t/sha1.ru
rainbows-0.2.0 t/sha1.ru
rainbows-0.1.1 t/sha1.ru
rainbows-0.1.0 t/sha1.ru