From 2adf4fb28af99dd72c6b2fc816bcc11e5dde1ffc Mon Sep 17 00:00:00 2001 From: erdgeist <> Date: Fri, 8 Dec 2006 19:20:51 +0000 Subject: Our scanner routine for the URI query string --- scan_urlencoded_query.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 scan_urlencoded_query.h (limited to 'scan_urlencoded_query.h') diff --git a/scan_urlencoded_query.h b/scan_urlencoded_query.h new file mode 100644 index 0000000..379bc32 --- /dev/null +++ b/scan_urlencoded_query.h @@ -0,0 +1,20 @@ +#ifdef __SCAN_URLENCODED_QUERY_H__ +#define __SCAN_URLENCODED_QUERY_H__ + +#define BREAK_AT_QUESTIONMARK (1<<0) +#define BREAK_AT_WHITESPACE (1<<1) +#define BREAK_AT_AMPERSAND (1<<2) +#define BREAK_AT_EQUALSIGN (1<<3) + +#define SCAN_PATH ( BREAK_AT_QUESTIONMARK | BREAK_AT_WHITESPACE ) +#define SCAN_SEARCHPATH_PARAM ( BREAK_AT_EQUALSIGN ) +#define SCAN_SEARCHPATH_VALUE ( BREAK_AT_AMPERSAND | BREAK_AT_WHITESPACE ) + +// string pointer to source, pointer to after terminator on return +// deststring pointer to destination +// flags determines, what to parse +// returns number of valid converted characters in deststring +// or -1 for parse error +size_t scan_urlencoded_query(char **string, char *deststring, int flags); + +#endif -- cgit v1.2.3