From 8ef310a22a54dca7a80947f83f03bc296ab298dd Mon Sep 17 00:00:00 2001 From: Aleksey Veresov Date: Tue, 4 Feb 2020 18:14:54 +0300 Subject: [magi] --- src/cookie.h | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'src/cookie.h') 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 -- cgit v1.2.3