Chang, Harry
1f4c10a58d
Logical combination: support EOD match from purely negative case.
2019-08-13 14:50:07 +08:00
Mostafa Nazari
92edc37c1f
BUGFIX: fix Numerical result out of range error
...
Fix Error errno=34, fix Numerical result out of range error
issue: https://github.com/intel/hyperscan/issues/155
2019-08-13 14:49:24 +08:00
Derrick Lyndon Pallas
5a1b02bc10
Fix uninitialized use of scatter_unit_uX due to padding
...
These non-packed structures are placed into a std::vector. Later, they
contents of the vector are memcpy'd and the CRC of this space is taken.
Some compilers will zero the struct padding but GCC8.2 with -O2 at least
will not. This means that the CRC is based on uninitialized memory.
Since it is expected that these bytes will be memcpy'd, zero in place once
they're in the std::vector.
Found by Valgrind.
Q.v. Issue #148
2019-08-13 14:49:15 +08:00
Derrick Lyndon Pallas
356c0ab3d4
dispatcher: return correct function type from ifunc resolver
2019-08-13 14:49:00 +08:00
Hong, Yang A
bc37072d5b
Rose: add necessary instruction programs to avoid dead loop
...
Fixes github issue #141
2019-04-10 06:53:03 -04:00
Wang, Xiang W
56e4d5a2c6
runtime: mark scratch unused only when no further scratch references
2019-04-10 06:52:55 -04:00
Wang, Xiang W
28786eb269
Rose: extend handling for unexpected logical combination programs
2019-04-10 06:52:40 -04:00
Wang, Xiang W
6dc9bed310
Rose: add handling for unexpected programs
2019-03-26 10:16:26 -04:00
Wang, Xiang W
229f3d5080
tools: add catches for C++ exceptions
2019-01-21 09:59:37 +08:00
Hong, Yang A
b5a8644b1f
mcclellan: fix dump issue in wide-state case.
2019-01-21 09:59:29 +08:00
Hong, Yang A
f68723a606
literal matching: separate path for pure literal patterns
2019-01-21 09:59:22 +08:00
Chang, Harry
9ab674b18e
fix dead loop under win10 release bin.
2019-01-21 09:58:55 +08:00
Wang, Xiang W
ff9636e022
rose: disable switch optimization for windows
2019-01-21 09:58:38 +08:00
Hong, Yang A
805a550a0a
mcclellan: wide state fixes for sanitisers and accept state construction
2019-01-21 09:58:18 +08:00
Wang, Xiang W
6f3a0a323e
Silence clang warnings about unused variable
2019-01-21 09:57:17 +08:00
Guangqing Chen
922fe2ab20
Rose: optimize switch-case with Labels-as-Values
2019-01-21 09:56:58 +08:00
Hong, Yang A
c06d5e1c14
DFA state compression: 16-bit wide and sherman co-exist
2019-01-21 09:56:37 +08:00
Chang, Harry
acffc9d36c
Jenkins-1424: fixed error which misses report of logical combination under
...
vacuous input.
2019-01-21 09:56:21 +08:00
Chang, Harry
62dfd48d53
Jenkins-1080: fixed error reporting logical combination match in "A&!B" type by
...
moving flush_comb behind report_eod_matches in hs_close_stream/hs_reset_stream.
2019-01-21 09:56:12 +08:00
Wang, Xiang W
8a0e4f8249
Use std::distance explicitly to avoid ambiguity with boost
2019-01-11 16:05:55 +08:00
Lu, Qi
5a0885d235
Windows porting: port hyperscan and chimera tools to windows.
2018-07-09 11:40:43 -04:00
Wang, Xiang W
bf87f8c003
chimera: hybrid of Hyperscan and PCRE
2018-07-09 11:30:35 -04:00
Chang, Harry
8a1c497f44
Logical Combination of patterns.
2018-06-27 14:04:57 +08:00
Wang, Xiang W
08b00f6149
hscollider: fix input length for UTF8 check
2018-06-27 14:04:53 +08:00
Justin Viiret
f877f14641
ue2_graph: more direct property_graph defn
2018-06-27 13:40:26 +08:00
Justin Viiret
a1d4eec116
nfagraph: remove ng_undirected.h
2018-06-27 13:40:21 +08:00
Justin Viiret
3c776b25c3
ng_repeat: use undirected_graph
2018-06-27 13:40:15 +08:00
Justin Viiret
c7c90c7ab7
graph_undirected: adapt bidi graph to undirected
...
Introduces an adaptor (like the BGL's reverse_graph) that presents an
undirected view of a bidirectional graph.
Initially used in ng_calc_components.
2018-06-27 13:40:10 +08:00
Justin Viiret
16076ed4a3
mcsheng: debug format string fixes
2018-06-27 13:39:30 +08:00
Justin Viiret
25adf3f512
sheng: fix reportCurrent eod flag
...
eod here should be 0, not 1. The reportCurrent NFA API function for
Sheng is unused at the moment, so this wasn't causing any problems
earlier.
2018-06-27 13:39:24 +08:00
Justin Viiret
e65479dae5
mcclellancompile: MAX_SHERMAN_LIST_LEN can be 9
2018-06-27 13:39:10 +08:00
Justin Viiret
ce7cfbde82
misc: docs, typo fixes, small cleanups
2018-06-27 13:39:05 +08:00
Justin Viiret
ea9d1f69fb
rose_build_add: remove unused max_adj param
...
In prepAcceptForAddAnchoredNFA(), we used to support different values
for max_adj. Since it's now always zero, remove it.
2018-06-27 13:39:00 +08:00
Justin Viiret
08bf909e2b
ng_violet: make calcSplitRatio operation faster
...
Implements count_reachable in a less malloc-happy way, improving
compile performance. Adds a count() function to small_color_map.
2018-06-27 13:38:55 +08:00
Justin Viiret
cadc7028b1
ng_width: turn min width check into assert
2018-06-27 13:38:32 +08:00
Matthew Barr
50ea83cb26
Move cpuid checks inline.
...
During fat runtime function resolution there was a chance that the PLT
might not be initialised in time for us to call the cpuid check
functions. Moving them inline means there is no PLT to worry about.
Fixes #78
2018-01-19 06:32:18 -05:00
Matthew Barr
090632f61a
ext param - more consistent depth check
2018-01-19 06:24:21 -05:00
Justin Viiret
58eda9155d
doc: use doxygen @p to refer to parameters
2018-01-19 06:17:22 -05:00
Justin Viiret
def9636d01
doc: document that hs_close_stream frees memory
...
Add explicit documentation that hs_close_stream() will free the stream
state after returning any matches.
2018-01-19 06:16:14 -05:00
Matthew Barr
1891f14755
Add support for Hamming distance approx matching
2018-01-19 06:11:43 -05:00
Matthew Barr
5021d7ab78
De-const the empty maps.
...
Clang 3.8 complains about attempting to default init const objects
without a user-provided constructor.
2017-09-22 15:17:56 +10:00
Hong, Yang A
ae918116ab
find_better_daddy: position change
2017-09-18 13:31:09 +10:00
Matthew Barr
dd286323a9
Don't let haigs into Tamarama
2017-09-18 13:29:34 +10:00
Justin Viiret
ba0bf0c991
rose_build_add_mask: improve findMaskLiteral perf
2017-09-18 13:29:34 +10:00
Matthew Barr
3b63a95f01
Handle any exceptions while constructing compiler elements
...
Specifically, NG has a Rose which has a LeftEng which has a depth, which can
throw an error on construction. If we put these in the try-catch we don't
have to worry so much in future.
2017-09-18 13:29:34 +10:00
Matthew Barr
5fc2c803a2
teddy: alignment decl should match defn
...
Spotted by coverity. #174512
2017-09-18 13:29:34 +10:00
Justin Viiret
af519f3190
hwlm_build: default for HWLMProto::make_small
...
Silences Coverity warning.
2017-09-18 13:29:34 +10:00
Justin Viiret
19e95b0314
rose_build_matchers: init LitFragment fields
...
Silences Coverity warning about squash, delay_squash.
2017-09-18 13:29:34 +10:00
Alex Coyte
a1fdc3afcf
dedupeLeftfixesVariableLag: refactor, more blockmode deduping
2017-09-18 13:29:34 +10:00
Alex Coyte
d6c050abd6
maintain castle report information
2017-09-18 13:29:34 +10:00