From 1682dd24483278174310a18055ef362bb9c590a3 Mon Sep 17 00:00:00 2001 From: geemus Date: Thu, 23 Dec 2010 13:54:02 -0800 Subject: [PATCH] [aws] include port in host to sign bumps excon to version that includes port in host by default closes #122 --- fog.gemspec | 2 +- lib/fog/aws.rb | 2 +- lib/fog/aws/compute.rb | 1 + lib/fog/aws/elb.rb | 1 + lib/fog/aws/iam.rb | 1 + lib/fog/aws/simpledb.rb | 1 + 6 files changed, 6 insertions(+), 2 deletions(-) diff --git a/fog.gemspec b/fog.gemspec index a2e0fa804..e2759f85f 100644 --- a/fog.gemspec +++ b/fog.gemspec @@ -43,7 +43,7 @@ Gem::Specification.new do |s| ## List your runtime dependencies here. Runtime dependencies are those ## that are needed for an end user to actually USE your code. s.add_dependency('builder') - s.add_dependency('excon', '>=0.3.3') + s.add_dependency('excon', '>=0.3.6') s.add_dependency('formatador', '>=0.0.16') s.add_dependency('json') s.add_dependency('mime-types') diff --git a/lib/fog/aws.rb b/lib/fog/aws.rb index 25d41131c..991c8cdb8 100644 --- a/lib/fog/aws.rb +++ b/lib/fog/aws.rb @@ -58,7 +58,7 @@ module Fog body << "#{key}=#{CGI.escape(value.to_s).gsub(/\+/, '%20')}&" end end - string_to_sign = "POST\n#{options[:host]}\n#{options[:path]}\n" << body.chop + string_to_sign = "POST\n#{options[:host]}:#{options[:port]}\n#{options[:path]}\n" << body.chop signed_string = options[:hmac].sign(string_to_sign) body << "Signature=#{CGI.escape(Base64.encode64(signed_string).chomp!).gsub(/\+/, '%20')}" diff --git a/lib/fog/aws/compute.rb b/lib/fog/aws/compute.rb index b0610361c..5e0ee2bed 100644 --- a/lib/fog/aws/compute.rb +++ b/lib/fog/aws/compute.rb @@ -205,6 +205,7 @@ module Fog :hmac => @hmac, :host => @host, :path => @path, + :port => @port, :version => '2010-08-31' } ) diff --git a/lib/fog/aws/elb.rb b/lib/fog/aws/elb.rb index e28b8f17f..1e29fbb95 100644 --- a/lib/fog/aws/elb.rb +++ b/lib/fog/aws/elb.rb @@ -82,6 +82,7 @@ module Fog :hmac => @hmac, :host => @host, :path => @path, + :port => @port, :version => '2009-11-25' } ) diff --git a/lib/fog/aws/iam.rb b/lib/fog/aws/iam.rb index 554974f84..94033ee1e 100644 --- a/lib/fog/aws/iam.rb +++ b/lib/fog/aws/iam.rb @@ -81,6 +81,7 @@ module Fog :hmac => @hmac, :host => @host, :path => @path, + :port => @port, :version => '2010-05-08' } ) diff --git a/lib/fog/aws/simpledb.rb b/lib/fog/aws/simpledb.rb index 13018d8e6..d76975d41 100644 --- a/lib/fog/aws/simpledb.rb +++ b/lib/fog/aws/simpledb.rb @@ -140,6 +140,7 @@ module Fog :hmac => @hmac, :host => @host, :path => @path, + :port => @port, :version => '2009-04-15' } )