summaryrefslogtreecommitdiffstats
path: root/lib/puppet/network/http/mongrel
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2009-02-14 17:35:34 -0600
committerLuke Kanies <luke@madstop.com>2009-02-18 22:38:43 -0600
commit7bc41cefa0115067a2e9aab3dbd1924667c46dfe (patch)
treefb2ae6dad4610ae6d6d633c1aedde514e5568afb /lib/puppet/network/http/mongrel
parent992231a58daf8f0b489022f0af8ddcfb615bb0e1 (diff)
downloadpuppet-7bc41cefa0115067a2e9aab3dbd1924667c46dfe.tar.gz
puppet-7bc41cefa0115067a2e9aab3dbd1924667c46dfe.tar.xz
puppet-7bc41cefa0115067a2e9aab3dbd1924667c46dfe.zip
Adding clarity to query string handling in REST calls
We previously only handled simple strings as values, but we know handle true and false as booleans, we URI-escape all strings, and we can yaml-encode and then escape arrays of strings. This could get abused a bit, in that we're just yaml-dumping anything that's an array, but it should be pretty safe. Mmmm, should. Signed-off-by: Luke Kanies <luke@madstop.com>
Diffstat (limited to 'lib/puppet/network/http/mongrel')
-rw-r--r--lib/puppet/network/http/mongrel/rest.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/puppet/network/http/mongrel/rest.rb b/lib/puppet/network/http/mongrel/rest.rb
index 45d21ea62..04f413937 100644
--- a/lib/puppet/network/http/mongrel/rest.rb
+++ b/lib/puppet/network/http/mongrel/rest.rb
@@ -23,7 +23,9 @@ class Puppet::Network::HTTP::MongrelREST < Mongrel::HttpHandler
# Return the query params for this request. We had to expose this method for
# testing purposes.
def params(request)
- Mongrel::HttpRequest.query_parse(request.params["QUERY_STRING"]).merge(client_info(request))
+ params = Mongrel::HttpRequest.query_parse(request.params["QUERY_STRING"])
+ params = decode_params(params)
+ params.merge(client_info(request))
end
# what path was requested?