Add a function for parsing combined auth cookies
return info->contents;
}
+int parse_auth_cookie(const char *str, struct auth_cookie *cookie) {
+ char *token_begin = strchr(str, '/');
+ if (token_begin == NULL) {
+ return 0;
+ }
+ int len = token_begin - str;
+ if (len > MAX_TAG_LENGTH || len == 0) {
+ return 0;
+ }
+ memcpy(cookie->name, str, len);
+ cookie->name[len] = 0;
+
+ token_begin++;
+ len = strlen(token_begin);
+ if (len != TOKEN_SIZE * 2) {
+ return 0;
+ }
+ memcpy(cookie->token, token_begin, TOKEN_SIZE * 2);
+ cookie->token[TOKEN_SIZE * 2] = 0;
+
+ return 1;
+}
+
uint64_t *make_sequential_list(uint64_t from, uint64_t to) {
uint64_t len = to - from + 1;
uint64_t *list = malloc(len * sizeof(uint64_t));
#ifndef _APP_H
#define _APP_H
-#include <yajl/yajl_gen.h>
#include "database.h"
#include "config.h"
+#include "auth.h"
#define REALM "Blerg"
uint64_t record_to;
};
+struct auth_cookie {
+ char name[MAX_TAG_LENGTH + 1];
+ char token[TOKEN_SIZE * 2 + 1];
+};
+
int parse_url_info(const char *url, struct url_info *info);
+int parse_auth_cookie(const char *str, struct auth_cookie *cookie);
uint64_t *make_sequential_list(uint64_t from, uint64_t to);
#endif /* _APP_H */