Clean up. Return error also when we don't found key in query string.
[bertos.git] / bertos / net / http.h
index 665e97aa711b8e4aa14b0f4b163aa61a8e1e37a5..b03b93b27bc076de20477bd0a0a42e8731b31b71 100644 (file)
@@ -54,12 +54,15 @@ typedef struct HttpCGI
        http_handler_t handler; ///< Callback to process the special request
 } HttpCGI;
 
-
 #define CGI_MATCH_NONE   0
-#define CGI_MATCH_NAME   1  ///< Select item in table only if string match
+#define CGI_MATCH_WORD   1  ///< Select item in table only if string match
 #define CGI_MATCH_EXT    2  ///< Select item in table if the extention match
+#define CGI_MATCH_NAME   3  ///< Select item in table if the string is content
 
-void http_getPageName(const char *revc_buf, size_t recv_len, char *page_name, size_t len);
+int http_getValue(char *tolenized_buf, size_t tolenized_buf_len, const char *key, char *value, size_t len);
+int http_tokenizeGetRequest(char *raw_buf, size_t raw_len);
+void http_getPageName(const char *recv_buf, size_t recv_len, char *page_name, size_t len);
+void http_decodeUrl(const char *raw_buf, size_t raw_len, char *decodec_buf, size_t len);
 
 void http_sendOk(struct netconn *client);
 void http_sendFileNotFound(struct netconn *client);