synapse 2.202.0__tar.gz → 2.204.0__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.
Potentially problematic release.
This version of synapse might be problematic. Click here for more details.
- {synapse-2.202.0/synapse.egg-info → synapse-2.204.0}/PKG-INFO +4 -2
- {synapse-2.202.0 → synapse-2.204.0}/pyproject.toml +2 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/axon.py +4 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cmds/cortex.py +4 -6
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cmds/hive.py +10 -10
- {synapse-2.202.0 → synapse-2.204.0}/synapse/common.py +17 -58
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cortex.py +6 -6
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/__init__.py +3 -2
- synapse-2.204.0/synapse/data/iana.uris.mpk +1 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/auth.py +3 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/autodoc.py +3 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/cell.py +21 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/cli.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/config.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/encoding.py +4 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/httpapi.py +7 -11
- synapse-2.204.0/synapse/lib/json.py +224 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/lmdbslab.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/oauth.py +176 -54
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/rstorm.py +18 -14
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/schemas.py +87 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/scrape.py +35 -13
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/snap.py +2 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/storm.lark +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/storm.py +11 -6
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormhttp.py +11 -13
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/aha.py +4 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/auth.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/cache.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/cortex.py +5 -5
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/graph.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/imap.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/json.py +8 -11
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/model.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/notifications.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/oauth.py +105 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/stats.py +4 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/stix.py +3 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/vault.py +6 -6
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/xml.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormtypes.py +19 -28
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/structlog.py +3 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/types.py +2 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/urlhelp.py +28 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/version.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/view.py +7 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/base.py +51 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/person.py +5 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/telepath.py +5 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/__init__.py +0 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_axon.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_cmds_cortex.py +3 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_cmds_hive.py +4 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_common.py +29 -19
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_cortex.py +5 -5
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_ast.py +3 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_autodoc.py +5 -5
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_base.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_cell.py +16 -10
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_config.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_encoding.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_grammar.py +86 -64
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_httpapi.py +56 -13
- synapse-2.204.0/synapse/tests/test_lib_json.py +219 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_multislabseqn.py +2 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_node.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_scrape.py +50 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_storm.py +36 -8
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormhttp.py +4 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_auth.py +3 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_cortex.py +10 -12
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_infosec.py +2 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_json.py +18 -21
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_log.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_oauth.py +603 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_stats.py +13 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_stix.py +5 -5
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormtypes.py +4 -4
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_structlog.py +5 -6
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_urlhelp.py +7 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_view.py +8 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_base.py +32 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_infotech.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_person.py +2 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_telepath.py +0 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_cryo_cat.py +4 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_docker_validate.py +4 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_feed.py +30 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_genpkg.py +1 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_healthcheck.py +8 -7
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_utils.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/utils.py +3 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/autodoc.py +3 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/changelog.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/cryo/cat.py +3 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/csvtool.py +2 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/docker/validate.py +5 -5
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/feed.py +2 -1
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/genpkg.py +3 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/healthcheck.py +2 -3
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/json2mpk.py +2 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse/utils/getrefs.py +6 -6
- synapse-2.204.0/synapse/vendor/cpython/lib/json.py +35 -0
- synapse-2.204.0/synapse/vendor/cpython/lib/test/test_json.py +22 -0
- {synapse-2.202.0 → synapse-2.204.0/synapse.egg-info}/PKG-INFO +4 -2
- {synapse-2.202.0 → synapse-2.204.0}/synapse.egg-info/SOURCES.txt +5 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse.egg-info/requires.txt +1 -0
- {synapse-2.202.0 → synapse-2.204.0}/LICENSE +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/README.rst +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/setup.cfg +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cells.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cmds/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cmds/boss.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/cryotank.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/daemon.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/attack-flow/LICENSE.txt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/attack-flow/README.md +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/attack-flow/attack-flow-schema-2.0.0.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/certs/cas/The Vertex Project Intermediate CA 00.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/certs/cas/The Vertex Project ROOT CA.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/certs/crls/The Vertex Project Intermediate CA 00.crl +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/certs/crls/The Vertex Project ROOT CA.crl +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/iana.tlds.mpk +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/README.md +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/LICENSE.txt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/binary.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/bundle.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/core.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/cyber-observable-core.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/dictionary.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension-definition.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/external-reference.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/granular-marking.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hashes-type.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hex.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/identifier.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/kill-chain-phase.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/language-content.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/marking-definition.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/properties.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/timestamp.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/url-regex.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/artifact.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/autonomous-system.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/directory.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/domain-name.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-addr.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-message.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/file.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv4-addr.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv6-addr.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mac-addr.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mutex.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/network-traffic.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/process.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/software.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/url.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/user-account.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/windows-registry-key.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/x509-certificate.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/attack-pattern.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/campaign.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/course-of-action.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/grouping.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/identity.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/incident.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/indicator.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/infrastructure.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/intrusion-set.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/location.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware-analysis.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/note.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/observed-data.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/opinion.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/report.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/threat-actor.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/tool.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/vulnerability.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/relationship.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/sighting.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/datamodel.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/exc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/glob.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/agenda.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/aha.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/ast.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/base.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/boss.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/cache.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/certdir.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/chop.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/cmd.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/cmdr.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/const.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/coro.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/crypto/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/crypto/coin.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/crypto/ecc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/crypto/passwd.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/crypto/rsa.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/crypto/tinfoil.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/datfile.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/drive.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/dyndeps.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/gis.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/grammar.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/hashitem.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/hashset.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/health.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/hive.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/ingest.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/interval.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/jsonstor.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/layer.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/link.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/modelrev.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/module.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/modules.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/msgpack.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/multislabseqn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/nexus.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/node.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/output.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/parser.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/platforms/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/platforms/common.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/platforms/darwin.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/platforms/freebsd.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/platforms/linux.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/platforms/windows.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/queue.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/ratelimit.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/reflect.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/scope.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/share.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/slaboffs.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/slabseqn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/spooled.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/storm_format.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormctrl.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/backup.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/basex.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/cell.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/compression.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/easyperm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/env.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/ethereum.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/gen.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/gis.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/hashes.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/hex.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/index.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/infosec.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/ipv6.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/iters.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/log.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/macro.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/math.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/mime.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/modelext.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/pack.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/project.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/random.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/scrape.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/smtp.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/spooled.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/storm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/tabular.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/utils.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/version.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormlib/yaml.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormsvc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/stormwhois.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/task.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/thishost.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/thisplat.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/threads.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/time.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lib/trigger.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/cvss.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/iana.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/iso3166.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/macho.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/pe.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/phonenum.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/lookup/timezones.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/mindmeld.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/auth.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/belief.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/biz.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/crypto.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/dns.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/doc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/economic.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/entity.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/files.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/geopol.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/geospace.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/gov/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/gov/cn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/gov/intl.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/gov/us.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/inet.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/infotech.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/language.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/material.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/math.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/media.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/orgs.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/planning.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/proj.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/risk.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/science.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/syn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/telco.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/models/transport.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/aha.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/axon.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/cell.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/cortex.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/cryotank.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/jsonstor.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/servers/stemcell.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/TestUtilsGetrefs.test_basics.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/aha/certs/cas/synapse.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/aha/certs/cas/synapse.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/aha/certs/users/root@synapse.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/aha/certs/users/root@synapse.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/attack_flow/CISA AA22-138B VMWare Workspace (Alt).json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/attack_flow/CISA_Iranian_APT.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/cas/ca.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/cas/ca.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/hosts/localhost.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/hosts/localhost.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/users/root.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/users/root.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/users/user.crt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/certdir/users/user.key +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/changelog/model_2.176.0_16ee721a6b7221344eaf946c3ab4602dda546b1a.yaml.gz +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/changelog/model_2.176.0_2a25c58bbd344716cd7cbc3f4304d8925b0f4ef2.yaml.gz +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/cpedata.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/rstorm/httpresp1.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/rstorm/httpresp2.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/rstorm/httpresp3.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/rstorm/httprespmulti.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/rstorm/testsvc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stix_export/basic.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stix_export/custom0.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stix_export/risk0.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stix_import/apt1.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stix_import/oasis-example-00.json +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/argvquery.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/dupesubs.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/lookup.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/pivot.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/pragma-nocov.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/spin.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormcov/stormctrl.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormmod/common +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/badapidef.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/badcmdname.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/badendpoints.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/badjsonpkg.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/docs/foobar.md +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/docs/foobar.svg +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/dotstorm/dotstorm.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/dotstorm/storm/commands/dotstorm.bar.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/dotstorm/storm/modules/dotstorm.foo.storm +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/nocontent.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/nomime.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/nopath.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/nosuchfile.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/notitle.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/optic/index.html +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/storm/commands/invalidCMD +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/storm/commands/testpkg.baz +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/storm/commands/testpkgcmd +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/storm/modules/apimod +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/storm/modules/testmod +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/testpkg.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/workflows/testpkg-bam.newp +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/workflows/testpkg-baz.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/stormpkg/workflows/testpkg-foo.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/test.dat +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/files/testcore/cell.yaml +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/nopmod.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_cmds_boss.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_cryotank.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_daemon.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_data.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_datamodel.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_exc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_glob.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_init.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_agenda.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_aha.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_auth.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_boss.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_cache.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_certdir.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_chop.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_cli.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_const.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_coro.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_crypto_coin.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_crypto_ecc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_crypto_passwd.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_crypto_tinfoil.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_datfile.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_dyndeps.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_gis.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_hashitem.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_hashset.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_health.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_hive.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_interval.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_jsonstor.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_layer.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_link.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_lmdbslab.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_modelrev.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_module.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_msgpack.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_nexus.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_output.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_platforms_linux.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_queue.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_ratelimit.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_reflect.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_rstorm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_scope.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_slaboffs.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_slabseqn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_snap.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_spooled.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_storm_format.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormctrl.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_aha.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_backup.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_basex.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_cache.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_cell.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_compression.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_easyperm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_env.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_ethereum.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_gen.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_gis.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_hashes.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_hex.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_imap.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_index.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_ipv6.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_iters.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_macro.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_mime.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_model.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_modelext.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_pack.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_random.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_scrape.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_smtp.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_spooled.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_storm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_tabular.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_utils.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_vault.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_xml.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormlib_yaml.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormsvc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_stormwhois.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_task.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_thishost.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_time.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_trigger.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_types.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lib_version.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lookup_iso3166.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_lookup_phonenum.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_mindmeld.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_auth.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_belief.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_biz.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_crypto.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_dns.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_doc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_economic.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_files.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_geopol.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_geospace.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_gov_cn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_gov_intl.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_gov_us.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_inet.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_language.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_material.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_math.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_media.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_orgs.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_planning.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_proj.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_risk.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_science.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_syn.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_telco.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_model_transport.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_servers_axon.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_servers_cortex.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_servers_cryotank.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_servers_stemcell.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_servers_univ.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_aha.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_apikey.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_autodoc.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_axon2axon.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_backup.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_cellauth.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_changelog.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_cryo_list.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_csvtool.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_easycert.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_guid.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_hiveload.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_hivesave.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_json2mpk.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_livebackup.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_modrole.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_moduser.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_promote.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_pullfile.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_pushfile.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_reload.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_rstorm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_snapshot.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_tools_storm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_utils_getrefs.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tests/test_utils_stormcov.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/clone.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/easycert.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/enroll.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/list.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/mirror.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/provision/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/provision/service.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/aha/provision/user.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/apikey.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/axon2axon.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/backup.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/cellauth.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/cmdr.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/cryo/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/cryo/list.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/docker/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/easycert.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/guid.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/hive/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/hive/load.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/hive/save.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/livebackup.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/modrole.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/moduser.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/promote.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/pullfile.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/pushfile.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/reload.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/rstorm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/snapshot.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/tools/storm.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/utils/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/utils/stormcov/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/utils/stormcov/plugin.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/LICENSE +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/base58.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/convert.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/crypto.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/tests/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cashaddress/tests/test_cashaddress.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/LICENSE +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/email/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/email/_parseaddr.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/email/utils.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/http/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/http/cookies.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/ipaddress.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/support/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/test_email/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/test_email/test_email.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/test_email/test_utils.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/test_http_cookies.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/cpython/lib/test/test_ipaddress.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/substrateinterface/LICENSE +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/substrateinterface/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/substrateinterface/tests/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/substrateinterface/tests/test_ss58.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/substrateinterface/utils/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/substrateinterface/utils/ss58.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/utils.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/LICENSE +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/constants.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/core/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/core/addresscodec/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/core/addresscodec/codec.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/core/addresscodec/exceptions.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/core/addresscodec/main.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/core/addresscodec/utils.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/tests/__init__.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/tests/test_codec.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/tests/test_main.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse/vendor/xrpl/tests/test_main_test_cases.py +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse.egg-info/dependency_links.txt +0 -0
- {synapse-2.202.0 → synapse-2.204.0}/synapse.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: synapse
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.204.0
|
|
4
4
|
Summary: Synapse Intelligence Analysis Framework
|
|
5
5
|
Author-email: The Vertex Project LLC <root@vertex.link>
|
|
6
6
|
License: Apache License 2.0
|
|
@@ -50,6 +50,7 @@ Requires-Dist: idna<3.8,>=3.6
|
|
|
50
50
|
Requires-Dist: python-dateutil<3.0,>=2.8
|
|
51
51
|
Requires-Dist: pytz<2024.1,>=2023.3
|
|
52
52
|
Requires-Dist: beautifulsoup4[html5lib]<5.0,>=4.11.1
|
|
53
|
+
Requires-Dist: orjson<4.0,>=3.10.15
|
|
53
54
|
Provides-Extra: dev
|
|
54
55
|
Requires-Dist: pytest<8.0.0,>=7.2.0; extra == "dev"
|
|
55
56
|
Requires-Dist: autopep8<3.0.0,>=2.0.4; extra == "dev"
|
|
@@ -63,6 +64,7 @@ Requires-Dist: sphinx<9.0.0,>=8.0.0; extra == "docs"
|
|
|
63
64
|
Requires-Dist: sphinx-rtd-theme<4.0.0,>=3.0.0; extra == "docs"
|
|
64
65
|
Requires-Dist: sphinx-notfound-page<2.0.0,>=1.0.4; extra == "docs"
|
|
65
66
|
Requires-Dist: jinja2<4.0.0,>=3.1.4; extra == "docs"
|
|
67
|
+
Dynamic: license-file
|
|
66
68
|
|
|
67
69
|
Synapse
|
|
68
70
|
=======
|
|
@@ -4,7 +4,7 @@ build-backend = 'setuptools.build_meta'
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = 'synapse'
|
|
7
|
-
version = '2.
|
|
7
|
+
version = '2.204.0'
|
|
8
8
|
authors = [
|
|
9
9
|
{ name = 'The Vertex Project LLC', email = 'root@vertex.link'},
|
|
10
10
|
]
|
|
@@ -54,6 +54,7 @@ dependencies = [
|
|
|
54
54
|
'python-dateutil>=2.8,<3.0',
|
|
55
55
|
'pytz>=2023.3,<2024.1',
|
|
56
56
|
'beautifulsoup4[html5lib]>=4.11.1,<5.0',
|
|
57
|
+
'orjson>=3.10.15,<4.0'
|
|
57
58
|
]
|
|
58
59
|
|
|
59
60
|
[project.optional-dependencies]
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import json
|
|
3
2
|
import struct
|
|
4
3
|
import asyncio
|
|
5
4
|
import hashlib
|
|
@@ -16,6 +15,7 @@ import synapse.common as s_common
|
|
|
16
15
|
import synapse.lib.cell as s_cell
|
|
17
16
|
import synapse.lib.coro as s_coro
|
|
18
17
|
import synapse.lib.base as s_base
|
|
18
|
+
import synapse.lib.json as s_json
|
|
19
19
|
import synapse.lib.link as s_link
|
|
20
20
|
import synapse.lib.const as s_const
|
|
21
21
|
import synapse.lib.nexus as s_nexus
|
|
@@ -1509,8 +1509,8 @@ class Axon(s_cell.Cell):
|
|
|
1509
1509
|
continue
|
|
1510
1510
|
|
|
1511
1511
|
try:
|
|
1512
|
-
yield
|
|
1513
|
-
except
|
|
1512
|
+
yield s_json.loads(line)
|
|
1513
|
+
except s_exc.BadJsonText as e:
|
|
1514
1514
|
logger.exception(f'Bad json line encountered for {sha256}')
|
|
1515
1515
|
raise s_exc.BadJsonText(mesg=f'Bad json line encountered while processing {sha256}, ({e})',
|
|
1516
1516
|
sha256=sha256) from None
|
|
@@ -1643,7 +1643,7 @@ class Axon(s_cell.Cell):
|
|
|
1643
1643
|
else:
|
|
1644
1644
|
valu = field.get('value')
|
|
1645
1645
|
if not isinstance(valu, (bytes, str)):
|
|
1646
|
-
valu =
|
|
1646
|
+
valu = s_json.dumps(valu).decode()
|
|
1647
1647
|
|
|
1648
1648
|
data.add_field(name,
|
|
1649
1649
|
valu,
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import os
|
|
2
|
-
import json
|
|
3
2
|
import queue
|
|
4
3
|
import shlex
|
|
5
4
|
import pprint
|
|
@@ -10,6 +9,7 @@ import synapse.common as s_common
|
|
|
10
9
|
|
|
11
10
|
import synapse.lib.cli as s_cli
|
|
12
11
|
import synapse.lib.cmd as s_cmd
|
|
12
|
+
import synapse.lib.json as s_json
|
|
13
13
|
import synapse.lib.node as s_node
|
|
14
14
|
import synapse.lib.time as s_time
|
|
15
15
|
import synapse.lib.msgpack as s_msgpack
|
|
@@ -118,9 +118,7 @@ Examples:
|
|
|
118
118
|
|
|
119
119
|
fmt = self.locs.get('log:fmt')
|
|
120
120
|
if fmt == 'jsonl':
|
|
121
|
-
|
|
122
|
-
buf = s.encode()
|
|
123
|
-
return buf
|
|
121
|
+
return s_json.dumps(mesg, sort_keys=True, newline=True)
|
|
124
122
|
|
|
125
123
|
elif fmt == 'mpk':
|
|
126
124
|
buf = s_msgpack.en(mesg)
|
|
@@ -430,8 +428,8 @@ class StormCmd(s_cli.Cmd):
|
|
|
430
428
|
if mesg[0] == 'node':
|
|
431
429
|
|
|
432
430
|
if nodesfd is not None:
|
|
433
|
-
byts =
|
|
434
|
-
nodesfd.write(byts
|
|
431
|
+
byts = s_json.dumps(mesg[1], newline=True)
|
|
432
|
+
nodesfd.write(byts)
|
|
435
433
|
|
|
436
434
|
try:
|
|
437
435
|
func = self.cmdmeths[mesg[0]]
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import os
|
|
2
|
-
import json
|
|
3
2
|
import shlex
|
|
4
3
|
import pprint
|
|
5
4
|
import asyncio
|
|
@@ -12,6 +11,7 @@ import synapse.common as s_common
|
|
|
12
11
|
|
|
13
12
|
import synapse.lib.cmd as s_cmd
|
|
14
13
|
import synapse.lib.cli as s_cli
|
|
14
|
+
import synapse.lib.json as s_json
|
|
15
15
|
|
|
16
16
|
ListHelp = '''
|
|
17
17
|
Lists all the keys underneath a particular key in the hive.
|
|
@@ -140,8 +140,8 @@ A Hive is a hierarchy persistent storage mechanism typically used for configurat
|
|
|
140
140
|
return
|
|
141
141
|
|
|
142
142
|
if opts.json:
|
|
143
|
-
|
|
144
|
-
|
|
143
|
+
rend = s_json.dumps(valu, indent=True, sort_keys=True)
|
|
144
|
+
prend = rend.decode()
|
|
145
145
|
elif isinstance(valu, str):
|
|
146
146
|
rend = valu.encode()
|
|
147
147
|
prend = valu
|
|
@@ -149,7 +149,7 @@ A Hive is a hierarchy persistent storage mechanism typically used for configurat
|
|
|
149
149
|
rend = valu
|
|
150
150
|
prend = pprint.pformat(valu)
|
|
151
151
|
else:
|
|
152
|
-
rend =
|
|
152
|
+
rend = s_json.dumps(valu, indent=True, sort_keys=True)
|
|
153
153
|
prend = pprint.pformat(valu)
|
|
154
154
|
|
|
155
155
|
if opts.file:
|
|
@@ -172,7 +172,7 @@ A Hive is a hierarchy persistent storage mechanism typically used for configurat
|
|
|
172
172
|
if opts.value[0] not in '([{"':
|
|
173
173
|
data = opts.value
|
|
174
174
|
else:
|
|
175
|
-
data =
|
|
175
|
+
data = s_json.loads(opts.value)
|
|
176
176
|
await core.setHiveKey(path, data)
|
|
177
177
|
return
|
|
178
178
|
elif opts.file is not None:
|
|
@@ -181,7 +181,7 @@ A Hive is a hierarchy persistent storage mechanism typically used for configurat
|
|
|
181
181
|
if len(s) == 0:
|
|
182
182
|
self.printf('Empty file. Not writing key.')
|
|
183
183
|
return
|
|
184
|
-
data = s if opts.string else
|
|
184
|
+
data = s if opts.string else s_json.loads(s)
|
|
185
185
|
await core.setHiveKey(path, data)
|
|
186
186
|
return
|
|
187
187
|
|
|
@@ -201,8 +201,8 @@ A Hive is a hierarchy persistent storage mechanism typically used for configurat
|
|
|
201
201
|
data = old_valu
|
|
202
202
|
else:
|
|
203
203
|
try:
|
|
204
|
-
data =
|
|
205
|
-
except
|
|
204
|
+
data = s_json.dumps(old_valu, indent=True, sort_keys=True).decode()
|
|
205
|
+
except s_exc.MustBeJsonSafe:
|
|
206
206
|
self.printf('Value is not JSON-encodable, therefore not editable.')
|
|
207
207
|
return
|
|
208
208
|
fh.write(data)
|
|
@@ -218,8 +218,8 @@ A Hive is a hierarchy persistent storage mechanism typically used for configurat
|
|
|
218
218
|
self.printf('Empty file. Not writing key.')
|
|
219
219
|
return
|
|
220
220
|
try:
|
|
221
|
-
valu = rawval if opts.string else
|
|
222
|
-
except
|
|
221
|
+
valu = rawval if opts.string else s_json.loads(rawval)
|
|
222
|
+
except s_exc.BadJsonText as e: # pragma: no cover
|
|
223
223
|
self.printf(f'JSON decode failure: [{e}]. Reopening.')
|
|
224
224
|
await asyncio.sleep(1)
|
|
225
225
|
continue
|
|
@@ -3,7 +3,6 @@ import os
|
|
|
3
3
|
import ssl
|
|
4
4
|
import sys
|
|
5
5
|
import enum
|
|
6
|
-
import json
|
|
7
6
|
import http
|
|
8
7
|
import stat
|
|
9
8
|
import time
|
|
@@ -30,6 +29,7 @@ import contextlib
|
|
|
30
29
|
import collections
|
|
31
30
|
|
|
32
31
|
import http.cookies
|
|
32
|
+
import tornado.escape
|
|
33
33
|
|
|
34
34
|
import yaml
|
|
35
35
|
import regex
|
|
@@ -511,24 +511,6 @@ def getDirSize(*paths):
|
|
|
511
511
|
|
|
512
512
|
return realsum, apprsum
|
|
513
513
|
|
|
514
|
-
def jsload(*paths):
|
|
515
|
-
with genfile(*paths) as fd:
|
|
516
|
-
byts = fd.read()
|
|
517
|
-
if not byts:
|
|
518
|
-
return None
|
|
519
|
-
|
|
520
|
-
return json.loads(byts.decode('utf8'))
|
|
521
|
-
|
|
522
|
-
def jslines(*paths):
|
|
523
|
-
with genfile(*paths) as fd:
|
|
524
|
-
for line in fd:
|
|
525
|
-
yield json.loads(line)
|
|
526
|
-
|
|
527
|
-
def jssave(js, *paths):
|
|
528
|
-
path = genpath(*paths)
|
|
529
|
-
with io.open(path, 'wb') as fd:
|
|
530
|
-
fd.write(json.dumps(js, sort_keys=True, indent=2).encode('utf8'))
|
|
531
|
-
|
|
532
514
|
def yamlloads(data):
|
|
533
515
|
return yaml.load(data, Loader)
|
|
534
516
|
|
|
@@ -959,16 +941,6 @@ def deprdate(name, date): # pragma: no cover
|
|
|
959
941
|
mesg = f'{name} is deprecated and will be removed on {date}.'
|
|
960
942
|
warnings.warn(mesg, DeprecationWarning)
|
|
961
943
|
|
|
962
|
-
def reqjsonsafe(item):
|
|
963
|
-
'''
|
|
964
|
-
Returns None if item is json serializable, otherwise raises an exception.
|
|
965
|
-
Uses default type coercion from built-in json.dumps.
|
|
966
|
-
'''
|
|
967
|
-
try:
|
|
968
|
-
json.dumps(item)
|
|
969
|
-
except TypeError as e:
|
|
970
|
-
raise s_exc.MustBeJsonSafe(mesg=str(e)) from None
|
|
971
|
-
|
|
972
944
|
def jsonsafe_nodeedits(nodeedits):
|
|
973
945
|
'''
|
|
974
946
|
Hexlify the buid of each node:edits
|
|
@@ -998,35 +970,6 @@ def reprauthrule(rule):
|
|
|
998
970
|
text = '!' + text
|
|
999
971
|
return text
|
|
1000
972
|
|
|
1001
|
-
def reqJsonSafeStrict(item):
|
|
1002
|
-
'''
|
|
1003
|
-
Require the item to be safe to serialize to JSON without type coercion issues.
|
|
1004
|
-
|
|
1005
|
-
Args:
|
|
1006
|
-
item: The python primitive to check.
|
|
1007
|
-
|
|
1008
|
-
Returns:
|
|
1009
|
-
None
|
|
1010
|
-
|
|
1011
|
-
Raise:
|
|
1012
|
-
s_exc.BadArg: If the item contains invalid data.
|
|
1013
|
-
'''
|
|
1014
|
-
if item is None:
|
|
1015
|
-
return
|
|
1016
|
-
if isinstance(item, (str, int,)):
|
|
1017
|
-
return
|
|
1018
|
-
if isinstance(item, (list, tuple)):
|
|
1019
|
-
for valu in item:
|
|
1020
|
-
reqJsonSafeStrict(valu)
|
|
1021
|
-
return
|
|
1022
|
-
if isinstance(item, dict):
|
|
1023
|
-
for key, valu in item.items():
|
|
1024
|
-
if not isinstance(key, str):
|
|
1025
|
-
raise s_exc.BadArg(mesg='Non-string keys are not valid json', key=key)
|
|
1026
|
-
reqJsonSafeStrict(valu)
|
|
1027
|
-
return
|
|
1028
|
-
raise s_exc.BadArg(mesg=f'Invalid item type encountered: {item.__class__.__name__}')
|
|
1029
|
-
|
|
1030
973
|
async def merggenr(genrs, cmprkey):
|
|
1031
974
|
'''
|
|
1032
975
|
Iterate multiple sorted async generators and yield their results in order.
|
|
@@ -1234,7 +1177,23 @@ def _patch_http_cookies():
|
|
|
1234
1177
|
return
|
|
1235
1178
|
http.cookies._unquote = v_cookies._unquote
|
|
1236
1179
|
|
|
1180
|
+
def _patch_tornado_json():
|
|
1181
|
+
import synapse.lib.json as s_json
|
|
1182
|
+
|
|
1183
|
+
if hasattr(tornado.escape, 'json_encode'):
|
|
1184
|
+
# This exists for a specific reason. See the following URL for explanation:
|
|
1185
|
+
# https://github.com/tornadoweb/tornado/blob/d5ac65c1f1453c2aeddd089d8e68c159645c13e1/tornado/escape.py#L83-L96
|
|
1186
|
+
# https://github.com/tornadoweb/tornado/pull/706
|
|
1187
|
+
def _tornado_json_encode(value):
|
|
1188
|
+
return s_json.dumps(value).replace(b'</', br'<\/').decode()
|
|
1189
|
+
|
|
1190
|
+
tornado.escape.json_encode = _tornado_json_encode
|
|
1191
|
+
|
|
1192
|
+
if hasattr(tornado.escape, 'json_decode'):
|
|
1193
|
+
tornado.escape.json_decode = s_json.loads
|
|
1194
|
+
|
|
1237
1195
|
_patch_http_cookies()
|
|
1196
|
+
_patch_tornado_json()
|
|
1238
1197
|
|
|
1239
1198
|
# TODO: Switch back to using asyncio.wait_for when we are using py 3.12+
|
|
1240
1199
|
# This is a workaround for a race where asyncio.wait_for can end up
|
|
@@ -1265,7 +1265,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
1265
1265
|
|
|
1266
1266
|
byts = self.slab.get(newname.encode(), db=self.macrodb)
|
|
1267
1267
|
if byts is not None:
|
|
1268
|
-
raise s_exc.DupName('A macro named {newname} already exists!')
|
|
1268
|
+
raise s_exc.DupName(mesg=f'A macro named {newname} already exists!', name=newname)
|
|
1269
1269
|
|
|
1270
1270
|
self.slab.put(newname.encode(), s_msgpack.en(mdef), db=self.macrodb)
|
|
1271
1271
|
self.slab.pop(name.encode(), db=self.macrodb)
|
|
@@ -6535,7 +6535,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
6535
6535
|
|
|
6536
6536
|
cdef['reqs'] = reqs
|
|
6537
6537
|
except KeyError:
|
|
6538
|
-
raise s_exc.BadConfValu('Unrecognized time unit')
|
|
6538
|
+
raise s_exc.BadConfValu(mesg='Unrecognized time unit')
|
|
6539
6539
|
|
|
6540
6540
|
if not cdef.get('iden'):
|
|
6541
6541
|
cdef['iden'] = s_common.guid()
|
|
@@ -6992,7 +6992,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
6992
6992
|
|
|
6993
6993
|
vault = self.getVault(iden)
|
|
6994
6994
|
if vault is None:
|
|
6995
|
-
raise s_exc.NoSuchIden(mesg=f'Vault not found for iden: {iden}.')
|
|
6995
|
+
raise s_exc.NoSuchIden(mesg=f'Vault not found for iden: {iden}.', iden=iden)
|
|
6996
6996
|
|
|
6997
6997
|
return vault
|
|
6998
6998
|
|
|
@@ -7345,7 +7345,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
7345
7345
|
scope = 'roles'
|
|
7346
7346
|
ident = self.auth.role(iden)
|
|
7347
7347
|
if ident is None:
|
|
7348
|
-
raise s_exc.NoSuchIden(mesg=f'Iden {iden} is not a valid user or role.')
|
|
7348
|
+
raise s_exc.NoSuchIden(mesg=f'Iden {iden} is not a valid user or role.', iden=iden)
|
|
7349
7349
|
|
|
7350
7350
|
await self._setEasyPerm(vault, scope, ident.iden, level)
|
|
7351
7351
|
permissions = vault.get('permissions')
|
|
@@ -7366,14 +7366,14 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
7366
7366
|
Returns: Updated vault.
|
|
7367
7367
|
'''
|
|
7368
7368
|
if self.getVaultByName(name) is not None:
|
|
7369
|
-
raise s_exc.DupName(mesg=f'Vault with name {name} already exists.')
|
|
7369
|
+
raise s_exc.DupName(mesg=f'Vault with name {name} already exists.', name=name)
|
|
7370
7370
|
|
|
7371
7371
|
return await self._push(('vault:set'), iden, 'name', name)
|
|
7372
7372
|
|
|
7373
7373
|
@s_nexus.Pusher.onPush('vault:set')
|
|
7374
7374
|
async def _setVault(self, iden, key, valu):
|
|
7375
7375
|
if key not in ('name', 'permissions'): # pragma: no cover
|
|
7376
|
-
raise s_exc.BadArg('Only vault names and permissions can be changed.')
|
|
7376
|
+
raise s_exc.BadArg(mesg='Only vault names and permissions can be changed.')
|
|
7377
7377
|
|
|
7378
7378
|
vault = self.reqVault(iden)
|
|
7379
7379
|
oldv = vault.get(key)
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import os
|
|
2
|
-
import json
|
|
3
2
|
import logging
|
|
4
3
|
|
|
5
4
|
import synapse.common as s_common
|
|
5
|
+
|
|
6
|
+
import synapse.lib.json as s_json
|
|
6
7
|
import synapse.lib.datfile as s_datfile
|
|
7
8
|
import synapse.lib.msgpack as s_msgpack
|
|
8
9
|
|
|
@@ -26,7 +27,7 @@ def get(name, defval=None):
|
|
|
26
27
|
|
|
27
28
|
def getJSON(name):
|
|
28
29
|
with s_datfile.openDatFile(f'synapse.data/{name}.json') as fd:
|
|
29
|
-
return
|
|
30
|
+
return s_json.load(fd)
|
|
30
31
|
|
|
31
32
|
def path(*names):
|
|
32
33
|
return s_common.genpath(dirname, *names)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
���aaa�aaas�about�acap�acct�acd�acr�adiumxtra�adt�afp�afs�aim�amss�android�appdata�apt�ar�ari�ark�at�attachment�aw�barion�bb�beshare�bitcoin�bitcoincash�blob�bluetooth�bolo�brid�browserext�cabal�calculator�callto�cap�cast�casts�chrome�chrome-extension�cid�coap�coap+tcp�coap+ws�coaps�coaps+tcp�coaps+ws�com-eventbrite-attendee�content�content-type�crid�cstr�cvs�dab�dat�data�dav�dhttp�diaspora�dict�did�dis�dlna-playcontainer�dlna-playsingle�dns�dntp�doi�dpp�drm�drop�dtmi�dtn�dvb�dvx�dweb�ed2k�eid�elsi�embedded�ens�ethereum�example�facetime�fax�feed�feedready�fido�file�filesystem�finger�first-run-pen-experience�fish�fm�ftp�fuchsia-pkg�geo�gg�git�gitoid�gizmoproject�go�gopher�graph�grd�gtalk�h323�ham�hcap�hcp�hs20�http�https�hxxp�hxxps�hydrazone�hyper�iax�icap�icon�ilstring�im�imap�info�iotdisco�ipfs�ipn�ipns�ipp�ipps�irc�irc6�ircs�iris�iris.beep�iris.lwz�iris.xpc�iris.xpcs�isostore�itms�jabber�jar�jms�keyparc�lastfm�lbry�ldap�ldaps�leaptofrogans�lid�lorawan�lpa�lvlt�#machineProvisioningProgressReporter�magnet�mailserver�mailto�maps�market�matrix�message�microsoft.windows.camera�$microsoft.windows.camera.multipicker�microsoft.windows.camera.picker�mid�mms�modem�mongodb�moz�ms-access�ms-appinstaller�ms-browser-extension�ms-calculator�ms-drive-to�ms-enrollment�ms-excel�ms-eyecontrolspeech�ms-gamebarservices�ms-gamingoverlay�ms-getoffice�ms-help�ms-infopath�ms-inputapp�ms-launchremotedesktop�ms-lockscreencomponent-config�ms-media-stream-id�ms-meetnow�ms-mixedrealitycapture�ms-mobileplans�ms-newsandinterests�ms-officeapp�ms-people�ms-personacard�ms-project�ms-powerpoint�ms-publisher�ms-recall�ms-remotedesktop�ms-remotedesktop-launch�ms-restoretabcompanion�ms-screenclip�ms-screensketch�ms-search�ms-search-repair�ms-secondary-screen-controller�ms-secondary-screen-setup�ms-settings�ms-settings-airplanemode�ms-settings-bluetooth�ms-settings-camera�ms-settings-cellular�ms-settings-cloudstorage�ms-settings-connectabledevices�ms-settings-displays-topology�ms-settings-emailandaccounts�ms-settings-language�ms-settings-location�ms-settings-lock�ms-settings-nfctransactions�ms-settings-notifications�ms-settings-power�ms-settings-privacy�ms-settings-proximity�ms-settings-screenrotation�ms-settings-wifi�ms-settings-workplace�ms-spd�ms-stickers�ms-sttoverlay�ms-transit-to�ms-useractivityset�ms-virtualtouchpad�ms-visio�ms-walk-to�ms-whiteboard�ms-whiteboard-cmd�ms-widgetboard�ms-widgets�ms-word�msnim�msrp�msrps�mss�mt�mtqp�mumble�mupdate�mvn�mvrp�mvrps�news�nfs�ni�nih�nntp�notes�num�ocf�oid�onenote�onenote-cmd�opaquelocktoken�openid�openpgp4fpr�otpauth�p1�pack�palm�paparazzi�payment�payto�pkcs11�platform�pop�pres�prospero�proxy�pwid�psyc�pttp�qb�query�quic-transport�redis�rediss�reload�res�resource�rmi�rsync�rtmfp�rtmp�rtsp�rtsps�rtspu�sarif�secondlife�secret-token�service�session�sftp�sgn�shc�shelter�sieve�simpleledger�simplex�sip�sips�skype�smb�smp�sms�smtp�snews�snmp�soap.beep�soap.beeps�soldat�spiffe�spotify�ssb�ssh�starknet�steam�stun�stuns�submit�svn�swh�swid�swidpath�tag�taler�teamspeak�teapot�teapots�tel�teliaeid�telnet�tftp�things�thismessage�thzp�tip�tn3270�tool�turn�turns�tv�udp�unreal�upt�urn�ut2004�uuid-in-package�v-event�vemmi�ventrilo�ves�videotex�vnc�view-source�vscode�vscode-insiders�vsls�w3�wais�web3�wcr�webcal�web+ap�wifi�wpid�ws�wss�wtai�wyciwyg�xcon�xcon-userid�xfire�xmlrpc.beep�xmlrpc.beeps�xmpp�xftp�xrcp�xri�ymsgr�z39.50�z39.50r�z39.50s
|
|
@@ -423,6 +423,9 @@ class Auth(s_nexus.Pusher):
|
|
|
423
423
|
|
|
424
424
|
await self.feedBeholder('user:info', mesg, gateiden=gateiden, logged=logged)
|
|
425
425
|
|
|
426
|
+
if name == 'locked':
|
|
427
|
+
await self.fire('user:lock', user=iden, locked=valu)
|
|
428
|
+
|
|
426
429
|
# since any user info *may* effect auth
|
|
427
430
|
user.clearAuthCache()
|
|
428
431
|
|
|
@@ -286,11 +286,11 @@ def genCallsig(rtype):
|
|
|
286
286
|
if defv is s_common.novalu:
|
|
287
287
|
item = name
|
|
288
288
|
elif defv is None:
|
|
289
|
-
item = f'{name}
|
|
289
|
+
item = f'{name}=(null)'
|
|
290
290
|
elif defv is True:
|
|
291
|
-
item = f'{name}
|
|
291
|
+
item = f'{name}=(true)'
|
|
292
292
|
elif defv is False:
|
|
293
|
-
item = f'{name}
|
|
293
|
+
item = f'{name}=(false)'
|
|
294
294
|
elif isinstance(defv, str):
|
|
295
295
|
item = f'{name}={defv}'
|
|
296
296
|
elif isinstance(defv, int):
|
|
@@ -3143,8 +3143,11 @@ class Cell(s_nexus.Pusher, s_telepath.Aware):
|
|
|
3143
3143
|
self.sessstor.set(iden, name, valu)
|
|
3144
3144
|
return info
|
|
3145
3145
|
|
|
3146
|
-
@s_nexus.Pusher.onPushAuto('http:sess:del')
|
|
3147
3146
|
async def delHttpSess(self, iden):
|
|
3147
|
+
await self._push('http:sess:del', iden)
|
|
3148
|
+
|
|
3149
|
+
@s_nexus.Pusher.onPush('http:sess:del')
|
|
3150
|
+
async def _delHttpSess(self, iden):
|
|
3148
3151
|
await self.sessstor.del_(iden)
|
|
3149
3152
|
sess = self.sessions.pop(iden, None)
|
|
3150
3153
|
if sess:
|
|
@@ -3412,6 +3415,7 @@ class Cell(s_nexus.Pusher, s_telepath.Aware):
|
|
|
3412
3415
|
|
|
3413
3416
|
# Add callbacks
|
|
3414
3417
|
self.on('user:del', self._onUserDelEvnt)
|
|
3418
|
+
self.on('user:lock', self._onUserLockEvnt)
|
|
3415
3419
|
|
|
3416
3420
|
authctor = self.conf.get('auth:ctor')
|
|
3417
3421
|
if authctor is not None:
|
|
@@ -5013,6 +5017,22 @@ class Cell(s_nexus.Pusher, s_telepath.Aware):
|
|
|
5013
5017
|
self.slab.delete(lkey, db=self.usermetadb)
|
|
5014
5018
|
await asyncio.sleep(0)
|
|
5015
5019
|
|
|
5020
|
+
async def _onUserLockEvnt(self, evnt):
|
|
5021
|
+
# Call callback for handling user:lock events
|
|
5022
|
+
useriden = evnt[1].get('user')
|
|
5023
|
+
locked = evnt[1].get('locked')
|
|
5024
|
+
|
|
5025
|
+
if not locked:
|
|
5026
|
+
return
|
|
5027
|
+
|
|
5028
|
+
# Find and delete all HTTP sessions for useriden
|
|
5029
|
+
for iden, sess in list(self.sessions.items()):
|
|
5030
|
+
if sess.info.get('user') == useriden:
|
|
5031
|
+
username = sess.info.get('username', '<unknown>')
|
|
5032
|
+
await self._delHttpSess(iden)
|
|
5033
|
+
logger.info(f'Invalidated HTTP session for locked user {username}',
|
|
5034
|
+
extra=await self.getLogExtra(target_user=useriden))
|
|
5035
|
+
|
|
5016
5036
|
def _makeCachedSslCtx(self, opts):
|
|
5017
5037
|
|
|
5018
5038
|
opts = dict(opts)
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import os
|
|
2
|
-
import json
|
|
3
2
|
import signal
|
|
4
3
|
import asyncio
|
|
5
4
|
import logging
|
|
@@ -18,6 +17,7 @@ import synapse.common as s_common
|
|
|
18
17
|
import synapse.telepath as s_telepath
|
|
19
18
|
|
|
20
19
|
import synapse.lib.base as s_base
|
|
20
|
+
import synapse.lib.json as s_json
|
|
21
21
|
import synapse.lib.output as s_output
|
|
22
22
|
import synapse.lib.parser as s_parser
|
|
23
23
|
import synapse.lib.grammar as s_grammar
|
|
@@ -542,5 +542,5 @@ class CmdLocals(Cmd):
|
|
|
542
542
|
ret[k] = v
|
|
543
543
|
else:
|
|
544
544
|
ret[k] = repr(v)
|
|
545
|
-
mesg =
|
|
545
|
+
mesg = s_json.dumps(ret, indent=True, sort_keys=True).decode()
|
|
546
546
|
self.printf(mesg)
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import os
|
|
2
2
|
import copy
|
|
3
|
-
import json
|
|
4
3
|
import urllib
|
|
5
4
|
import logging
|
|
6
5
|
import argparse
|
|
@@ -12,6 +11,7 @@ import synapse.exc as s_exc
|
|
|
12
11
|
import synapse.data as s_data
|
|
13
12
|
import synapse.common as s_common
|
|
14
13
|
|
|
14
|
+
import synapse.lib.json as s_json
|
|
15
15
|
import synapse.lib.hashitem as s_hashitem
|
|
16
16
|
|
|
17
17
|
from fastjsonschema.exceptions import JsonSchemaValueException
|
|
@@ -44,7 +44,7 @@ def localSchemaRefHandler(uri):
|
|
|
44
44
|
raise s_exc.NoSuchFile(mesg=f'Local JSON schema not found for {uri}.')
|
|
45
45
|
|
|
46
46
|
with open(filename, 'r') as fp:
|
|
47
|
-
return
|
|
47
|
+
return s_json.load(fp)
|
|
48
48
|
|
|
49
49
|
# This handlers dictionary is used by the jsonschema validator to attempt to
|
|
50
50
|
# resolve schema '$ref' values locally from disk and will raise an exception
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import json
|
|
3
2
|
import regex
|
|
4
3
|
import base64
|
|
5
4
|
import codecs
|
|
6
5
|
import xml.etree.ElementTree as x_etree
|
|
7
6
|
|
|
8
7
|
import synapse.exc as s_exc
|
|
8
|
+
|
|
9
|
+
import synapse.lib.json as s_json
|
|
9
10
|
import synapse.lib.msgpack as s_msgpack
|
|
10
11
|
|
|
11
12
|
def _de_base64(item, **opts):
|
|
@@ -176,11 +177,11 @@ def _fmt_lines(fd, gest):
|
|
|
176
177
|
yield line
|
|
177
178
|
|
|
178
179
|
def _fmt_json(fd, info):
|
|
179
|
-
yield
|
|
180
|
+
yield s_json.load(fd)
|
|
180
181
|
|
|
181
182
|
def _fmt_jsonl(fd, info):
|
|
182
183
|
for line in fd:
|
|
183
|
-
yield
|
|
184
|
+
yield s_json.loads(line)
|
|
184
185
|
|
|
185
186
|
def _fmt_mpk(fd, info):
|
|
186
187
|
yield from s_msgpack.iterfd(fd)
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import json
|
|
2
1
|
import base64
|
|
3
2
|
import asyncio
|
|
4
3
|
import logging
|
|
@@ -12,6 +11,7 @@ import synapse.exc as s_exc
|
|
|
12
11
|
import synapse.common as s_common
|
|
13
12
|
|
|
14
13
|
import synapse.lib.base as s_base
|
|
14
|
+
import synapse.lib.json as s_json
|
|
15
15
|
import synapse.lib.msgpack as s_msgpack
|
|
16
16
|
|
|
17
17
|
logger = logging.getLogger(__name__)
|
|
@@ -132,7 +132,7 @@ class HandlerBase:
|
|
|
132
132
|
|
|
133
133
|
def loadJsonMesg(self, byts, validator=None):
|
|
134
134
|
try:
|
|
135
|
-
item =
|
|
135
|
+
item = s_json.loads(byts)
|
|
136
136
|
if validator is not None:
|
|
137
137
|
validator(item)
|
|
138
138
|
return item
|
|
@@ -418,7 +418,7 @@ class HandlerBase:
|
|
|
418
418
|
class WebSocket(HandlerBase, t_websocket.WebSocketHandler):
|
|
419
419
|
|
|
420
420
|
async def xmit(self, name, **info):
|
|
421
|
-
await self.write_message(
|
|
421
|
+
await self.write_message(s_json.dumps({'type': name, 'data': info}))
|
|
422
422
|
|
|
423
423
|
async def _reqUserAllow(self, perm):
|
|
424
424
|
|
|
@@ -513,9 +513,7 @@ class StormNodesV1(StormHandler):
|
|
|
513
513
|
await self.cell.boss.promote('storm', user=user, info=taskinfo)
|
|
514
514
|
|
|
515
515
|
async for pode in view.iterStormPodes(query, opts=opts):
|
|
516
|
-
self.write(
|
|
517
|
-
if jsonlines:
|
|
518
|
-
self.write("\n")
|
|
516
|
+
self.write(s_json.dumps(pode, newline=jsonlines))
|
|
519
517
|
await self.flush()
|
|
520
518
|
|
|
521
519
|
class StormV1(StormHandler):
|
|
@@ -545,9 +543,7 @@ class StormV1(StormHandler):
|
|
|
545
543
|
opts.setdefault('editformat', 'nodeedits')
|
|
546
544
|
|
|
547
545
|
async for mesg in self.getCore().storm(query, opts=opts):
|
|
548
|
-
self.write(
|
|
549
|
-
if jsonlines:
|
|
550
|
-
self.write("\n")
|
|
546
|
+
self.write(s_json.dumps(mesg, newline=jsonlines))
|
|
551
547
|
await self.flush()
|
|
552
548
|
|
|
553
549
|
class StormCallV1(StormHandler):
|
|
@@ -640,9 +636,9 @@ class BeholdSockV1(WebSocket):
|
|
|
640
636
|
|
|
641
637
|
async def onInitMessage(self, byts):
|
|
642
638
|
try:
|
|
643
|
-
mesg =
|
|
639
|
+
mesg = s_json.loads(byts)
|
|
644
640
|
if mesg.get('type') != 'call:init':
|
|
645
|
-
raise s_exc.BadMesgFormat('Invalid initial message')
|
|
641
|
+
raise s_exc.BadMesgFormat(mesg='Invalid initial message')
|
|
646
642
|
|
|
647
643
|
admin = await self.isUserAdmin()
|
|
648
644
|
if not admin:
|