contentctl 5.5.11__tar.gz → 5.5.13__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. {contentctl-5.5.11 → contentctl-5.5.13}/PKG-INFO +1 -1
  2. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/content_versioning_service.py +6 -10
  3. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/savedsearches_detections.j2 +4 -3
  4. {contentctl-5.5.11 → contentctl-5.5.13}/pyproject.toml +1 -1
  5. {contentctl-5.5.11 → contentctl-5.5.13}/LICENSE.md +0 -0
  6. {contentctl-5.5.11 → contentctl-5.5.13}/README.md +0 -0
  7. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/__init__.py +0 -0
  8. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/build.py +0 -0
  9. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/deploy_acs.py +0 -0
  10. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/DetectionTestingManager.py +0 -0
  11. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/GitService.py +0 -0
  12. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/generate_detection_coverage_badge.py +0 -0
  13. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/infrastructures/DetectionTestingInfrastructure.py +0 -0
  14. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/infrastructures/DetectionTestingInfrastructureContainer.py +0 -0
  15. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/infrastructures/DetectionTestingInfrastructureServer.py +0 -0
  16. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/progress_bar.py +0 -0
  17. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/views/DetectionTestingView.py +0 -0
  18. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/views/DetectionTestingViewCLI.py +0 -0
  19. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/views/DetectionTestingViewFile.py +0 -0
  20. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/detection_testing/views/DetectionTestingViewWeb.py +0 -0
  21. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/doc_gen.py +0 -0
  22. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/initialize.py +0 -0
  23. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/inspect.py +0 -0
  24. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/new_content.py +0 -0
  25. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/release_notes.py +0 -0
  26. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/reporting.py +0 -0
  27. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/test.py +0 -0
  28. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/actions/validate.py +0 -0
  29. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/api.py +0 -0
  30. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/contentctl.py +0 -0
  31. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/enrichments/attack_enrichment.py +0 -0
  32. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/enrichments/cve_enrichment.py +0 -0
  33. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/enrichments/splunk_app_enrichment.py +0 -0
  34. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/helper/link_validator.py +0 -0
  35. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/helper/logger.py +0 -0
  36. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/helper/splunk_app.py +0 -0
  37. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/helper/utils.py +0 -0
  38. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/input/director.py +0 -0
  39. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/input/new_content_questions.py +0 -0
  40. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/input/yml_reader.py +0 -0
  41. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/abstract_security_content_objects/detection_abstract.py +0 -0
  42. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/abstract_security_content_objects/security_content_object_abstract.py +0 -0
  43. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/alert_action.py +0 -0
  44. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/annotated_types.py +0 -0
  45. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/atomic.py +0 -0
  46. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/base_security_event.py +0 -0
  47. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/base_test.py +0 -0
  48. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/base_test_result.py +0 -0
  49. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/baseline.py +0 -0
  50. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/baseline_tags.py +0 -0
  51. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/config.py +0 -0
  52. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/constants.py +0 -0
  53. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/correlation_search.py +0 -0
  54. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/dashboard.py +0 -0
  55. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/data_source.py +0 -0
  56. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment.py +0 -0
  57. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment_email.py +0 -0
  58. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment_notable.py +0 -0
  59. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment_phantom.py +0 -0
  60. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment_rba.py +0 -0
  61. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment_scheduling.py +0 -0
  62. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/deployment_slack.py +0 -0
  63. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/detection.py +0 -0
  64. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/detection_metadata.py +0 -0
  65. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/detection_stanza.py +0 -0
  66. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/detection_tags.py +0 -0
  67. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/drilldown.py +0 -0
  68. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/enums.py +0 -0
  69. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/errors.py +0 -0
  70. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/integration_test.py +0 -0
  71. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/integration_test_result.py +0 -0
  72. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/investigation.py +0 -0
  73. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/investigation_tags.py +0 -0
  74. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/lookup.py +0 -0
  75. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/macro.py +0 -0
  76. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/manual_test.py +0 -0
  77. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/manual_test_result.py +0 -0
  78. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/mitre_attack_enrichment.py +0 -0
  79. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/notable_action.py +0 -0
  80. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/notable_event.py +0 -0
  81. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/playbook.py +0 -0
  82. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/playbook_tags.py +0 -0
  83. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/rba.py +0 -0
  84. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/removed_security_content_object.py +0 -0
  85. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/risk_analysis_action.py +0 -0
  86. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/risk_event.py +0 -0
  87. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/risk_object.py +0 -0
  88. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/savedsearches_conf.py +0 -0
  89. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/security_content_object.py +0 -0
  90. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/story.py +0 -0
  91. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/story_tags.py +0 -0
  92. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/test_attack_data.py +0 -0
  93. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/test_group.py +0 -0
  94. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/threat_object.py +0 -0
  95. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/throttling.py +0 -0
  96. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/unit_test.py +0 -0
  97. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/unit_test_baseline.py +0 -0
  98. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/objects/unit_test_result.py +0 -0
  99. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/api_json_output.py +0 -0
  100. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/attack_nav_output.py +0 -0
  101. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/attack_nav_writer.py +0 -0
  102. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/conf_output.py +0 -0
  103. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/conf_writer.py +0 -0
  104. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/doc_md_output.py +0 -0
  105. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/jinja_writer.py +0 -0
  106. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/json_writer.py +0 -0
  107. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/runtime_csv_writer.py +0 -0
  108. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/svg_output.py +0 -0
  109. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/analyticstories_detections.j2 +0 -0
  110. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/analyticstories_investigations.j2 +0 -0
  111. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/analyticstories_stories.j2 +0 -0
  112. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/app.conf.j2 +0 -0
  113. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/app.manifest.j2 +0 -0
  114. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/collections.j2 +0 -0
  115. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/content-version.j2 +0 -0
  116. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/detection_count.j2 +0 -0
  117. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/detection_coverage.j2 +0 -0
  118. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_detection_page.j2 +0 -0
  119. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_detections.j2 +0 -0
  120. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_navigation.j2 +0 -0
  121. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_navigation_pages.j2 +0 -0
  122. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_playbooks.j2 +0 -0
  123. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_playbooks_page.j2 +0 -0
  124. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_stories.j2 +0 -0
  125. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/doc_story_page.j2 +0 -0
  126. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/es_investigations_investigations.j2 +0 -0
  127. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/es_investigations_stories.j2 +0 -0
  128. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/header.j2 +0 -0
  129. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/macros.j2 +0 -0
  130. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/panel.j2 +0 -0
  131. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/savedsearches_baselines.j2 +0 -0
  132. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/savedsearches_fbds.j2 +0 -0
  133. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/savedsearches_investigations.j2 +0 -0
  134. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/server.conf.j2 +0 -0
  135. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/transforms.j2 +0 -0
  136. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/templates/workflow_actions.j2 +0 -0
  137. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/output/yml_writer.py +0 -0
  138. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/README.md +0 -0
  139. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_default.yml +0 -0
  140. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/README/essoc_story_detail.txt +0 -0
  141. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/README/essoc_summary.txt +0 -0
  142. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/README/essoc_usage_dashboard.txt +0 -0
  143. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/README.md +0 -0
  144. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/default/analytic_stories.conf +0 -0
  145. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/default/commands.conf +0 -0
  146. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/default/data/ui/nav/default.xml +0 -0
  147. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/default/data/ui/views/escu_summary.xml +0 -0
  148. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/default/data/ui/views/feedback.xml +0 -0
  149. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/default/use_case_library.conf +0 -0
  150. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/lookups/mitre_enrichment.csv +0 -0
  151. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/metadata/default.meta +0 -0
  152. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/static/appIcon.png +0 -0
  153. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/static/appIconAlt.png +0 -0
  154. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/static/appIconAlt_2x.png +0 -0
  155. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/app_template/static/appIcon_2x.png +0 -0
  156. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/data_sources/sysmon_eventid_1.yml +0 -0
  157. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/datamodels_cim.conf +0 -0
  158. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/datamodels_custom.conf +0 -0
  159. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/deployments/escu_default_configuration_anomaly.yml +0 -0
  160. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/deployments/escu_default_configuration_baseline.yml +0 -0
  161. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/deployments/escu_default_configuration_correlation.yml +0 -0
  162. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/deployments/escu_default_configuration_hunting.yml +0 -0
  163. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/deployments/escu_default_configuration_ttp.yml +0 -0
  164. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/detections/application/.gitkeep +0 -0
  165. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/detections/cloud/.gitkeep +0 -0
  166. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/detections/endpoint/anomalous_usage_of_7zip.yml +0 -0
  167. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/detections/network/.gitkeep +0 -0
  168. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/detections/web/.gitkeep +0 -0
  169. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/macros/security_content_ctime.yml +0 -0
  170. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/macros/security_content_summariesonly.yml +0 -0
  171. {contentctl-5.5.11 → contentctl-5.5.13}/contentctl/templates/stories/cobalt_strike.yml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: contentctl
