summaryrefslogtreecommitdiff
path: root/src/webserver/parse.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/webserver/parse.cpp')
-rw-r--r--src/webserver/parse.cpp132
1 files changed, 0 insertions, 132 deletions
diff --git a/src/webserver/parse.cpp b/src/webserver/parse.cpp
deleted file mode 100644
index 66ef43b..0000000
--- a/src/webserver/parse.cpp
+++ /dev/null
@@ -1,132 +0,0 @@
-#include <stdlib.h>
-
-char filtered_query[2000];
-char rdata[500];
-char param_n[500];
-char param_d[500];
-
-char *get_query (char *inquery)
-{
- memset (filtered_query, 0x0, 2000);
- sscanf (inquery, "GET %s %[$]", filtered_query);
- return (filtered_query);
-}
-
-void web_send (int sockin, char *in_data)
-{
- send (sockin, in_data, strlen (in_data), 0);
-}
-
-//THIS IS BAD CODE BE CAREFULL WITH IT!
-//Watch out for buffer overflow...
-//When using please make sure to check the string size.
-
-//Also note:
-//I take no pride in this code, it is a really bad way of doing this...
-char *get_param (char in_string[500], char swhat[500])
-{
- int i = 0;
- int marker, iswitch, pint, dint;
- char flux[500];
- memset (flux, 0x0, 500);
-
- //Get the path of out "page"
- if (swhat == 0)
- {
- //while i is not equal to array size
- while (i != 500)
- {
- //if there is a question mark, halt!
- if (in_string[i] == '?')
- {
- i = 499;
- }
- else
- rdata[i] = in_string[i];
-
- i++;
- }
- return rdata;
- }
- else //so, we want a param...
- {
- //calculate where param begins
- while (i != 500)
- {
- if (in_string[i] == '?')
- {
- marker = i + 1;
- i = 499;
- }
- i++;
- }
-
- i = 0;
-
- //keep morons from trying to crash this
- if ((marker > 500) || (marker < 1))
- marker = 500;
-
- while (marker != 500)
- {
- if ((in_string[marker] != '&') && (in_string[marker] != '\0'))
- {
- flux[i] = in_string[marker];
- i++;
- }
- else
- {
-
- //we have a param, now we must dig through it
-
- //clear temp vars
- memset (param_n, 0x0, 500);
- memset (param_d, 0x0, 500);
- iswitch = 0;
- pint = 0;
- dint = 0;
- i = 0;
-
- //split result into param_n and param_d
- while (i != 500)
- {
- if ((flux[i] != '=') && (flux[i] != '\0'))
- {
- if (iswitch == 0)
- {
- param_n[pint] = flux[i];
- pint++;
- }
- else
- {
- param_d[dint] = flux[i];
- dint++;
- }
- }
- else
- {
- iswitch = 1;
- }
- if (flux[i] == '\0')
- i = 499;
-
- i++;
- }
-
- if (strcmp (param_n, swhat) == 0)
- {
- return param_d;
- }
-
- i = 0;
- }
-
- if (in_string[marker] == '\0')
- {
- marker = 499;
- }
- marker++;
- }
- return 0;
- }
-}