diff options
author | Aleksey Veresov <aleksey@veresov.pro> | 2020-02-06 11:27:59 +0300 |
---|---|---|
committer | Aleksey Veresov <aleksey@veresov.pro> | 2020-02-06 11:27:59 +0300 |
commit | fca83975899b01c62ede4258f175346b7039be3d (patch) | |
tree | 37c2bb8faf95de1252a97942a68183f795eb82a0 /src/inner_cookies.c | |
parent | 8ef310a22a54dca7a80947f83f03bc296ab298dd (diff) | |
parent | 746c3f3076fe5994f08d729aa1b958465231b0c8 (diff) | |
download | magi-fca83975899b01c62ede4258f175346b7039be3d.tar magi-fca83975899b01c62ede4258f175346b7039be3d.tar.xz magi-fca83975899b01c62ede4258f175346b7039be3d.zip |
Merge branch 'master' into test
Diffstat (limited to 'src/inner_cookies.c')
-rw-r--r-- | src/inner_cookies.c | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/src/inner_cookies.c b/src/inner_cookies.c index d9035c4..9dfde7a 100644 --- a/src/inner_cookies.c +++ b/src/inner_cookies.c @@ -1,7 +1,7 @@ /* * * TODO * * */ #include "inner_cookies.h" -#include "utils.h" +#include "inner_tools.h" #include <stdlib.h> #include <string.h> @@ -16,7 +16,7 @@ enum st { st_post_data }; -enum data_type { dt_plain = 0, dt_version, dt_path, dt_domain, dt_port }; +enum data_type { dt_plain = 0, dt_version, dt_path, dt_domain }; struct automata { struct magi_cookie_list ** list; @@ -25,7 +25,7 @@ struct automata { int buf_len; int buf_size; int is_first; - int is_cookie2; + int is_advanced; int is_quoted; enum data_type data_t; }; @@ -33,11 +33,11 @@ struct automata { static void nulify_cookie(struct automata * a) { - a->cookie.name = 0; - a->cookie.data = 0; - a->cookie.path = 0; - a->cookie.domain = 0; - a->cookie.port = 0; + a->cookie.name = 0; + a->cookie.data = 0; + a->cookie.path = 0; + a->cookie.domain = 0; + a->cookie.max_age = 0; } static void buf_new(struct automata * a) @@ -53,13 +53,11 @@ static enum data_type what_is_name(const struct automata * a) enum data_type data_t = dt_plain; if (a->is_first && !strcmp(a->buf, "$Version")) { data_t = dt_version; - } else if (a->is_cookie2) { + } else if (a->is_advanced) { if (!strcmp(a->buf, "$Path")) { data_t = dt_path; } else if (!strcmp(a->buf, "$Domain")) { data_t = dt_domain; - } else if (!strcmp(a->buf, "$Port")) { - data_t = dt_port; } } return data_t; @@ -96,9 +94,6 @@ static int end_data(struct automata * a) case dt_domain: a->cookie.domain = a->buf; break; - case dt_port: - a->cookie.port = a->buf; - break; case dt_version: if (strcmp(a->buf, "1")) { ok = 0; @@ -291,6 +286,5 @@ void magi_cookies(struct magi_request * request, const char * data) free(a.cookie.data); free(a.cookie.path); free(a.cookie.domain); - free(a.cookie.port); free(a.buf); } |