diff options
author | Zach Copley <zach@status.net> | 2010-02-02 07:35:54 +0000 |
---|---|---|
committer | Zach Copley <zach@status.net> | 2010-02-02 08:50:33 +0000 |
commit | 819127307896c3aee43f0f009f6ff636eb227b4c (patch) | |
tree | 0835a48f7bd59380c3b6441766b139c6e40566a2 /lib | |
parent | f0875ceea1bd6940bb30deab0f6a0f38a752a2c6 (diff) |
Better token revocation
Diffstat (limited to 'lib')
-rw-r--r-- | lib/apioauthstore.php | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/apioauthstore.php b/lib/apioauthstore.php index 32110d057..1bb11cbca 100644 --- a/lib/apioauthstore.php +++ b/lib/apioauthstore.php @@ -159,5 +159,32 @@ class ApiStatusNetOAuthDataStore extends StatusNetOAuthDataStore } } + /** + * Revoke specified access token + * + * Revokes the token specified by $token_key. + * Throws exceptions in case of error. + * + * @param string $token_key the token to be revoked + * @param int $type type of token (0 = req, 1 = access) + * + * @access public + * + * @return void + */ + + public function revoke_token($token_key, $type = 0) { + $rt = new Token(); + $rt->tok = $token_key; + $rt->type = $type; + $rt->state = 0; + if (!$rt->find(true)) { + throw new Exception('Tried to revoke unknown token'); + } + if (!$rt->delete()) { + throw new Exception('Failed to delete revoked token'); + } + } + } |