Skip to content

Commit d1efabf

Browse files
authored
Merge pull request #219 from UncoderIO/gis-9195
Gis 9195 fix sentinel one power query regex escaping
2 parents c51fb74 + de542e9 commit d1efabf

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

uncoder-core/app/translator/platforms/microsoft/renders/microsoft_sentinel_rule.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ def finalize_query(
105105
not_supported_functions: Optional[list] = None,
106106
unmapped_fields: Optional[list[str]] = None,
107107
*args, # noqa: ARG002
108-
**kwargs, # noqa: ARG002
108+
**kwargs,
109109
) -> str:
110110
if not kwargs.get("raw_query", False):
111111
query = super().finalize_query(prefix=prefix, query=query, functions=functions)

uncoder-core/app/translator/platforms/sentinel_one/renders/sentinel_one_power_query.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ def contains_modifier(self, field: str, value: DEFAULT_VALUE_TYPE) -> str:
6565
for v in value
6666
)
6767
return f"{field} contains ({values})"
68-
value = self._pre_process_value(field, value, value_type=ValueType.value)
68+
value = self._pre_process_value(field, value, value_type=ValueType.value, wrap_str=True, wrap_int=True)
6969
return f"{field} contains {value}"
7070

7171
def endswith_modifier(self, field: str, value: DEFAULT_VALUE_TYPE) -> str:
@@ -77,11 +77,14 @@ def startswith_modifier(self, field: str, value: DEFAULT_VALUE_TYPE) -> str:
7777
def regex_modifier(self, field: str, value: DEFAULT_VALUE_TYPE) -> str:
7878
if isinstance(value, list):
7979
values = self.list_token.join(
80-
self._pre_process_value(field, v, value_type=ValueType.regex_value, wrap_str=True, wrap_int=True)
80+
self.str_value_manager.escape_manager.escape(
81+
self._pre_process_value(field, v, value_type=ValueType.regex_value, wrap_str=True, wrap_int=True)
82+
)
8183
for v in value
8284
)
8385
return f"{field} matches ({values})"
8486
value = self._pre_process_value(field, value, value_type=ValueType.regex_value, wrap_str=True, wrap_int=True)
87+
value = self.str_value_manager.escape_manager.escape(value)
8588
return f"{field} matches {value}"
8689

8790
def is_none(self, field: str, value: DEFAULT_VALUE_TYPE) -> str: # noqa: ARG002

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy