1028 Commits

Author SHA1 Message Date
Hong, Yang A
ef16059c3e remove invalid nfa dump info 2023-03-23 06:43:46 +00:00
Hong, Yang A
0bf86a7c15 scratch: remove quick validity check
Roll back fix for github issue #350

About Scratch Usage:
For compile time, scratch space is strongly recommended to be
allocated immediately after database generation.
For runtime, besides using scratch for corresponding database,
Hyperscan also allows user to use larger scratch space allocated
for another database.
When multiple concurrent threads need to use the same databases
and a new scratch space is required, cloning the largest one is
always safe. This is realized based on API hs_scratch_size() and
hs_clone_scratch().
Behaviors beyond above are discouraged and results are undefined.
2023-03-06 08:20:05 +00:00
Chang, Harry
f815639830 Bump version number for release 2023-02-21 22:57:45 +00:00
Hong, Yang A
2fbef65905 fix nfa dump error 2023-02-15 05:51:00 +00:00
Hong, Yang A
277fc40089 scratch: add quick validity check
fix github issue #350
2023-02-15 05:51:00 +00:00
Hong, Yang A
5aa4bd565f stream close: free stream to avoid memory leak
fix github issue #303
2023-02-15 05:51:00 +00:00
Hong, Yang A
c81293c696 update year 2022 2023-02-15 05:51:00 +00:00
Hong, Yang A
c1539d32df UTF-8 validation: fix one cotec check corner issue
fix github issue #362
2023-02-15 05:51:00 +00:00
Hong, Yang A
f194a85d51 klocwork: fix risk issues 2023-02-15 05:49:59 +00:00
Hong, Yang A
47bc68339f bugfix: fix overflow risk of strlen function 2023-02-15 05:48:20 +00:00
hongyang7
9b4ba34c68 Fix segfaults on allocation failure (#4)
Throw std::bad_alloc instead of returning nullptr from
ue2::AlignedAllocator. Allocators for STL containers are expected never
to return with an invalid pointer, and instead must throw on failure.
Violating this expectation can lead to invalid pointer dereferences.

Co-authored-by: johanngan <johanngan.us@gmail.com>
2023-02-15 05:47:36 +00:00
Chang, Harry
b254a88c43 Logical Combination: bypass combination flag in hs_expression_info.
Fixes github issue #291
2023-02-15 05:46:27 +00:00
Hong, Yang A
819da8df17 update year for bugfix #302-#305 2023-02-15 05:46:27 +00:00
Hong, Yang A
7f4a806118 mcclellan: improve wide-state checking in Sherman optimization
fixes github issue #305
2023-02-15 05:46:27 +00:00
Hong, Yang A
0b246c801a literal API: add instruction support
fixes github issue #303
2023-02-15 05:46:27 +00:00
Hong, Yang A
9e17e8520f literal API: add empty string check.
fixes github issue #302, #304
2023-02-15 05:46:27 +00:00
Wang Xiang W
1ecb3aef8b simd_utils: fix undefined instruction issue for 32-bit system
fixes github issue #292
2023-02-15 05:46:27 +00:00
Wang Xiang W
433d2f386a Bump version number for release 2021-01-13 12:26:47 +00:00
Chang, Harry
66dc649197 Fix Klocwork scan issues. 2021-01-13 12:26:47 +00:00
Wang Xiang W
2945c9bd20 Limex: exception handling with AVX512 2021-01-13 12:26:47 +00:00
Chang, Harry
20e69f6ad8 Logical Combination: use hs_misc_free instead of free.
fixes github issue #284
2021-01-13 12:26:47 +00:00
Wang Xiang W
04d3be487d Adjust sensitive terms 2021-01-13 12:26:47 +00:00
Wang Xiang W
5eab583df5 limex: add fast NFA check 2021-01-13 12:26:47 +00:00
Chang, Harry
ddc247516c Discard HAVE_AVX512VBMI checks at Sheng/McSheng compile time. 2021-01-13 12:26:47 +00:00
Chang, Harry
5326b3e688 Add cpu feature / target info "AVX512VBMI". 2021-01-13 12:26:47 +00:00
Zhu,Wenjun
0102f03c9c MCSHENG64: extend to 64-state based on mcsheng 2021-01-13 12:26:47 +00:00
Hong, Yang A
f06e19e6cb lookaround:
add 64x8 and 64x16 shufti models
add mask64 model
expand entry quantity
2021-01-13 12:26:47 +00:00
Chang, Harry
00b697bb3b AVX512VBMI Fat Teddy. 2021-01-13 12:26:47 +00:00
Chang, Harry
007117146c Fix find_vertices_in_cycles(): don't check self-loop in SCC. 2021-01-13 12:26:47 +00:00
Chang, Harry
0c4c149433 Fix sheng64 dump compile issue in clang. 2021-01-13 12:26:47 +00:00
Chang, Harry
d8dc1ad685 Fix sheng64 compile issue in clang and in DEBUG_OUTPUT mode on SKX. 2021-01-13 12:26:47 +00:00
Chang, Harry
27ab2e086d SHENG64: 64-state 1-byte shuffle based DFA. 2021-01-13 12:26:47 +00:00
Chang, Harry
cf06d552f8 SHENG32: Compile priority sheng > mcsheng > sheng32. 2021-01-13 12:26:47 +00:00
Chang, Harry
33cef12050 SHENG32: 32-state 1-byte shuffle based DFA. 2021-01-13 12:26:47 +00:00
Hong, Yang A
15f0ccd1b8 DFA: use sherman economically 2021-01-13 12:23:04 +00:00
Hong, Yang A
765b8f9fb9 literal API: remove HS_FLAG_MULTILINE flag support
fixes github issue #237
2020-05-25 13:47:53 +00:00
Hong, Yang A
88a18dcf98 add AVX512 support for vermicelli model 2020-05-25 13:47:53 +00:00
Hong, Yang A
3ff54f68e4 add Hyperscan version marcro in public header 2020-05-25 13:47:53 +00:00
Chang, Harry
e665e959a0 Revert to AVX2 Fat Teddy instead of AVX512 reinforced Fat Teddy. 2020-05-25 13:47:53 +00:00
Chang, Harry
43204dda48 AVX512VBMI Teddy. 2020-05-25 13:47:53 +00:00
Hong, Yang A
22991f2da1 update description of HS_FLAG_SOM_LEFTMOST to eliminate ambiguity 2020-05-25 13:47:53 +00:00
Hong, Yang A
8344395bfd avoid crash in addLitExpression()
fixes github issue #205
2020-05-25 13:47:53 +00:00
Wang Xiang W
7c4490cfc9 smallwrite: add report dedupe check 2020-05-25 13:46:57 +00:00
Wang Xiang W
411317639b Limex: fix acceleration path analysis 2020-05-25 13:46:42 +00:00
Wang Xiang W
f658c4e149 Noodle: avoid an extra convert instruction
fixes github issue #221
2020-05-25 13:46:42 +00:00
Hong, Yang A
6f6e2744df Cyclic redundancy: change DFS termination condition into successors of cyclic vertex 2020-01-15 15:40:10 +00:00
Dmitry Yakovenko
17de350599 Fix platform compatibility check 2020-01-15 15:40:10 +00:00
Pavel Shlyak
3ca3602755 A tiny cleanup 2019-12-02 16:40:38 +00:00
Wang, Xiang W
49592833a7 Scratch: fix scratch free issue when memory allocation fails
Fixes github issue #174
2019-08-13 14:52:21 +08:00
Hong, Yang A
23e5f06594 add new Literal API for pure literal expressions:
Design compile time api hs_compile_lit() and hs_compile_lit_multi()
to handle pure literal pattern sets. Corresponding option --literal-on
is added for hyperscan testing suites. Extended parameters and part of
flags are not supported for this api.
2019-08-13 14:51:38 +08:00