730e2efdc80b4813c16b394fbb39afd935bda449
7 split_header_value(str
).inject(new
) do |header
, param
|
8 k
, v
= param
.split('=', 2)
14 def self.dequote(str
) # From WEBrick::HTTPUtils
15 ret
= (/\A"(.*)"\Z/ =~ str
) ? $1 : str
.dup
16 ret
.gsub
!(/\\(.)/, "\\1")
20 def self.split_header_value(str
)
21 str
.scan( /(\w+\=(?:"[^\"]+"|[^,]+))/n
).collect
{ |v
| v
[0] }
27 yield self if block_given
?
38 UNQUOTED
= ['qop', 'nc', 'stale']
41 inject([]) do |parts
, (k
, v
)|
42 parts
<< "#{k}=" + (UNQUOTED
.include?(k
) ? v
.to_s
: quote(v
))
47 def quote(str
) # From WEBrick::HTTPUtils
48 '"' << str
.gsub(/[\\\"]/o
, "\\\1") << '"'