Skip to content

Commit

Permalink
Fix some more code smells
Browse files Browse the repository at this point in the history
  • Loading branch information
excpt committed Dec 22, 2015
1 parent e556eb9 commit a0815ee
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 11 deletions.
11 changes: 4 additions & 7 deletions lib/jwt.rb
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ def encode(payload, key, algorithm = 'HS256', header_fields = {})
def decode(jwt, key = nil, verify = true, options = {}, &keyfinder)
fail(JWT::DecodeError, 'Nil JSON web token') unless jwt

default_options = {
options = {
verify_expiration: true,
verify_not_before: true,
verify_iss: false,
Expand All @@ -116,16 +116,11 @@ def decode(jwt, key = nil, verify = true, options = {}, &keyfinder)
verify_aud: false,
verify_sub: false,
leeway: 0
}

options = default_options.merge(options)
}.merge(options)

decoder = Decode.new jwt, key, verify, options, &keyfinder

header, payload, signature, signing_input = decoder.decode_segments

decoder.verify

fail(JWT::DecodeError, 'Not enough or too many segments') unless header && payload

if verify
Expand All @@ -136,6 +131,8 @@ def decode(jwt, key = nil, verify = true, options = {}, &keyfinder)
verify_signature(algo, key, signing_input, signature)
end

decoder.verify

[payload, header]
end

Expand Down
5 changes: 2 additions & 3 deletions lib/jwt/decode.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
module JWT
extend JWT::Json

# Decoding logic for JWT
class Decode
attr_reader :header, :payload, :signature

Expand Down Expand Up @@ -48,9 +49,7 @@ def verify
@options.each do |key, val|
next if key == :leeway

if val == true
Verify.send key, payload, @options
end
Verify.send(key, payload, @options) if val
end
end
end
Expand Down
2 changes: 1 addition & 1 deletion lib/jwt/verify.rb
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def self.verify_iat(payload, options)
end
end

def self.verify_jti(payload, options)
def self.verify_jti(payload, _options)
fail(JWT::InvalidJtiError, 'Missing jti') if payload['jti'].to_s == ''
end

Expand Down

0 comments on commit a0815ee

Please sign in to comment.