Hi Since ".." is case sensitive, it's faster to use the system's well-optimized memmem than the string loop.
- Lauri
>From d98cfa933b95b9dd5fdc75961ba7d4cbdd8b2d9b Mon Sep 17 00:00:00 2001 From: Lauri Kasanen <[email protected]> Date: Wed, 9 May 2012 16:33:46 +0300 Subject: [PATCH] http: use memmem for the ".." check Signed-off-by: Lauri Kasanen <[email protected]> --- src/mk_http.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mk_http.c b/src/mk_http.c index a39c330..6d434b8 100644 --- a/src/mk_http.c +++ b/src/mk_http.c @@ -19,6 +19,8 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +#define _GNU_SOURCE + #include <stdio.h> #include <string.h> #include <stdlib.h> @@ -182,10 +184,8 @@ int mk_http_init(struct client_session *cs, struct session_request *sr) } /* Check backward directory request */ - if (mk_string_search_n(sr->uri_processed.data, - HTTP_DIRECTORY_BACKWARD, - MK_STR_SENSITIVE, - sr->uri_processed.len) >= 0) { + if (memmem(sr->uri_processed.data, sr->uri_processed.len, + HTTP_DIRECTORY_BACKWARD, sizeof(HTTP_DIRECTORY_BACKWARD) - 1)) { return mk_request_error(MK_CLIENT_FORBIDDEN, cs, sr); } -- 1.7.2.1
_______________________________________________ Monkey mailing list [email protected] http://lists.monkey-project.com/listinfo/monkey
