From 7e5f5e68e8fb5b81f016a7d9348665ed56a48078 Mon Sep 17 00:00:00 2001 From: Gurvinder Singh Date: Wed, 9 Sep 2009 22:43:18 +0300 Subject: [PATCH] regex intial version --- src/detect-stream_size.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/detect-stream_size.c b/src/detect-stream_size.c index 1a44e1124c..b665e8a2d6 100644 --- a/src/detect-stream_size.c +++ b/src/detect-stream_size.c @@ -149,7 +149,7 @@ DetectStreamSizeData *DetectStreamSizeParse (char *streamstr) { int ov[MAX_SUBSTRINGS]; ret = pcre_exec(parse_regex, parse_regex_study, streamstr, strlen(streamstr), 0, 0, ov, MAX_SUBSTRINGS); - if (ret != 3) { + if (ret != 4) { printf("DetectStreamSizeSetup: parse error, ret %" PRId32 "\n", ret); goto error; } @@ -225,6 +225,8 @@ DetectStreamSizeData *DetectStreamSizeParse (char *streamstr) { } sd->flags |= STREAM_SIZE_EITHER; + } else { + goto error; } if (mode != NULL) free(mode); @@ -342,7 +344,8 @@ static int DetectStreamSizeParseTest03 (void) { if (sd != NULL) { if (!(sd->flags & STREAM_SIZE_CLIENT) && sd->mode != DETECTSSIZE_GT && sd->ssize != 8) return 0; - } + } else + return 0; client.last_ack = 20; client.next_seq = 30; @@ -352,7 +355,7 @@ static int DetectStreamSizeParseTest03 (void) { p.ip4h = &ip4h; sm.ctx = sd; - //result = DetectStreamSizeMatch(&tv, &dtx, &p, &s, &sm); + result = DetectStreamSizeMatch(&tv, &dtx, &p, &s, &sm); return result; } @@ -385,7 +388,8 @@ static int DetectStreamSizeParseTest04 (void) { if (sd != NULL) { if (!(sd->flags & STREAM_SIZE_CLIENT) && sd->mode != DETECTSSIZE_GT && sd->ssize != 8) return 0; - } + } else + return 0; client.last_ack = 20; client.next_seq = 28; @@ -395,7 +399,7 @@ static int DetectStreamSizeParseTest04 (void) { p.ip4h = &ip4h; sm.ctx = sd; - //if (!DetectStreamSizeMatch(&tv, &dtx, &p, &s, &sm)) + if (!DetectStreamSizeMatch(&tv, &dtx, &p, &s, &sm)) result = 1; return result;