summaryrefslogtreecommitdiff
path: root/lib/webrick/httputils.rb
AgeCommit message (Collapse)Author
2019-10-24[ruby/webrick] Remove the squishing of whitespace in header valuesJeremy Evans
While the stripping of header values is required by RFC 2616 4.2 and RFC 7230 3.2.4, the squishing is not and can break things, such as when one header contains an HMAC of another header. Fixes Ruby Bug 7021. https://github.com/ruby/webrick/commit/8b96088a86
2019-06-24Adds WebAssembly MIME typeRob
2017-12-22webrick/httputils: note Kernel#open behaviornormal
I don't know who uses the load_mime_types method; but it is conceivable that a user would want to read the results of a command instead of reading a regular file to load MIME types. None of the WEBrick-related code in Ruby or default/bundled gems seems to rely on this method; but it is likely 3rd-party code does. * lib/webrick/httputils.rb (load_mime_types): note Kernel#open behavior [Misc #14216] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-19Define the MIME type for JSON in WEBrick::HTTPUtils::DefaultMimeTypes.hsbt
[Feature #10798][ruby-core:67879] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16Add frozen_string_literal: false for all filesnaruse
When you change this to true, you may need to add more tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-20webrick: fix non-ascii escape bugsnobu
* lib/webrick/htmlutils.rb (WEBrick::HTMLUtils#escape): replace HTML meta chars even in non-ascii string. [Bug #8425] [ruby-core:55052] * lib/webrick/httputils.rb (WEBrick::HTTPUtils#{_escape,_unescape}): fix %-escape encodings. [Bug #8425] [ruby-core:55052] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-26* lib/webrick/accesslog.rb: Improved WEBrick documentation.drbrain
* lib/webrick/cgi.rb: ditto. * lib/webrick/config.rb: ditto. * lib/webrick/cookie.rb: ditto. * lib/webrick/httpauth/authenticator.rb: ditto. * lib/webrick/httpauth/basicauth.rb: ditto. * lib/webrick/httpauth/digestauth.rb: ditto. * lib/webrick/httpproxy.rb: ditto. * lib/webrick/httprequest.rb: ditto. * lib/webrick/httpresponse.rb: ditto. * lib/webrick/https.rb: ditto. * lib/webrick/httpserver.rb: ditto. * lib/webrick/httpservlet/cgihandler.rb: ditto. * lib/webrick/httpservlet/filehandler.rb: ditto. * lib/webrick/httpservlet/prochandler.rb: ditto. * lib/webrick/httputils.rb: ditto. * lib/webrick/httpversion.rb: ditto. * lib/webrick/log.rb: ditto. * lib/webrick/server.rb: ditto. * lib/webrick/ssl.rb: ditto. * lib/webrick/utils.rb: ditto. * lib/webrick/version.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-26* lib/webrick/httputils.rb: Add MIME Type definition of .js and .svg.naruse
patched by Hal Brodigan. [ruby-core:39704] [Bug #5365] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-10 * lib/webrick/accesslog.rb : Escape needed.shyouhei
* lib/webrick/httpstatus.rb : ditto. * lib/webrick/httprequest.rb : ditto. * lib/webrick/httputils.rb : ditto. * test/webrick/test_cgi.rb (TestWEBrickCGI::test_bad_): Test for it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-16* lib/webrick/httputils.rb (parse_form_data): escape boundary ofnaruse
multipart/form-data when embed in regexp. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06* {ext,lib,test}/**/*.rb: removed trailing spaces.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-25* lib/webrick/httputils.rb (WEBrick::HTTPUtils#split_header_value):nobu
reduce backtrack. based on a fix by Christian Neukirchen <chneukirchen AT gmail.com>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-01* lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):gotoyuzo
HTTPUtils::parse_header() takes a string. [ruby-dev:29931] * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): String does no longer have each method. * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-11-02* lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol shouldmatz
come earlier than String. * lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap): ditto. * lib/set.rb (TC_Set::test_s_new): strings are no longer Enumerable * lib/soap/property.rb (Property::load): ditto. * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto. * lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-30* lib/webrick/httputils.rb (WEBrick::HTTPUtils._escape): shouldgotoyuzo
use String#ord to get ascii code from the one-character string. [ruby-dev:28901] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-07* lib/webrick/httpproxy.rb (HTTPProxyServer#intialize),gotoyuzo
lib/webrick/httpserver.rb (HTTPServer#intialize), lib/webrick/httpservlet/cgihandler.rb (CGIHandler#initialize), lib/webrick/httpservlet/erbhandler.rb (ERBHandler#initialize), lib/webrick/httpservlet/filehandler.rb(DefaultFileHandler#initialize): super (called with no arguments) takes default value of optional arguments. [ruby-dev:26743] * lib/webrick/httputils.rb: add a media-type "text/html" for .xhtml. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-25* lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_query): shouldgotoyuzo
discard if key=val pair is empty. patch from Gary Wright. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-29* lib/webrick/cgi.rb: new methods WEBrick::CGI#[], WEBrick::CGI#loggergotoyuzo
and WEBrick::CGI#config. these are necessary to use an instance of WEBrick::CGI as the first argument of HTTPServlet#get_instance. (suggested by Tatsuki Sugiura) * lib/webrick/cgi.rb (WEBrick::CGI#initalize): set a dummy to @config[:ServerSoftware] if SERVER_SOFTWARE environment variable is not given. (WEBrick::CGI#start): req.path_info must be a String. (WEBrick::CGI::Socket#request_line): treat REQUEST_METHOD, PATH_INFO and SCRIPT_NAME to run in console. * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape_path): should not use String#split("/"). it removes trailing empty path component. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-10* lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line): shouldgotoyuzo
escape SCRIPT_NAME and PATH_INFO before being parsed as a URI. * lib/webrick/httputils.rb (WEBrick::HTTPUtils#escape_path): add new method to escape URI path component. * lib/webrick/ssl.rb (WEBrick::Config::SSL): the default value of :SSLEnable is false. * test/webrick/{test_cgi.rb,webrick.cgi}: new file. * test/webrick/utils.rb: require "webrick/https.h". git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-07* lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):gotoyuzo
should delete trailing LF from the result of pack("m*"). * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect): - should delete trailing LF from the result of pack("m*"). - clear Request-Line not to send the sesponse by HTTPServer#run. * lib/webrick/httputils (WEBrick::HTTPUtils.parse_qvalues): refine regexp (and change the name of a local variable). * lib/webrick/server.rb (WEBrick::Daemon.start): prepared stdio don't allow changing its mode. * test/webrick/*, sample/webrick/httpproxy.rb: add new files. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-12* lib/webrick/config.rb:gotoyuzo
add WEBrick::Config::FileHandler[:AcceptableLanguages]. * lib/webrick/httpservlet/filehandler.rb (WEBrick::HTTPServlet::FileHandler#set_filename): search files having suffix of language-name which Accept-Language header field includes if :AcceptableLanguages options is present. * lib/webrick/httpservlet/filehandler.rb (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to search servlet correspond to the suffix of filename. * lib/webrick/httprequest.rb: add attributes access methods: accept, accept_charset, accept_encoding, accept_language, content_length and content_type. * lib/webrick/httpresponse.rb: add attribute access methods: content_length, content_length=, content_type and content_type=. * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types): use the second suffix to detect media type. (the first suffix may be a language name.) * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues): add method to parse Accept header field. it returns an Array of values sorted by the qvalues. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-13* lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_range_header):gotoyuzo
fix regex for range-spec. * lib/webrick/httpservlet/filehandler.rb (WEBrick::HTTPServlet::DefaultFileHandler#make_partial_content): multipart/byteranges response was broken. * lib/xmlrpc/server.rb: refine example code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-26* lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape): shouldgotoyuzo
escape space. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-26* lib/webrick/httputils.rb (WEBrick:HTTPUtils::parse_header):gotoyuzo
refine regex for header-name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-18* lib/webrick/httputils.rb (parse_form_data): should return angotoyuzo
empty Hash if the body is empty. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-07* lib/webrick/httputils.rb (FormData#list): should not takegotoyuzo
a side effect for the receiver. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-23* lib/webrick: imported.gotoyuzo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e