]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
Pull request #3493: JS Normalizer: fix decimal number pattern
authorOleksii Shumeiko -X (oshumeik - SOFTSERVE INC at Cisco) <oshumeik@cisco.com>
Mon, 11 Jul 2022 15:56:34 +0000 (15:56 +0000)
committerOleksii Shumeiko -X (oshumeik - SOFTSERVE INC at Cisco) <oshumeik@cisco.com>
Mon, 11 Jul 2022 15:56:34 +0000 (15:56 +0000)
Merge in SNORT/snort3 from ~OSHUMEIK/snort3:jsn_fix_id to master

Squashed commit of the following:

commit 25041bc840a69dff344199c1ab86e315edfea5f7
Author: Oleksii Shumeiko <oshumeik@cisco.com>
Date:   Fri Jul 1 15:06:01 2022 +0300

    utils: fix parsing of decimal number literals

src/utils/js_tokenizer.l
src/utils/test/js_normalizer_test.cc

index a78cc7e8b2ac35cd9ed8281776385154f2e8a866..26b9df90bdf1aa25d62f813d25077e66d62ea432 100644 (file)
@@ -986,7 +986,7 @@ LITERAL_THIS                  this
 LITERAL_BOOLEAN               true|false
 LITERAL_BIN_INTEGER           0[bB][01](_?[01])*
 LITERAL_OCT_INTEGER           0[oO]?[0-7](_?[0-7])*
-LITERAL_DECIMAL               [.]?(_?[0-9])+[\.]?(_?[0-9])*([eE](_?[0-9])+)?
+LITERAL_DECIMAL               [.]?[0-9](_?[0-9])*[.]?(_?[0-9])*([eE](_?[0-9])+)?
 LITERAL_INTEGER               [0-9](_?[0-9])*
 LITERAL_HEX_INTEGER           0[xX][a-fA-F0-9](_?[a-fA-F0-9])*
 LITERAL_BIG_INTEGER           ({LITERAL_DECIMAL}|{LITERAL_BIN_INTEGER}|{LITERAL_OCT_INTEGER}|{LITERAL_HEX_INTEGER})n
index 906657e669b44d9212ec754985dae3b815a9496e..5b44df3e0365541a066533c4f87ac15685a55e0f 100644 (file)
@@ -637,11 +637,13 @@ static const char all_patterns_expected4[] =
 
 static const char all_patterns_buf5[] =
     "$2abc _2abc abc $__$ 肖晗 XÆA12 \\u0041abc \\u00FBdef \\u1234ghi ab\xE2\x80\xA8ww "
-    "ab\xE2\x80\xA9ww ab\xEF\xBB\xBFww ab∞ww 2abc";
+    "ab\xE2\x80\xA9ww ab\xEF\xBB\xBFww ab∞ww 2abc _a _1;"
+    "var a;var _1;";
 
 static const char all_patterns_expected5[] =
     "$2abc _2abc abc $__$ 肖晗 XÆA12 \u0041abc \u00FBdef \u1234ghi ab;ww "
-    "ab;ww ab ww ab ∞ ww 2 abc";
+    "ab;ww ab ww ab ∞ ww 2 abc _a _1;"
+    "var a;var _1;";
 
 static const char all_patterns_buf6[] =
     "tag` template\n   ${ a   +   b }   template`";