add IGNORED_KEYS for options used in signature calculations

This commit is contained in:
Michal Papis 2014-11-05 15:48:43 +01:00
parent cbc2df1ca0
commit 234fd8793b
No known key found for this signature in database
GPG key ID: E206C29FBF04FF17

View file

@ -6,6 +6,9 @@ require 'cgi'
module SimpleOAuth
class Header
ATTRIBUTE_KEYS = [:callback, :consumer_key, :nonce, :signature_method, :timestamp, :token, :verifier, :version] unless defined? ::SimpleOAuth::Header::ATTRIBUTE_KEYS
IGNORED_KEYS = [:consumer_secret, :token_secret] unless defined? ::SimpleOAuth::Header::IGNORED_KEYS
attr_reader :method, :params, :options
class << self
@ -82,6 +85,7 @@ module SimpleOAuth
def attributes
matching_keys, extra_keys = options.keys.partition { |key| ATTRIBUTE_KEYS.include?(key) }
extra_keys -= IGNORED_KEYS
if options[:ignore_extra_keys] || extra_keys.empty?
Hash[options.select { |key, _value| matching_keys.include?(key) }.collect { |key, value| [:"oauth_#{key}", value] }]
else