Reorganize auxilliary CGIs
[blerg.git] / common / auth.c
index ca4017e..240ac47 100644 (file)
@@ -347,6 +347,7 @@ char * auth_login(const char *username, const char *password) {
 int auth_logout(const char *username, const char *token) {
        char filename[FILENAME_MAX];
        struct stringring *sr;
+       int ret;
 
        if (!valid_name(username))
                return 0;
@@ -359,10 +360,10 @@ int auth_logout(const char *username, const char *token) {
        if (sr == NULL) {
                return 0;
        }
-       stringring_remove(sr, token);
+       ret = stringring_remove(sr, token);
        stringring_close(sr);
 
-       return 1;
+       return ret;
 }
 
 int auth_check_token(const char *username, const char *given_token) {
@@ -379,6 +380,10 @@ int auth_check_token(const char *username, const char *given_token) {
                return 0;
        }
        ret = (stringring_find(sr, given_token, AUTHENTICATION_TIMEOUT) != -1);
+       if (ret == 1) {
+               /* Update token timestamp */
+               stringring_touch(sr, given_token);
+       }
        stringring_close(sr);
 
        return ret;