return CLIENT_STATE_DATA;
}
- val = strchr(data, ':');
+ val = uh_split_header(data);
if (!val)
return CLIENT_STATE_DONE;
- *val = 0;
- val++;
-
- while (isspace(*val))
- val++;
-
for (name = data; *name; name++)
if (isupper(*name))
*name = tolower(*name);
return url[len] == '/' || url[len] == 0;
}
+
+char *uh_split_header(char *str)
+{
+ char *val;
+
+ val = strchr(str, ':');
+ if (!val)
+ return NULL;
+
+ *val = 0;
+ val++;
+
+ while (isspace(*val))
+ val++;
+
+ return val;
+}
int uh_urlencode(char *buf, int blen, const char *src, int slen);
int uh_b64decode(char *buf, int blen, const unsigned char *src, int slen);
bool uh_path_match(const char *prefix, const char *url);
+char *uh_split_header(char *str);
#endif