3
- Version: 5.5.11
3
+ Version: 5.5.13
4
4
  Summary: Splunk Content Control Tool
5
5
  License: Apache 2.0
6
6
  License-File: LICENSE.md
@@ -7,13 +7,7 @@ from functools import cached_property
7
7
  from typing import Any, Callable
8
8
 
9
9
  import splunklib.client as splunklib # type: ignore
10
- from pydantic import (
11
- BaseModel,
12
- Field,
13
- PrivateAttr,
14
- computed_field,
15
- model_validator,
16
- )
10
+ from pydantic import BaseModel, Field, PrivateAttr, computed_field, model_validator
17
11
  from semantic_version import Version
18
12
  from splunklib.binding import HTTPError, ResponseReader # type: ignore
19
13
  from splunklib.data import Record # type: ignore
@@ -422,12 +416,14 @@ class ContentVersioningService(BaseModel):
422
416
  if self.kvstore_content_versioning:
423
417
  query = (
424
418
  f"| inputlookup cms_content_lookup | search app_name={self.global_config.app.appid}"
425
- f"| fields content"
419
+ "| fields content | spath input=content "
420
+ "| search action.correlationsearch.detection_type=ebd | fields content"
426
421
  )
427
422
  elif self.indexbased_content_versioning:
428
423
  query = (
429
- f"search index=cms_main sourcetype=stash_common_detection_model "
430
- f'app_name="{self.global_config.app.appid}" | fields _raw'
424
+ "search index=cms_main sourcetype=stash_common_detection_model "
425
+ f'app_name="{self.global_config.app.appid}" '
426
+ "action.correlationsearch.detection_type=ebd | fields _raw"
431
427
  )
