From b86e6382a1d496cdb2acb0b85732c644de3add11 Mon Sep 17 00:00:00 2001 From: erdgeist <> Date: Thu, 18 Oct 2007 23:33:07 +0000 Subject: Save a lot of work when skipping through uninteresting http request parameters --- scan_urlencoded_query.h | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'scan_urlencoded_query.h') diff --git a/scan_urlencoded_query.h b/scan_urlencoded_query.h index 56d93c8..4fa35c4 100644 --- a/scan_urlencoded_query.h +++ b/scan_urlencoded_query.h @@ -4,17 +4,24 @@ #ifndef __SCAN_URLENCODED_QUERY_H__ #define __SCAN_URLENCODED_QUERY_H__ -#define SCAN_PATH 0 -#define SCAN_SEARCHPATH_PARAM 1 -#define SCAN_SEARCHPATH_VALUE 2 +typedef enum { + SCAN_PATH = 1, + SCAN_SEARCHPATH_PARAM = 2, + SCAN_SEARCHPATH_VALUE = 4, + SCAN_SEARCHPATH_TERMINATOR = 8 +} SCAN_SEARCHPATH_FLAG; -/* string pointer to source, pointer to after terminator on return +/* string pointer to source, pointer to next scan position on return deststring pointer to destination flags determines, what to parse returns number of valid converted characters in deststring or -1 for parse error */ -ssize_t scan_urlencoded_query(char **string, char *deststring, int flags); +ssize_t scan_urlencoded_query(char **string, char *deststring, SCAN_SEARCHPATH_FLAG flags); + +/* string pointer to source, pointer to next scan position on return +*/ +void scan_urlencoded_skipvalue( char **string ); /* data pointer to len chars of string len length of chars in data to parse -- cgit v1.2.3