howler-api 4.0.0.dev1190__tar.gz → 4.0.0.dev1198__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.
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/PKG-INFO +1 -1
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v2/fuzzy.py +1 -1
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/case_service.py +5 -2
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/pyproject.toml +1 -1
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/README.md +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/add_label.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/add_to_bundle.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/add_to_case.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/change_field.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/demote.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/example_plugin.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/prioritization.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/promote.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/remove_from_bundle.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/remove_label.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/actions/transition.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/base.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/socket.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/action.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/analytic.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/auth.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/clue.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/configs.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/dossier.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/help.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/hit.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/notebook.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/overview.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/search.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/template.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/tool.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/user.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/utils/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/utils/etag.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/utils/params.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v1/view.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v2/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v2/case.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v2/ingest.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/api/v2/search.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/app.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/README.md +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/classification.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/classification.yml +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/exceptions.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/loader.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/logging/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/logging/audit.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/logging/format.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/net.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/net_static.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/random_user.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/common/swagger.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/config.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/cronjobs/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/cronjobs/action_queue_worker.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/cronjobs/correlation.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/cronjobs/retention.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/cronjobs/view_cleanup.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/README.md +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/bulk.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/collection.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/constants.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/exceptions.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/howler_store.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/migrations/fix_process.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/operations.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/schemas.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/store.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/support/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/support/build.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/support/schemas.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/types.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/error.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/README.md +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/generate_mitre.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/generate_sigma_rules.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/generate_tlds.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/reindex_data.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/wipe_databases.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/gunicorn_config.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/healthz.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/azure.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/discover.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/hit.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/oauth.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/search.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/workflow.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/helper/ws.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/README.md +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/base.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/charter.txt +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/constants.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/helper.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/howler_enum.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/mixins.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/action.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/analytic.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/assemblyline.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/aws.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/azure.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/case.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/cbs.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/clue.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/config.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/dossier.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/agent.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/autonomous_system.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/client.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/cloud.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/code_signature.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/container.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/dns.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/egress.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/elf.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/email.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/error.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/event.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/faas.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/file.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/geo.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/group.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/hash.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/host.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/http.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/ingress.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/interface.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/network.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/observer.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/organization.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/os.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/pe.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/process.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/registry.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/related.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/rule.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/server.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/threat.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/tls.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/url.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/user.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/user_agent.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/vulnerability.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/event.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/gcp.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/hit.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/howler_data.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/lead.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/localized_label.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/overview.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/pivot.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/record.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/template.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/user.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/view.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/random_data.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/randomizer.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/patched.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/plugins/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/plugins/config.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/README.md +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/counters.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/events.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/hash.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/lock.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/comms.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/multi.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/named.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/priority.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/set.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/user_quota_tracker.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/security/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/security/socket.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/security/utils.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/action_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/analytic_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/auth_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/bundle_compat_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/comms_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/config_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/correlation_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/docs_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/dossier_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/event_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/fuzzy_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/hit_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/jwt_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/lucene_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/notebook_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/overview_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/search_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/template_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/user_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/viewer_service.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/telemetry.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/__init__.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/annotations.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/chunk.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/compat.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/constants.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/dict_utils.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/isotime.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/list_utils.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/lucene.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/path.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/socket_utils.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/str_utils.py +0 -0
- {howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/utils/uid.py +0 -0
|
@@ -104,7 +104,7 @@ def fuzzy_search(**kwargs): # noqa: C901
|
|
|
104
104
|
track_total_hits=track_total_hits,
|
|
105
105
|
access_control=access_control,
|
|
106
106
|
)
|
|
107
|
-
except SearchException as e:
|
|
107
|
+
except SearchException as e: # pragma: no cover
|
|
108
108
|
return bad_request(err=str(e))
|
|
109
109
|
|
|
110
110
|
return ok(result)
|
|
@@ -356,8 +356,8 @@ def get_parent_from_path(case: str | Case | None, path: str | None, create_if_mi
|
|
|
356
356
|
current_parent = folder.id
|
|
357
357
|
|
|
358
358
|
# Find the final parent folder
|
|
359
|
-
if current_parent is None:
|
|
360
|
-
return None
|
|
359
|
+
if current_parent is None: # pragma: no cover
|
|
360
|
+
return None # pragma: no cover
|
|
361
361
|
|
|
362
362
|
return next((item for item in case.items if item.id == current_parent), None)
|
|
363
363
|
|
|
@@ -1066,6 +1066,9 @@ def update_case_rule(case_id: str, rule_id: str, update_data: dict, user: User)
|
|
|
1066
1066
|
|
|
1067
1067
|
changes: list[str] = []
|
|
1068
1068
|
for key, value in patch.items():
|
|
1069
|
+
if key == "timeframe" and value is not None and (not isinstance(value, int) or value <= 0):
|
|
1070
|
+
raise HowlerValueError("Rule timeframe must be a positive integer or None")
|
|
1071
|
+
|
|
1069
1072
|
old_value = getattr(rule, key, None)
|
|
1070
1073
|
setattr(rule, key, value)
|
|
1071
1074
|
changes.append(f"{key}: '{old_value}' → '{value}'")
|
|
@@ -152,7 +152,7 @@ suppress-none-returning = true
|
|
|
152
152
|
[tool.poetry]
|
|
153
153
|
package-mode = true
|
|
154
154
|
name = "howler-api"
|
|
155
|
-
version = "4.0.0.
|
|
155
|
+
version = "4.0.0.dev1198"
|
|
156
156
|
description = "Howler - API server"
|
|
157
157
|
authors = [
|
|
158
158
|
"Canadian Centre for Cyber Security <howler@cyber.gc.ca>",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/cronjobs/action_queue_worker.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/datastore/migrations/fix_process.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/external/generate_sigma_rules.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/autonomous_system.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/code_signature.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/odm/models/ecs/vulnerability.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/__init__.py
RENAMED
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/comms.py
RENAMED
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/multi.py
RENAMED
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/named.py
RENAMED
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/queues/priority.py
RENAMED
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/remote/datatypes/user_quota_tracker.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/bundle_compat_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-4.0.0.dev1190 → howler_api-4.0.0.dev1198}/howler/services/correlation_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|