Sha256: 7566b6a332456602c347e259b6d7ce2a0d3ab7612b64d60eb7b3c4a6d166ab59
Contents?: true
Size: 733 Bytes
Versions: 1
Compression:
Stored size: 733 Bytes
Contents
# A stupid HTTP BinData class to demonstrate the proxy require_relative '../bd_util' module DumbHttp class Headers < BinData::Array default_parameter read_until: lambda { element == '' } line line_end: "\r\n" end class BaseMessage < BinData::Record headers :headers def body_len (headers.snapshot.grep(/\AContent-Length: (\d+)/) { $1.to_i }).first || 0 end def summary; headers.first.sub(/HTTP\/\d\.\d/,'').strip; end end class Message < BaseMessage string :body, display_as: 'multiline', onlyif: lambda { body_len > 0 }, length: :body_len end class BinMessage < BaseMessage string :body, display_as: 'hexdump', onlyif: lambda { body_len > 0 }, length: :body_len end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
binproxy-1.0.0 | lib/binproxy/parsers/dumb_http.rb |