From: Russ Combs (rucombs) Date: Tue, 18 Jun 2019 23:26:17 +0000 (-0400) Subject: Merge pull request #1645 in SNORT/snort3 from ~RUCOMBS/snort3:regex_fix to master X-Git-Tag: 3.0.0-257~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6a66d776a686e584f7454d53c98f58e881e31cc1;p=thirdparty%2Fsnort3.git Merge pull request #1645 in SNORT/snort3 from ~RUCOMBS/snort3:regex_fix to master Squashed commit of the following: commit f71a95925c043dba6f2fca7dc36480794618ea36 Author: russ Date: Sat Jun 15 20:39:34 2019 -0400 regex: fix repeated search offset --- diff --git a/src/ips_options/ips_regex.cc b/src/ips_options/ips_regex.cc index 2b6056402..892e8e905 100644 --- a/src/ips_options/ips_regex.cc +++ b/src/ips_options/ips_regex.cc @@ -176,7 +176,8 @@ IpsOption::EvalStatus RegexOption::eval(Cursor& c, Packet*) if ( pos > c.size() ) return NO_MATCH; - hs_scratch_t *ss = (hs_scratch_t *) SnortConfig::get_conf()->state[get_instance_id()][scratch_index]; + hs_scratch_t *ss = + (hs_scratch_t *) SnortConfig::get_conf()->state[get_instance_id()][scratch_index]; s_to = 0; @@ -186,6 +187,7 @@ IpsOption::EvalStatus RegexOption::eval(Cursor& c, Packet*) if ( s_to and stat == HS_SCAN_TERMINATED ) { + s_to += pos; c.set_pos(s_to); c.set_delta(s_to); return MATCH;