From b62e14bb41eb11b4436dfbcc6d89b8d7da198946 Mon Sep 17 00:00:00 2001
From: Alexander Olofsson <alexander.olofsson@liu.se>
Date: Mon, 15 Apr 2019 09:14:53 +0200
Subject: [PATCH] Support authorization error as 302

---
 lib/passwordstate/errors.rb | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/passwordstate/errors.rb b/lib/passwordstate/errors.rb
index 3e3b8ca..c45fe61 100644
--- a/lib/passwordstate/errors.rb
+++ b/lib/passwordstate/errors.rb
@@ -23,6 +23,11 @@ module Passwordstate
       errtype ||= ClientError if code_i >= 400 && code_i < 500
       errtype ||= ServerError if code_i >= 500 && code_i < 600
 
+      if code_i == 302 && res['location'].start_with?('/error/generalerror.aspx?')
+        errtype ||= ServerError
+        errors = [{ 'phrase' => 'Response code 302, most likely meaning an authorization error' }]
+      end
+
       errtype ||= HTTPError
       errtype.new(code_i, req, res, errors)
     end
-- 
GitLab