432
428
  else:
433
429
  if self.kvstore_content_versioning:
@@ -1,15 +1,16 @@
1
- ### {{app.label}} DETECTIONS ###
2
-
3
1
  [default]
4
2
  disabled = 1
5
3
  description = "This search was removed in a previous release, or is otherwise not present."
6
4
  search = | makeresults | eval text = "This search was removed in a previous release, or is otherwise not present."
7
5
 
6
+ ### {{app.label}} DETECTIONS ###
7
+
8
+
8
9
  {% for detection in objects %}
9
10
  [{{ detection.get_conf_stanza_name(app) }}]
10
11
  action.escu = 0
11
12
  action.escu.enabled = 1
12
- description = {{ detection.status_aware_description | escapeNewlines() }}
13
+ description = {{ detection.status_aware_description | escapeNewlines() }}
13
14
  action.escu.mappings = {{ detection.mappings | tojson }}
14
15
  action.escu.data_models = {{ detection.datamodel | tojson }}
15
16
  action.escu.eli5 = {{ detection.status_aware_description | escapeNewlines() }}
@@ -1,7 +1,7 @@
1
1
  [tool.poetry]
2
2
  name = "contentctl"
3
3
 
4
- version = "5.5.11"
4
+ version = "5.5.13"
5
5
 
6
6
  description = "Splunk Content Control Tool"
7
7
  authors = ["STRT <research@splunk.com>"]
File without changes
File without changes