)]}'
{"keystoneclient/middleware/auth_token.py":[{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"dcb0969b03f93cd3b099393e53c1f3a841588ba0","unresolved":false,"context_lines":[{"line_number":930,"context_line":"                                \u0027Token authorization failed\u0027)"},{"line_number":931,"context_line":""},{"line_number":932,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":933,"context_line":"            elif cms.is_pkiz(user_token):"},{"line_number":934,"context_line":"                verified \u003d self.verify_pkiz_token(user_token, token_ids)"},{"line_number":935,"context_line":"                data \u003d jsonutils.loads(verified)"},{"line_number":936,"context_line":"                expires \u003d confirm_token_not_expired(data)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_55f0d0fd","line":933,"updated":"2014-06-04 07:41:52.000000000","message":"else:\n    if cms.is_pkiz:\n         verified \u003d \n         data \u003d\n    elif cms.is_asn1_token:\n         verified \u003d \n         data \u003d \n    else:\n         data \u003d self.verify_uuid_token\n\n    expires \u003d confirm_token_not_expired\n    self._cache_put\n\n self._confirm_token_bind\n return data\n\n?","commit_id":"9b0f1f98082d67fe18e758cbce176c43148bb0ed"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f4fdbc8386ea601554a0955a2ada4e13faf6ed22","unresolved":false,"context_lines":[{"line_number":930,"context_line":"                                \u0027Token authorization failed\u0027)"},{"line_number":931,"context_line":""},{"line_number":932,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":933,"context_line":"            elif cms.is_pkiz(user_token):"},{"line_number":934,"context_line":"                verified \u003d self.verify_pkiz_token(user_token, token_ids)"},{"line_number":935,"context_line":"                data \u003d jsonutils.loads(verified)"},{"line_number":936,"context_line":"                expires \u003d confirm_token_not_expired(data)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_4a860b67","line":933,"in_reply_to":"1ae5cdf2_55f0d0fd","updated":"2014-06-06 15:34:16.000000000","message":"Done","commit_id":"9b0f1f98082d67fe18e758cbce176c43148bb0ed"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"dcb0969b03f93cd3b099393e53c1f3a841588ba0","unresolved":false,"context_lines":[{"line_number":944,"context_line":"                self._cache_put(token_id, data, expires)"},{"line_number":945,"context_line":"            else:"},{"line_number":946,"context_line":"                data \u003d self.verify_uuid_token(user_token, retry)"},{"line_number":947,"context_line":"                expires \u003d get_token_expiration(data)"},{"line_number":948,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":949,"context_line":"                self._cache_put(token_id, data, expires)"},{"line_number":950,"context_line":"            return data"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_f552bcdc","line":947,"updated":"2014-06-04 07:41:52.000000000","message":"why does this one do a get_token_expires rather than a confirm_not_expired?","commit_id":"9b0f1f98082d67fe18e758cbce176c43148bb0ed"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"f4fdbc8386ea601554a0955a2ada4e13faf6ed22","unresolved":false,"context_lines":[{"line_number":944,"context_line":"                self._cache_put(token_id, data, expires)"},{"line_number":945,"context_line":"            else:"},{"line_number":946,"context_line":"                data \u003d self.verify_uuid_token(user_token, retry)"},{"line_number":947,"context_line":"                expires \u003d get_token_expiration(data)"},{"line_number":948,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":949,"context_line":"                self._cache_put(token_id, data, expires)"},{"line_number":950,"context_line":"            return data"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_4aed2b25","line":947,"in_reply_to":"1ae5cdf2_f552bcdc","updated":"2014-06-06 15:34:16.000000000","message":"verify_uuid_token fails if the token was expired. Added a comment.","commit_id":"9b0f1f98082d67fe18e758cbce176c43148bb0ed"},{"author":{"_account_id":11333,"name":"David J Hu","email":"david.hu@hpe.com","username":"dhu"},"change_message_id":"19813337e4e5b5cbb11f40e21a0f33fd33847103","unresolved":false,"context_lines":[{"line_number":928,"context_line":"                                \u0027Token is marked as having been revoked\u0027)"},{"line_number":929,"context_line":"                            raise InvalidUserToken("},{"line_number":930,"context_line":"                                \u0027Token authorization failed\u0027)"},{"line_number":931,"context_line":""},{"line_number":932,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":933,"context_line":"            else:"},{"line_number":934,"context_line":"                # Token wasn\u0027t cached."}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_8498076c","line":931,"updated":"2014-06-06 17:42:55.000000000","message":"The commit message regarding token expiration validation in _cache_get() and not storing a cached token again were very informative.  Briefly comment them in the code will add clarity to those who reading this particular code segment after the code get committed.","commit_id":"1b07c361801885e3688e685e7620a710583c8269"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"8c0b6faa472183c80897a52f0f9acdd9c27ca954","unresolved":false,"context_lines":[{"line_number":928,"context_line":"                                \u0027Token is marked as having been revoked\u0027)"},{"line_number":929,"context_line":"                            raise InvalidUserToken("},{"line_number":930,"context_line":"                                \u0027Token authorization failed\u0027)"},{"line_number":931,"context_line":""},{"line_number":932,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":933,"context_line":"            else:"},{"line_number":934,"context_line":"                # Token wasn\u0027t cached."}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_7a6d50cc","line":931,"in_reply_to":"1ae5cdf2_8498076c","updated":"2014-06-06 18:23:28.000000000","message":"Done","commit_id":"1b07c361801885e3688e685e7620a710583c8269"},{"author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"change_message_id":"eb211ebe3fbade51efbe7491248da80e3d5dd3d7","unresolved":false,"context_lines":[{"line_number":914,"context_line":"        try:"},{"line_number":915,"context_line":"            token_ids, cached \u003d self._check_user_token_cached(user_token)"},{"line_number":916,"context_line":"            token_id \u003d token_ids[0]"},{"line_number":917,"context_line":"            if cached:"},{"line_number":918,"context_line":"                # Token was retrieved from the cache. In this case, there\u0027s no"},{"line_number":919,"context_line":"                # need to check that the token is expired because the cache"},{"line_number":920,"context_line":"                # fetch fails for an expired token. Also, there\u0027s no need to"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_c4e5e2dc","line":917,"updated":"2014-06-13 07:30:48.000000000","message":"I would rather have the contents of the \"if...else\" on separate functions, instead of making the function longer than it already is","commit_id":"9b54db80947ee55e83c1173a9a7d96f9bf5e35ac"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"74ab5cb1429a3b25f9b1ae13a2f39a971f4fce0f","unresolved":false,"context_lines":[{"line_number":914,"context_line":"        try:"},{"line_number":915,"context_line":"            token_ids, cached \u003d self._check_user_token_cached(user_token)"},{"line_number":916,"context_line":"            token_id \u003d token_ids[0]"},{"line_number":917,"context_line":"            if cached:"},{"line_number":918,"context_line":"                # Token was retrieved from the cache. In this case, there\u0027s no"},{"line_number":919,"context_line":"                # need to check that the token is expired because the cache"},{"line_number":920,"context_line":"                # fetch fails for an expired token. Also, there\u0027s no need to"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_36fa2a43","line":917,"in_reply_to":"1ae5cdf2_c4e5e2dc","updated":"2014-06-13 16:56:16.000000000","message":"sure, but that\u0027s a refactoring.","commit_id":"9b54db80947ee55e83c1173a9a7d96f9bf5e35ac"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"f90a014c646f3d1b681d92c7f83e04bbc15e7d1b","unresolved":false,"context_lines":[{"line_number":950,"context_line":"                else:"},{"line_number":951,"context_line":"                    data \u003d self.verify_uuid_token(user_token, retry)"},{"line_number":952,"context_line":"                    # No need to confirm token expiration here since"},{"line_number":953,"context_line":"                    # verify_uuid_token fails for expired tokens."},{"line_number":954,"context_line":"                    expires \u003d get_token_expiration(data)"},{"line_number":955,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":956,"context_line":"                self._cache_put(token_id, data, expires)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_b1c65b66","line":953,"updated":"2014-06-13 01:58:35.000000000","message":"so does it become cleaner if we move the expiry check from verify_uuid_token to here? \n\nJust a question, not something that needs to be addressed.","commit_id":"9b54db80947ee55e83c1173a9a7d96f9bf5e35ac"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"74ab5cb1429a3b25f9b1ae13a2f39a971f4fce0f","unresolved":false,"context_lines":[{"line_number":950,"context_line":"                else:"},{"line_number":951,"context_line":"                    data \u003d self.verify_uuid_token(user_token, retry)"},{"line_number":952,"context_line":"                    # No need to confirm token expiration here since"},{"line_number":953,"context_line":"                    # verify_uuid_token fails for expired tokens."},{"line_number":954,"context_line":"                    expires \u003d get_token_expiration(data)"},{"line_number":955,"context_line":"                self._confirm_token_bind(data, env)"},{"line_number":956,"context_line":"                self._cache_put(token_id, data, expires)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_b6e63aae","line":953,"in_reply_to":"1ae5cdf2_b1c65b66","updated":"2014-06-13 16:56:16.000000000","message":"verify_uuid_token will always check expiry, because it goes to the keystone server to check if the token is valid and the server is going to reject a token that\u0027s expired.","commit_id":"9b54db80947ee55e83c1173a9a7d96f9bf5e35ac"}]}
