Lines Matching refs:pr

228 static void process_get_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp, bool return_cas, b…  in process_get_cmd()  argument
229 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_get_cmd()
230 int nkey = pr->klen; in process_get_cmd()
309 static void process_update_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp, int comm, bool … in process_update_cmd() argument
310 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_update_cmd()
311 size_t nkey = pr->klen; in process_update_cmd()
329 if (! (safe_strtoflags(&pr->request[pr->tokens[2]], &flags) in process_update_cmd()
330 && safe_strtol(&pr->request[pr->tokens[3]], &exptime_int))) { in process_update_cmd()
339 if (!safe_strtoull(&pr->request[pr->tokens[5]], &req_cas_id)) { in process_update_cmd()
351 it = item_alloc(key, nkey, flags, exptime, pr->vlen); in process_update_cmd()
355 if (! item_size_ok(nkey, flags, pr->vlen)) { in process_update_cmd()
392 if (_store_item_copy_from_buf(it, pr->vbuf, it->nbytes) != 0) { in process_update_cmd()
420 static void process_arithmetic_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp, const bool … in process_arithmetic_cmd() argument
423 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_arithmetic_cmd()
424 size_t nkey = pr->klen; in process_arithmetic_cmd()
433 if (!safe_strtoull(&pr->request[pr->tokens[2]], &delta)) { in process_arithmetic_cmd()
464 static void process_delete_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp) { in process_delete_cmd() argument
465 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_delete_cmd()
466 size_t nkey = pr->klen; in process_delete_cmd()
505 static void process_touch_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp) { in process_touch_cmd() argument
506 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_touch_cmd()
507 size_t nkey = pr->klen; in process_touch_cmd()
519 if (!safe_strtol(&pr->request[pr->tokens[2]], &exptime_int)) { in process_touch_cmd()
547 static int _process_token_len(mcp_parser_t *pr, size_t token) { in _process_token_len() argument
548 const char *s = pr->request + pr->tokens[token]; in _process_token_len()
549 const char *e = pr->request + pr->tokens[token+1]; in _process_token_len()
604 static int _meta_flag_preparse(mcp_parser_t *pr, const size_t start, in _meta_flag_preparse() argument
611 for (i = start; i < pr->ntokens; i++) { in _meta_flag_preparse()
612 uint8_t o = (uint8_t)pr->request[pr->tokens[i]]; in _meta_flag_preparse()
641 if (!safe_strtol(&pr->request[pr->tokens[i]+1], &tmp_int)) { in _meta_flag_preparse()
650 if (!safe_strtol(&pr->request[pr->tokens[i]+1], &tmp_int)) { in _meta_flag_preparse()
660 if (!safe_strtol(&pr->request[pr->tokens[i]+1], &tmp_int)) { in _meta_flag_preparse()
698 if (!safe_strtoflags(&pr->request[pr->tokens[i]+1], &of->client_flags)) { in _meta_flag_preparse()
703 if (!safe_strtoull(&pr->request[pr->tokens[i]+1], &of->req_cas_id)) { in _meta_flag_preparse()
711 if (!safe_strtoull(&pr->request[pr->tokens[i]+1], &of->cas_id_in)) { in _meta_flag_preparse()
721 of->mode = pr->request[pr->tokens[i]+1]; in _meta_flag_preparse()
724 if (!safe_strtoull(&pr->request[pr->tokens[i]+1], &of->initial)) { in _meta_flag_preparse()
730 if (!safe_strtoull(&pr->request[pr->tokens[i]+1], &of->delta)) { in _meta_flag_preparse()
747 static void process_mget_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp) { in process_mget_cmd() argument
748 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_mget_cmd()
749 size_t nkey = pr->klen; in process_mget_cmd()
771 if (pr->ntokens > MFLAG_MAX_OPT_LENGTH) { in process_mget_cmd()
779 if (_meta_flag_preparse(pr, 2, &of, &errstr) != 0) { in process_mget_cmd()
829 for (i = pr->keytoken+1; i < pr->ntokens; i++) { in process_mget_cmd()
830 switch (pr->request[pr->tokens[i]]) { in process_mget_cmd()
894 tlen = _process_token_len(pr, i); in process_mget_cmd()
900 memcpy(p, &pr->request[pr->tokens[i]], tlen); in process_mget_cmd()
1021 for (i = pr->keytoken+1; i < pr->ntokens; i++) { in process_mget_cmd()
1022 switch (pr->request[pr->tokens[i]]) { in process_mget_cmd()
1025 tlen = _process_token_len(pr, i); in process_mget_cmd()
1031 memcpy(p, &pr->request[pr->tokens[i]], tlen); in process_mget_cmd()
1055 static void process_mset_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp) { in process_mset_cmd() argument
1056 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_mset_cmd()
1057 size_t nkey = pr->klen; in process_mset_cmd()
1065 int vlen = pr->vlen; // value from data line. in process_mset_cmd()
1072 if (nkey > KEY_MAX_LENGTH || pr->ntokens < 3) { in process_mset_cmd()
1077 if (pr->ntokens > MFLAG_MAX_OPT_LENGTH) { in process_mset_cmd()
1086 if (_meta_flag_preparse(pr, 3, &of, &errstr) != 0) { in process_mset_cmd()
1182 if (_store_item_copy_from_buf(it, pr->vbuf, it->nbytes) != 0) { in process_mset_cmd()
1215 for (i = pr->keytoken+1; i < pr->ntokens; i++) { in process_mset_cmd()
1216 switch (pr->request[pr->tokens[i]]) { in process_mset_cmd()
1218 tlen = _process_token_len(pr, i); in process_mset_cmd()
1224 memcpy(p, &pr->request[pr->tokens[i]], tlen); in process_mset_cmd()
1265 static void process_mdelete_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp) { in process_mdelete_cmd() argument
1266 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_mdelete_cmd()
1267 size_t nkey = pr->klen; in process_mdelete_cmd()
1285 if (pr->ntokens > MFLAG_MAX_OPT_LENGTH) { in process_mdelete_cmd()
1294 if (_meta_flag_preparse(pr, 2, &of, &errstr) != 0) { in process_mdelete_cmd()
1299 for (i = pr->keytoken+1; i < pr->ntokens; i++) { in process_mdelete_cmd()
1300 switch (pr->request[pr->tokens[i]]) { in process_mdelete_cmd()
1303 tlen = _process_token_len(pr, i); in process_mdelete_cmd()
1309 memcpy(p, &pr->request[pr->tokens[i]], tlen); in process_mdelete_cmd()
1410 static void process_marithmetic_cmd(LIBEVENT_THREAD *t, mcp_parser_t *pr, mc_resp *resp) { in process_marithmetic_cmd() argument
1411 const char *key = &pr->request[pr->tokens[pr->keytoken]]; in process_marithmetic_cmd()
1412 size_t nkey = pr->klen; in process_marithmetic_cmd()
1436 if (pr->ntokens > MFLAG_MAX_OPT_LENGTH) { in process_marithmetic_cmd()
1444 if (_meta_flag_preparse(pr, 2, &of, &errstr) != 0) { in process_marithmetic_cmd()
1552 for (i = pr->keytoken+1; i < pr->ntokens; i++) { in process_marithmetic_cmd()
1553 switch (pr->request[pr->tokens[i]]) { in process_marithmetic_cmd()
1577 tlen = _process_token_len(pr, i); in process_marithmetic_cmd()
1583 memcpy(p, &pr->request[pr->tokens[i]], tlen); in process_marithmetic_cmd()
1603 for (i = pr->keytoken+1; i < pr->ntokens; i++) { in process_marithmetic_cmd()
1604 switch (pr->request[pr->tokens[i]]) { in process_marithmetic_cmd()
1606 tlen = _process_token_len(pr, i); in process_marithmetic_cmd()
1612 memcpy(p, &pr->request[pr->tokens[i]], tlen); in process_marithmetic_cmd()
1659 mcp_parser_t *pr = &rq->pr; in mcplib_internal_run() local
1665 switch (rq->pr.command) { in mcplib_internal_run()
1667 process_mget_cmd(t, pr, resp); in mcplib_internal_run()
1670 process_mset_cmd(t, pr, resp); in mcplib_internal_run()
1673 process_mdelete_cmd(t, pr, resp); in mcplib_internal_run()
1676 process_marithmetic_cmd(t, pr, resp); in mcplib_internal_run()
1679 process_get_cmd(t, pr, resp, _NO_CAS, _NO_TOUCH); in mcplib_internal_run()
1682 process_get_cmd(t, pr, resp, _DO_CAS, _NO_TOUCH); in mcplib_internal_run()
1685 process_get_cmd(t, pr, resp, _NO_CAS, _DO_TOUCH); in mcplib_internal_run()
1688 process_get_cmd(t, pr, resp, _DO_CAS, _DO_TOUCH); in mcplib_internal_run()
1691 process_update_cmd(t, pr, resp, NREAD_SET, _NO_CAS); in mcplib_internal_run()
1694 process_update_cmd(t, pr, resp, NREAD_ADD, _NO_CAS); in mcplib_internal_run()
1697 process_update_cmd(t, pr, resp, NREAD_APPEND, _NO_CAS); in mcplib_internal_run()
1700 process_update_cmd(t, pr, resp, NREAD_PREPEND, _NO_CAS); in mcplib_internal_run()
1703 process_update_cmd(t, pr, resp, NREAD_CAS, _DO_CAS); in mcplib_internal_run()
1706 process_update_cmd(t, pr, resp, NREAD_REPLACE, _DO_CAS); in mcplib_internal_run()
1709 process_arithmetic_cmd(t, pr, resp, true); in mcplib_internal_run()
1712 process_arithmetic_cmd(t, pr, resp, false); in mcplib_internal_run()
1715 process_delete_cmd(t, pr, resp); in mcplib_internal_run()
1718 process_touch_cmd(t, pr, resp); in mcplib_internal_run()
1749 r->cmd = rq->pr.command; in mcplib_internal_run()