aboutsummaryrefslogtreecommitdiff
path: root/src/cookie.h
blob: 82c914efec25501da8d8440737225a13e4d74285 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef MAGI_INCLUDED_COOKIE
#define MAGI_INCLUDED_COOKIE


struct magi_cookie {
    /* All pointers must be valid as 'free' arguments. */
    char * name;
    char * data;
    char * path;
    char * domain;
    char * port;
};

struct magi_cookie_list {
    struct magi_cookie_list * next; /* Must be valid as 'free' arguments. */
    struct magi_cookie        item;
};


/* Addition of item to top of list. Null <=> error. */
int magi_cookie_list_add(struct magi_cookie_list ** list,
                         struct 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);

/* Freeing and invalidation of list. */
void magi_cookie_list_destroy(struct magi_cookie_list * list);


#endif