summaryrefslogtreecommitdiff
path: root/src/cmd.c
diff options
context:
space:
mode:
authorbpc2003 <wpesfriendnva@gmail.com>2025-05-23 14:23:10 -0400
committerbpc2003 <wpesfriendnva@gmail.com>2025-05-23 14:23:10 -0400
commit0cb3dab6b0fc4b5ebe00c0afaaceb68dcf98c6dc (patch)
tree468adce03e77dc837d022d99d0b07260626123c0 /src/cmd.c
parent175c04f2972c2a65e29ba2456ba5d058c35dcf87 (diff)
Migrating from personal testing framework to Unity
Diffstat (limited to 'src/cmd.c')
-rw-r--r--src/cmd.c59
1 files changed, 0 insertions, 59 deletions
diff --git a/src/cmd.c b/src/cmd.c
deleted file mode 100644
index d03f8fc..0000000
--- a/src/cmd.c
+++ /dev/null
@@ -1,59 +0,0 @@
-#include <stdlib.h>
-#include <string.h>
-
-#include "cmd.h"
-
-char *getselector(char *str);
-char **getparams(char *str, int *len);
-
-struct cmd eval(char *str) {
- struct cmd ret;
- ret.params = NULL;
- ret.selector = NULL;
- if (!strncmp(str, "GET", 3)) {
- ret.type = GET;
- } else if (!strncmp(str, "SET", 3)) {
- ret.type = SET;
- } else if (!strncmp(str, "DEL", 3)) {
- ret.type = DEL;
- } else {
- ret.type = ERR;
- return ret;
- }
-
- ret.selector = getselector(str);
- ret.params = getparams(str, &ret.plen);
- return ret;
-}
-
-char *getselector(char *str) {
- char *selector = calloc(1, sizeof(char));
- int pos = 4, i;
- for (i = 0; str[pos] != '/' && pos < strlen(str); ++pos) {
- if (i >= 1) {
- selector = realloc(selector, (i + 1) * sizeof(char));
- }
- selector[i++] = str[pos];
- }
- selector = realloc(selector, (i + 1) * sizeof(char));
- selector[i] = '\0';
- return selector;
-}
-
-char **getparams(char *str, int *len) {
- char **params = calloc(1, sizeof(char *));
- char *tok = strtok(str, "/");
- int i = 0;
- while ((tok = strtok(NULL, "/"))) {
- if (i >= 1)
- params = realloc(params, (i + 1) * sizeof(char *));
- params[i] = calloc(strlen(tok) + 1, sizeof(char));
- strcpy(params[i++], tok);
- }
- if (i == 0) {
- free(params);
- return NULL;
- }
- *len = i;
- return params;
-}