| Index: third_party/upload.py
|
| diff --git a/third_party/upload.py b/third_party/upload.py
|
| index c9a45b59063b401c31d07a3f42923be2fcb0db9c..1101f26b069b8972459ba3e40cfc93149955c55c 100755
|
| --- a/third_party/upload.py
|
| +++ b/third_party/upload.py
|
| @@ -372,32 +372,33 @@ class AbstractRpcServer(object):
|
| authentication cookie, it returns a 401 response (or a 302) and
|
| directs us to authenticate ourselves with ClientLogin.
|
| """
|
| - INTERNAL_ERROR_MAP = {
|
| - "badauth": "BadAuthentication",
|
| - "cr": "CaptchaRequired",
|
| - "adel": "AccountDeleted",
|
| - "adis": "AccountDisabled",
|
| - "sdis": "ServiceDisabled",
|
| - "ire": "ServiceUnavailable",
|
| - }
|
| -
|
| for i in range(3):
|
| credentials = self.auth_function()
|
|
|
| # Try external, then internal.
|
| e = None
|
| + error_map = None
|
| try:
|
| auth_token = self._GetAuthToken(credentials[0], credentials[1])
|
| except urllib2.HTTPError:
|
| try:
|
| + # Try internal endpoint.
|
| + error_map = {
|
| + "badauth": "BadAuthentication",
|
| + "cr": "CaptchaRequired",
|
| + "adel": "AccountDeleted",
|
| + "adis": "AccountDisabled",
|
| + "sdis": "ServiceDisabled",
|
| + "ire": "ServiceUnavailable",
|
| + }
|
| auth_token = self._GetAuthToken(credentials[0], credentials[1],
|
| internal=True)
|
| except ClientLoginError, exc:
|
| e = exc
|
| if e:
|
| print >> sys.stderr, ''
|
| - if internal:
|
| - e.reason = INTERNAL_ERROR_MAP.get(e.reason, e.reason)
|
| + if error_map:
|
| + e.reason = error_map.get(e.reason, e.reason)
|
| if e.reason == "BadAuthentication":
|
| if e.info == "InvalidSecondFactor":
|
| print >> sys.stderr, (
|
|
|