diff options
Diffstat (limited to 'users')
| -rw-r--r-- | users/leap_web_users.gemspec | 2 | ||||
| -rw-r--r-- | users/lib/warden/strategies/secure_remote_password.rb | 10 | ||||
| -rw-r--r-- | users/test/integration/api/account_flow_test.rb | 8 | 
3 files changed, 11 insertions, 9 deletions
diff --git a/users/leap_web_users.gemspec b/users/leap_web_users.gemspec index 013b44a..2f4b10c 100644 --- a/users/leap_web_users.gemspec +++ b/users/leap_web_users.gemspec @@ -17,6 +17,6 @@ Gem::Specification.new do |s|    s.add_dependency "leap_web_core", LeapWeb::VERSION -  s.add_dependency "ruby-srp", "~> 0.1.6" +  s.add_dependency "ruby-srp", "~> 0.1.7"    s.add_dependency "rails_warden"  end diff --git a/users/lib/warden/strategies/secure_remote_password.rb b/users/lib/warden/strategies/secure_remote_password.rb index 2dcd706..a97e795 100644 --- a/users/lib/warden/strategies/secure_remote_password.rb +++ b/users/lib/warden/strategies/secure_remote_password.rb @@ -28,6 +28,9 @@ module Warden          if client = validate            success!(User.find_by_login(client.username))          else +          Rails.logger.warn "Login attempt failed." +          Rails.logger.debug debug_info +          Rails.logger.debug "Received: #{params['client_auth']}"            fail!(:base => "invalid_user_pass")          end        end @@ -58,6 +61,13 @@ module Warden        def id          params["id"] || params["login"]        end + +      protected + +      def debug_info +        JSON.pretty_generate(session[:handshake].internal_state) +      end +      end    end    Warden::Strategies.add :secure_remote_password, diff --git a/users/test/integration/api/account_flow_test.rb b/users/test/integration/api/account_flow_test.rb index d4360de..f5cb0b1 100644 --- a/users/test/integration/api/account_flow_test.rb +++ b/users/test/integration/api/account_flow_test.rb @@ -55,14 +55,6 @@ class AccountFlowTest < RackTest      assert server_auth["M2"]    end -  test "duplicate login does not break things" do -    server_auth = @srp.authenticate(self) -    server_auth = @srp.authenticate(self) -    assert last_response.successful? -    assert_nil server_auth["errors"] -    assert server_auth["M2"] -  end -    test "signup and wrong password login attempt" do      srp = SRP::Client.new @login, :password => "wrong password"      server_auth = srp.authenticate(self)  | 
