diff options
author | ꦌꦫꦶꦏ꧀ꦦꦿꦧꦮꦑꦩꦭ꧀ <erik@darapsa.co.id> | 2022-09-16 09:06:59 +0800 |
---|---|---|
committer | ꦌꦫꦶꦏ꧀ꦦꦿꦧꦮꦑꦩꦭ꧀ <erik@darapsa.co.id> | 2022-09-16 09:06:59 +0800 |
commit | 8ae4a0aa882abd9911709012bfbe86015ac820fd (patch) | |
tree | dc1f7e60c6a5ea3a37bb5ee0aa6c367d7209f624 | |
parent | 1ffb560b8de53c8439abed14c6669cd13a70b9ac (diff) |
State and nonce comparison lines made fewer
-rw-r--r-- | shopify.c | 14 |
1 files changed, 8 insertions, 6 deletions
@@ -146,16 +146,18 @@ bool shopify_valid(struct MHD_Connection *conn, const char *url, free(query); if (strcmp(url, redir_url)) return true; - char *state = ((struct shopify_param *)bsearch(&(struct shopify_param) - { "state" }, *params, nparams, - sizeof(struct shopify_param), keycmp))->val; int nsessions = 0; while (sessions[nsessions].shop) nsessions++; qsort(sessions, nsessions, sizeof(struct session), keycmp); - struct session *session = bsearch(&(struct session){ shop }, sessions, - nsessions, sizeof(struct session), keycmp); - if (strcmp(state, session->nonce)) { + if (strcmp(((struct shopify_param *)bsearch(&(struct shopify_param) + { "state" }, *params, nparams, + sizeof(struct shopify_param), + keycmp))->val, + ((struct session *)bsearch(&(struct session) + { shop }, sessions, nsessions, + sizeof(struct session), + keycmp))->nonce)) { clear(*params); return false; } |