aboutsummaryrefslogtreecommitdiff
path: root/src/cookie.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/cookie.h')
-rw-r--r--src/cookie.h34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/cookie.h b/src/cookie.h
index 82c914e..7eb3e9d 100644
--- a/src/cookie.h
+++ b/src/cookie.h
@@ -2,31 +2,31 @@
#define MAGI_INCLUDED_COOKIE
-struct magi_cookie {
+typedef struct magi_cookie {
/* All pointers must be valid as 'free' arguments. */
- char * name;
- char * data;
- char * path;
- char * domain;
- char * port;
-};
+ char *name;
+ char *data;
+ char *path; /* Without '/' at the end. */
+ char *domain; /* With dot at the begining. */
+ char *max_age; /* In seconds until discard, used only in response. */
+} magi_cookie;
-struct magi_cookie_list {
- struct magi_cookie_list * next; /* Must be valid as 'free' arguments. */
- struct magi_cookie item;
-};
+typedef struct magi_cookie_list {
+ struct magi_cookie_list *next; /* Must be valid as 'free' arguments. */
+ magi_cookie item;
+} magi_cookie_list;
/* Addition of item to top of list. Null <=> error. */
-int magi_cookie_list_add(struct magi_cookie_list ** list,
- struct magi_cookie * item);
+int magi_cookie_list_add(magi_cookie_list **list, magi_cookie *item);
-/* First node in list: node.name == name; else null. */
-struct magi_cookie * magi_cookie_list_get(struct magi_cookie_list * list,
- const char * name);
+/* Data of last cookie in list: cookie.name == name, returns null if no such;
+ * Last cookie in list is first from request, and from RFC 2109 we know that
+ * first cookie is the most accurate for request's domain and path. */
+char *magi_cookie_list_get(magi_cookie_list *list, const char *name);
/* Freeing and invalidation of list. */
-void magi_cookie_list_destroy(struct magi_cookie_list * list);
+void magi_cookie_list_destroy(magi_cookie_list *list);
#endif