synapse 3.0.0b1__py314-none-any.whl
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.
- synapse/__init__.py +27 -0
- synapse/assets/__init__.py +35 -0
- synapse/axon.py +1929 -0
- synapse/cells.py +1 -0
- synapse/common.py +1172 -0
- synapse/cortex.py +6897 -0
- synapse/daemon.py +442 -0
- synapse/data/__init__.py +37 -0
- synapse/data/attack-flow/LICENSE.txt +201 -0
- synapse/data/attack-flow/README.md +3 -0
- synapse/data/attack-flow/attack-flow-schema-2.0.0.json +468 -0
- synapse/data/certs/cas/The Vertex Project Intermediate CA 00.crt +29 -0
- synapse/data/certs/cas/The Vertex Project ROOT CA.crt +29 -0
- synapse/data/certs/crls/The Vertex Project Intermediate CA 00.crl +16 -0
- synapse/data/certs/crls/The Vertex Project ROOT CA.crl +15 -0
- synapse/data/iana.tlds.mpk +1 -0
- synapse/data/iana.uris.mpk +1 -0
- synapse/data/jsonschemas/README.md +29 -0
- synapse/data/jsonschemas/json-schema.org/draft-07/schema +244 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/LICENSE.txt +27 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/binary.json +8 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/bundle.json +213 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/core.json +159 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/cyber-observable-core.json +97 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/dictionary.json +34 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension-definition.json +96 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension.json +28 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/external-reference.json +106 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/granular-marking.json +37 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hashes-type.json +55 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hex.json +8 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/identifier.json +8 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/kill-chain-phase.json +21 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/language-content.json +54 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/marking-definition.json +338 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/properties.json +38 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/timestamp.json +8 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/url-regex.json +8 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/artifact.json +125 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/autonomous-system.json +42 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/directory.json +60 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/domain-name.json +43 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-addr.json +43 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-message.json +205 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/file.json +569 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv4-addr.json +51 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv6-addr.json +51 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mac-addr.json +35 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mutex.json +34 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/network-traffic.json +330 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/process.json +265 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/software.json +60 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/url.json +34 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/user-account.json +170 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/windows-registry-key.json +98 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/x509-certificate.json +191 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/attack-pattern.json +53 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/campaign.json +58 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/course-of-action.json +38 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/grouping.json +61 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/identity.json +115 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/incident.json +38 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/indicator.json +101 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/infrastructure.json +88 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/intrusion-set.json +106 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/location.json +175 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware-analysis.json +159 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware.json +254 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/note.json +55 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/observed-data.json +150 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/opinion.json +62 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/report.json +77 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/threat-actor.json +175 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/tool.json +81 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/vulnerability.json +38 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/relationship.json +76 -0
- synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/sighting.json +115 -0
- synapse/data/lark/__init__.py +0 -0
- synapse/data/lark/imap.lark +8 -0
- synapse/data/lark/storm.lark +723 -0
- synapse/data/skills/storm/SKILL.md +878 -0
- synapse/datamodel.py +2110 -0
- synapse/exc.py +432 -0
- synapse/glob.py +98 -0
- synapse/lib/__init__.py +2 -0
- synapse/lib/agenda.py +1058 -0
- synapse/lib/aha.py +1577 -0
- synapse/lib/ast.py +6424 -0
- synapse/lib/auth.py +1735 -0
- synapse/lib/autodoc.py +686 -0
- synapse/lib/base.py +865 -0
- synapse/lib/boss.py +137 -0
- synapse/lib/cache.py +232 -0
- synapse/lib/cell.py +5197 -0
- synapse/lib/certdir.py +1769 -0
- synapse/lib/chop.py +350 -0
- synapse/lib/cli.py +546 -0
- synapse/lib/cmd.py +69 -0
- synapse/lib/config.py +470 -0
- synapse/lib/const.py +56 -0
- synapse/lib/coro.py +224 -0
- synapse/lib/crypto/__init__.py +0 -0
- synapse/lib/crypto/coin.py +174 -0
- synapse/lib/crypto/ecc.py +222 -0
- synapse/lib/crypto/passwd.py +146 -0
- synapse/lib/crypto/rsa.py +142 -0
- synapse/lib/crypto/tinfoil.py +133 -0
- synapse/lib/datfile.py +25 -0
- synapse/lib/drive.py +614 -0
- synapse/lib/dyndeps.py +147 -0
- synapse/lib/editor.py +1120 -0
- synapse/lib/encoding.py +259 -0
- synapse/lib/gis.py +251 -0
- synapse/lib/grammar.py +92 -0
- synapse/lib/hashitem.py +30 -0
- synapse/lib/hashset.py +60 -0
- synapse/lib/health.py +53 -0
- synapse/lib/httpapi.py +1537 -0
- synapse/lib/ingest.py +1 -0
- synapse/lib/interval.py +52 -0
- synapse/lib/json.py +214 -0
- synapse/lib/jsonstor.py +594 -0
- synapse/lib/jsrpc.py +372 -0
- synapse/lib/layer.py +6609 -0
- synapse/lib/link.py +385 -0
- synapse/lib/lmdbslab.py +2538 -0
- synapse/lib/logging.py +393 -0
- synapse/lib/mcp.py +1288 -0
- synapse/lib/modelrev.py +386 -0
- synapse/lib/msgpack.py +296 -0
- synapse/lib/multislabseqn.py +510 -0
- synapse/lib/nexus.py +847 -0
- synapse/lib/node.py +1766 -0
- synapse/lib/oauth.py +509 -0
- synapse/lib/output.py +49 -0
- synapse/lib/parser.py +925 -0
- synapse/lib/platforms/__init__.py +8 -0
- synapse/lib/platforms/common.py +61 -0
- synapse/lib/platforms/darwin.py +9 -0
- synapse/lib/platforms/freebsd.py +9 -0
- synapse/lib/platforms/linux.py +237 -0
- synapse/lib/platforms/windows.py +84 -0
- synapse/lib/process.py +91 -0
- synapse/lib/processpool.py +122 -0
- synapse/lib/queue.py +177 -0
- synapse/lib/ratelimit.py +51 -0
- synapse/lib/reflect.py +111 -0
- synapse/lib/rstorm.py +598 -0
- synapse/lib/schemas.py +1317 -0
- synapse/lib/scope.py +238 -0
- synapse/lib/scrape.py +706 -0
- synapse/lib/share.py +29 -0
- synapse/lib/slaboffs.py +32 -0
- synapse/lib/slabseqn.py +400 -0
- synapse/lib/spawner.py +105 -0
- synapse/lib/spooled.py +211 -0
- synapse/lib/storm.py +6370 -0
- synapse/lib/storm_format.py +163 -0
- synapse/lib/stormctrl.py +91 -0
- synapse/lib/stormhttp.py +590 -0
- synapse/lib/stormlib/__init__.py +0 -0
- synapse/lib/stormlib/aha.py +889 -0
- synapse/lib/stormlib/auth.py +1839 -0
- synapse/lib/stormlib/backup.py +65 -0
- synapse/lib/stormlib/basex.py +73 -0
- synapse/lib/stormlib/bytes.py +48 -0
- synapse/lib/stormlib/cache.py +206 -0
- synapse/lib/stormlib/cell.py +249 -0
- synapse/lib/stormlib/compression.py +179 -0
- synapse/lib/stormlib/cortex.py +1380 -0
- synapse/lib/stormlib/easyperm.py +122 -0
- synapse/lib/stormlib/ethereum.py +37 -0
- synapse/lib/stormlib/file.py +68 -0
- synapse/lib/stormlib/gen.py +188 -0
- synapse/lib/stormlib/gis.py +41 -0
- synapse/lib/stormlib/graph.py +177 -0
- synapse/lib/stormlib/hashes.py +112 -0
- synapse/lib/stormlib/hex.py +142 -0
- synapse/lib/stormlib/imap.py +843 -0
- synapse/lib/stormlib/index.py +52 -0
- synapse/lib/stormlib/infosec.py +570 -0
- synapse/lib/stormlib/ipv6.py +51 -0
- synapse/lib/stormlib/iters.py +92 -0
- synapse/lib/stormlib/json.py +146 -0
- synapse/lib/stormlib/log.py +180 -0
- synapse/lib/stormlib/macro.py +237 -0
- synapse/lib/stormlib/math.py +37 -0
- synapse/lib/stormlib/mime.py +45 -0
- synapse/lib/stormlib/model.py +775 -0
- synapse/lib/stormlib/modelext.py +242 -0
- synapse/lib/stormlib/oauth.py +406 -0
- synapse/lib/stormlib/pack.py +68 -0
- synapse/lib/stormlib/pkg.py +635 -0
- synapse/lib/stormlib/quorum.py +114 -0
- synapse/lib/stormlib/random.py +117 -0
- synapse/lib/stormlib/scrape.py +144 -0
- synapse/lib/stormlib/smtp.py +214 -0
- synapse/lib/stormlib/spooled.py +113 -0
- synapse/lib/stormlib/stats.py +253 -0
- synapse/lib/stormlib/stix.py +1599 -0
- synapse/lib/stormlib/storm.py +178 -0
- synapse/lib/stormlib/tabular.py +212 -0
- synapse/lib/stormlib/task.py +116 -0
- synapse/lib/stormlib/utils.py +48 -0
- synapse/lib/stormlib/vault.py +756 -0
- synapse/lib/stormlib/version.py +66 -0
- synapse/lib/stormlib/xml.py +99 -0
- synapse/lib/stormlib/yaml.py +49 -0
- synapse/lib/stormsvc.py +223 -0
- synapse/lib/stormtypes.py +10486 -0
- synapse/lib/task.py +262 -0
- synapse/lib/thishost.py +40 -0
- synapse/lib/thisplat.py +17 -0
- synapse/lib/threads.py +10 -0
- synapse/lib/time.py +499 -0
- synapse/lib/trigger.py +512 -0
- synapse/lib/types.py +4678 -0
- synapse/lib/urlhelp.py +112 -0
- synapse/lib/version.py +269 -0
- synapse/lib/view.py +3618 -0
- synapse/lookup/__init__.py +0 -0
- synapse/lookup/cvss.py +89 -0
- synapse/lookup/iana.py +322 -0
- synapse/lookup/iso3166.py +264 -0
- synapse/lookup/macho.py +73 -0
- synapse/lookup/pe.py +530 -0
- synapse/lookup/phonenum.py +386 -0
- synapse/lookup/timezones.py +43 -0
- synapse/mindmeld.py +1 -0
- synapse/models/__init__.py +29 -0
- synapse/models/auth.py +59 -0
- synapse/models/base.py +926 -0
- synapse/models/belief.py +42 -0
- synapse/models/biz.py +210 -0
- synapse/models/crypto.py +788 -0
- synapse/models/dns.py +406 -0
- synapse/models/doc.py +254 -0
- synapse/models/economic.py +597 -0
- synapse/models/entity.py +797 -0
- synapse/models/files.py +794 -0
- synapse/models/geopol.py +237 -0
- synapse/models/geospace.py +552 -0
- synapse/models/gov.py +73 -0
- synapse/models/ind.py +61 -0
- synapse/models/inet.py +3322 -0
- synapse/models/infotech.py +2819 -0
- synapse/models/language.py +230 -0
- synapse/models/material.py +203 -0
- synapse/models/orgs.py +658 -0
- synapse/models/person.py +209 -0
- synapse/models/planning.py +144 -0
- synapse/models/proj.py +108 -0
- synapse/models/risk.py +628 -0
- synapse/models/science.py +97 -0
- synapse/models/syn.py +309 -0
- synapse/models/telco.py +264 -0
- synapse/models/transport.py +562 -0
- synapse/servers/__init__.py +0 -0
- synapse/servers/aha.py +8 -0
- synapse/servers/axon.py +8 -0
- synapse/servers/cell.py +21 -0
- synapse/servers/cortex.py +8 -0
- synapse/servers/jsonstor.py +8 -0
- synapse/telepath.py +1474 -0
- synapse/tests/__init__.py +0 -0
- synapse/tests/files/TestUtilsGetrefs.test_basics.yaml +182 -0
- synapse/tests/files/__init__.py +80 -0
- synapse/tests/files/aha/certs/cas/synapse.crt +28 -0
- synapse/tests/files/aha/certs/cas/synapse.key +51 -0
- synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.crt +30 -0
- synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.key +51 -0
- synapse/tests/files/aha/certs/users/root@synapse.crt +29 -0
- synapse/tests/files/aha/certs/users/root@synapse.key +51 -0
- synapse/tests/files/attack_flow/CISA AA22-138B VMWare Workspace (Alt).json +486 -0
- synapse/tests/files/attack_flow/CISA_Iranian_APT.json +1083 -0
- synapse/tests/files/certdir/cas/ca.crt +17 -0
- synapse/tests/files/certdir/cas/ca.key +28 -0
- synapse/tests/files/certdir/hosts/localhost.crt +18 -0
- synapse/tests/files/certdir/hosts/localhost.key +28 -0
- synapse/tests/files/certdir/users/root.crt +24 -0
- synapse/tests/files/certdir/users/root.key +52 -0
- synapse/tests/files/certdir/users/user.crt +18 -0
- synapse/tests/files/certdir/users/user.key +28 -0
- synapse/tests/files/cpedata.json +525034 -0
- synapse/tests/files/rstorm/httpresp1.json +6 -0
- synapse/tests/files/rstorm/httpresp2.json +4 -0
- synapse/tests/files/rstorm/httpresp3.json +4 -0
- synapse/tests/files/rstorm/httprespmulti.yaml +78 -0
- synapse/tests/files/rstorm/testsvc.py +45 -0
- synapse/tests/files/stix_export/basic.json +501 -0
- synapse/tests/files/stix_export/custom0.json +222 -0
- synapse/tests/files/stix_export/risk0.json +159 -0
- synapse/tests/files/stix_import/apt1.json +1206 -0
- synapse/tests/files/stix_import/oasis-example-00.json +100 -0
- synapse/tests/files/stix_import/scos.json +83 -0
- synapse/tests/files/stormcov/argvquery.storm +10 -0
- synapse/tests/files/stormcov/argvquery2.storm +4 -0
- synapse/tests/files/stormcov/argvquery3.storm +6 -0
- synapse/tests/files/stormcov/argvquery4.storm +7 -0
- synapse/tests/files/stormcov/argvquery5.storm +11 -0
- synapse/tests/files/stormcov/badstorm.storm +1 -0
- synapse/tests/files/stormcov/continueloop.storm +5 -0
- synapse/tests/files/stormcov/dupesubs.storm +28 -0
- synapse/tests/files/stormcov/dupewarn.storm +39 -0
- synapse/tests/files/stormcov/dupfunc.storm +13 -0
- synapse/tests/files/stormcov/embedquery.storm +21 -0
- synapse/tests/files/stormcov/embedquery2.storm +4 -0
- synapse/tests/files/stormcov/embedquery3.storm +6 -0
- synapse/tests/files/stormcov/embedquery4.storm +7 -0
- synapse/tests/files/stormcov/embedquery5.storm +11 -0
- synapse/tests/files/stormcov/emptybody.storm +12 -0
- synapse/tests/files/stormcov/exprdict.storm +10 -0
- synapse/tests/files/stormcov/forloop.storm +10 -0
- synapse/tests/files/stormcov/ifelif.storm +9 -0
- synapse/tests/files/stormcov/ifelse.storm +9 -0
- synapse/tests/files/stormcov/lookup.storm +7 -0
- synapse/tests/files/stormcov/pivot.storm +4 -0
- synapse/tests/files/stormcov/pragma-nocov.storm +20 -0
- synapse/tests/files/stormcov/runtsafety.storm +7 -0
- synapse/tests/files/stormcov/spin.storm +5 -0
- synapse/tests/files/stormcov/stopreturn.storm +4 -0
- synapse/tests/files/stormcov/stormctrl.storm +8 -0
- synapse/tests/files/stormcov/switch.storm +9 -0
- synapse/tests/files/stormcov/switchnodefault.storm +8 -0
- synapse/tests/files/stormcov/trycatch.storm +8 -0
- synapse/tests/files/stormcov/whilebackedge.storm +12 -0
- synapse/tests/files/stormcov/whilecontinue.storm +13 -0
- synapse/tests/files/stormcov/whileloop.storm +8 -0
- synapse/tests/files/stormcov/whilewithnode.storm +10 -0
- synapse/tests/files/stormmod/common +1 -0
- synapse/tests/files/stormpkg/badapidef.yaml +13 -0
- synapse/tests/files/stormpkg/badcmdname.yaml +6 -0
- synapse/tests/files/stormpkg/badendpoints.yaml +7 -0
- synapse/tests/files/stormpkg/badinits.yaml +12 -0
- synapse/tests/files/stormpkg/badjsonpkg.yaml +8 -0
- synapse/tests/files/stormpkg/badvaultskeys.yaml +16 -0
- synapse/tests/files/stormpkg/badvaultsschema.yaml +16 -0
- synapse/tests/files/stormpkg/docs/foobar.md +1 -0
- synapse/tests/files/stormpkg/docs/foobar.svg +1 -0
- synapse/tests/files/stormpkg/dotstorm/dotstorm.yaml +14 -0
- synapse/tests/files/stormpkg/dotstorm_noevents/dotstorm.yaml +11 -0
- synapse/tests/files/stormpkg/dotstorm_noevents/storm/commands/dotstorm.bar.storm +1 -0
- synapse/tests/files/stormpkg/dotstorm_noevents/storm/modules/dotstorm.foo.storm +1 -0
- synapse/tests/files/stormpkg/nocontent.yaml +5 -0
- synapse/tests/files/stormpkg/nomime.yaml +5 -0
- synapse/tests/files/stormpkg/nopath.yaml +5 -0
- synapse/tests/files/stormpkg/nosuchfile.yaml +6 -0
- synapse/tests/files/stormpkg/notitle.yaml +5 -0
- synapse/tests/files/stormpkg/optic/index.html +1 -0
- synapse/tests/files/stormpkg/storm/commands/foo.bar +0 -0
- synapse/tests/files/stormpkg/storm/commands/foo.bar.storm +0 -0
- synapse/tests/files/stormpkg/storm/commands/invalidCMD.storm +0 -0
- synapse/tests/files/stormpkg/storm/commands/testpkg.baz.storm +0 -0
- synapse/tests/files/stormpkg/storm/commands/testpkgcmd.storm +1 -0
- synapse/tests/files/stormpkg/storm/modules/apimod.storm +10 -0
- synapse/tests/files/stormpkg/storm/modules/testmod.storm +1 -0
- synapse/tests/files/stormpkg/testpkg.yaml +203 -0
- synapse/tests/files/stormpkg/workflows/testpkg-bam.newp +2 -0
- synapse/tests/files/stormpkg/workflows/testpkg-baz.yaml +2 -0
- synapse/tests/files/stormpkg/workflows/testpkg-foo.yaml +2 -0
- synapse/tests/files/test.dat +1 -0
- synapse/tests/files/testpkg_build_docs/docs/bar.rst +17 -0
- synapse/tests/files/testpkg_build_docs/docs/foo.rst +4 -0
- synapse/tests/files/testpkg_build_docs/docs/tables.rst +20 -0
- synapse/tests/files/testpkg_build_docs/storm/commands/testcmd.storm +0 -0
- synapse/tests/files/testpkg_build_docs/storm/modules/apimod.storm +0 -0
- synapse/tests/files/testpkg_build_docs/storm/modules/testmod.storm +0 -0
- synapse/tests/files/testpkg_build_docs/storm/testcmd.storm +5 -0
- synapse/tests/files/testpkg_build_docs/testpkg.yaml +71 -0
- synapse/tests/nopmod.py +3 -0
- synapse/tests/test_assets.py +26 -0
- synapse/tests/test_axon.py +1288 -0
- synapse/tests/test_common.py +490 -0
- synapse/tests/test_cortex.py +9253 -0
- synapse/tests/test_daemon.py +390 -0
- synapse/tests/test_data.py +8 -0
- synapse/tests/test_datamodel.py +1858 -0
- synapse/tests/test_exc.py +71 -0
- synapse/tests/test_glob.py +52 -0
- synapse/tests/test_lib_agenda.py +2128 -0
- synapse/tests/test_lib_aha.py +1525 -0
- synapse/tests/test_lib_ast.py +5030 -0
- synapse/tests/test_lib_auth.py +1219 -0
- synapse/tests/test_lib_autodoc.py +344 -0
- synapse/tests/test_lib_base.py +665 -0
- synapse/tests/test_lib_boss.py +141 -0
- synapse/tests/test_lib_cache.py +283 -0
- synapse/tests/test_lib_cell.py +3251 -0
- synapse/tests/test_lib_certdir.py +1878 -0
- synapse/tests/test_lib_chop.py +154 -0
- synapse/tests/test_lib_cli.py +295 -0
- synapse/tests/test_lib_config.py +424 -0
- synapse/tests/test_lib_const.py +24 -0
- synapse/tests/test_lib_coro.py +132 -0
- synapse/tests/test_lib_crypto_coin.py +15 -0
- synapse/tests/test_lib_crypto_ecc.py +162 -0
- synapse/tests/test_lib_crypto_passwd.py +171 -0
- synapse/tests/test_lib_crypto_tinfoil.py +151 -0
- synapse/tests/test_lib_datfile.py +15 -0
- synapse/tests/test_lib_drive.py +345 -0
- synapse/tests/test_lib_dyndeps.py +55 -0
- synapse/tests/test_lib_encoding.py +197 -0
- synapse/tests/test_lib_gis.py +179 -0
- synapse/tests/test_lib_grammar.py +2015 -0
- synapse/tests/test_lib_hashitem.py +32 -0
- synapse/tests/test_lib_hashset.py +49 -0
- synapse/tests/test_lib_health.py +35 -0
- synapse/tests/test_lib_httpapi.py +2247 -0
- synapse/tests/test_lib_interval.py +27 -0
- synapse/tests/test_lib_json.py +240 -0
- synapse/tests/test_lib_jsonstor.py +173 -0
- synapse/tests/test_lib_jsrpc.py +345 -0
- synapse/tests/test_lib_layer.py +3239 -0
- synapse/tests/test_lib_link.py +361 -0
- synapse/tests/test_lib_lmdbslab.py +2079 -0
- synapse/tests/test_lib_logging.py +436 -0
- synapse/tests/test_lib_mcp.py +1109 -0
- synapse/tests/test_lib_modelrev.py +57 -0
- synapse/tests/test_lib_msgpack.py +315 -0
- synapse/tests/test_lib_multislabseqn.py +521 -0
- synapse/tests/test_lib_nexus.py +723 -0
- synapse/tests/test_lib_node.py +724 -0
- synapse/tests/test_lib_output.py +26 -0
- synapse/tests/test_lib_platforms_linux.py +66 -0
- synapse/tests/test_lib_process.py +67 -0
- synapse/tests/test_lib_processpool.py +90 -0
- synapse/tests/test_lib_queue.py +37 -0
- synapse/tests/test_lib_ratelimit.py +20 -0
- synapse/tests/test_lib_reflect.py +84 -0
- synapse/tests/test_lib_rstorm.py +941 -0
- synapse/tests/test_lib_scope.py +176 -0
- synapse/tests/test_lib_scrape.py +1250 -0
- synapse/tests/test_lib_slaboffs.py +28 -0
- synapse/tests/test_lib_slabseqn.py +208 -0
- synapse/tests/test_lib_spawner.py +124 -0
- synapse/tests/test_lib_spooled.py +132 -0
- synapse/tests/test_lib_storm.py +6151 -0
- synapse/tests/test_lib_storm_format.py +9 -0
- synapse/tests/test_lib_stormctrl.py +65 -0
- synapse/tests/test_lib_stormhttp.py +1043 -0
- synapse/tests/test_lib_stormlib_aha.py +401 -0
- synapse/tests/test_lib_stormlib_auth.py +1757 -0
- synapse/tests/test_lib_stormlib_backup.py +45 -0
- synapse/tests/test_lib_stormlib_basex.py +42 -0
- synapse/tests/test_lib_stormlib_cache.py +304 -0
- synapse/tests/test_lib_stormlib_cell.py +179 -0
- synapse/tests/test_lib_stormlib_compression.py +61 -0
- synapse/tests/test_lib_stormlib_cortex.py +1539 -0
- synapse/tests/test_lib_stormlib_easyperm.py +92 -0
- synapse/tests/test_lib_stormlib_env.py +37 -0
- synapse/tests/test_lib_stormlib_ethereum.py +22 -0
- synapse/tests/test_lib_stormlib_file.py +112 -0
- synapse/tests/test_lib_stormlib_gen.py +239 -0
- synapse/tests/test_lib_stormlib_gis.py +21 -0
- synapse/tests/test_lib_stormlib_hashes.py +136 -0
- synapse/tests/test_lib_stormlib_hex.py +105 -0
- synapse/tests/test_lib_stormlib_imap.py +1437 -0
- synapse/tests/test_lib_stormlib_index.py +39 -0
- synapse/tests/test_lib_stormlib_infosec.py +405 -0
- synapse/tests/test_lib_stormlib_ipv6.py +21 -0
- synapse/tests/test_lib_stormlib_iters.py +118 -0
- synapse/tests/test_lib_stormlib_json.py +89 -0
- synapse/tests/test_lib_stormlib_log.py +40 -0
- synapse/tests/test_lib_stormlib_macro.py +414 -0
- synapse/tests/test_lib_stormlib_mime.py +82 -0
- synapse/tests/test_lib_stormlib_model.py +320 -0
- synapse/tests/test_lib_stormlib_modelext.py +794 -0
- synapse/tests/test_lib_stormlib_oauth.py +1251 -0
- synapse/tests/test_lib_stormlib_pack.py +36 -0
- synapse/tests/test_lib_stormlib_pkg.py +559 -0
- synapse/tests/test_lib_stormlib_quorum.py +68 -0
- synapse/tests/test_lib_stormlib_random.py +115 -0
- synapse/tests/test_lib_stormlib_scrape.py +199 -0
- synapse/tests/test_lib_stormlib_smtp.py +91 -0
- synapse/tests/test_lib_stormlib_spooled.py +221 -0
- synapse/tests/test_lib_stormlib_stats.py +284 -0
- synapse/tests/test_lib_stormlib_stix.py +808 -0
- synapse/tests/test_lib_stormlib_storm.py +192 -0
- synapse/tests/test_lib_stormlib_tabular.py +226 -0
- synapse/tests/test_lib_stormlib_task.py +96 -0
- synapse/tests/test_lib_stormlib_utils.py +13 -0
- synapse/tests/test_lib_stormlib_vault.py +520 -0
- synapse/tests/test_lib_stormlib_xml.py +112 -0
- synapse/tests/test_lib_stormlib_yaml.py +38 -0
- synapse/tests/test_lib_stormsvc.py +1130 -0
- synapse/tests/test_lib_stormtypes.py +8598 -0
- synapse/tests/test_lib_task.py +133 -0
- synapse/tests/test_lib_thishost.py +14 -0
- synapse/tests/test_lib_time.py +203 -0
- synapse/tests/test_lib_trigger.py +985 -0
- synapse/tests/test_lib_types.py +3466 -0
- synapse/tests/test_lib_urlhelp.py +106 -0
- synapse/tests/test_lib_version.py +263 -0
- synapse/tests/test_lib_view.py +2132 -0
- synapse/tests/test_lookup_iso3166.py +11 -0
- synapse/tests/test_lookup_phonenum.py +9 -0
- synapse/tests/test_mindmeld.py +1 -0
- synapse/tests/test_model_auth.py +22 -0
- synapse/tests/test_model_base.py +407 -0
- synapse/tests/test_model_belief.py +27 -0
- synapse/tests/test_model_biz.py +122 -0
- synapse/tests/test_model_crypto.py +798 -0
- synapse/tests/test_model_dns.py +375 -0
- synapse/tests/test_model_doc.py +157 -0
- synapse/tests/test_model_economic.py +877 -0
- synapse/tests/test_model_entity.py +511 -0
- synapse/tests/test_model_files.py +862 -0
- synapse/tests/test_model_geopol.py +200 -0
- synapse/tests/test_model_geospace.py +524 -0
- synapse/tests/test_model_gov.py +21 -0
- synapse/tests/test_model_gov_cn.py +17 -0
- synapse/tests/test_model_gov_intl.py +40 -0
- synapse/tests/test_model_gov_us.py +12 -0
- synapse/tests/test_model_inet.py +3779 -0
- synapse/tests/test_model_infotech.py +2501 -0
- synapse/tests/test_model_language.py +142 -0
- synapse/tests/test_model_material.py +84 -0
- synapse/tests/test_model_orgs.py +583 -0
- synapse/tests/test_model_person.py +197 -0
- synapse/tests/test_model_planning.py +131 -0
- synapse/tests/test_model_proj.py +82 -0
- synapse/tests/test_model_risk.py +566 -0
- synapse/tests/test_model_science.py +65 -0
- synapse/tests/test_model_syn.py +793 -0
- synapse/tests/test_model_telco.py +167 -0
- synapse/tests/test_model_transport.py +341 -0
- synapse/tests/test_servers_axon.py +32 -0
- synapse/tests/test_servers_cortex.py +33 -0
- synapse/tests/test_servers_univ.py +70 -0
- synapse/tests/test_telepath.py +1406 -0
- synapse/tests/test_tools_aha.py +345 -0
- synapse/tests/test_tools_axon_copy.py +33 -0
- synapse/tests/test_tools_axon_dump_load.py +304 -0
- synapse/tests/test_tools_axon_get.py +57 -0
- synapse/tests/test_tools_axon_put.py +129 -0
- synapse/tests/test_tools_cortex_csv.py +255 -0
- synapse/tests/test_tools_cortex_docmodel.py +788 -0
- synapse/tests/test_tools_cortex_feed.py +215 -0
- synapse/tests/test_tools_cortex_layer.py +418 -0
- synapse/tests/test_tools_docker_validate.py +100 -0
- synapse/tests/test_tools_migrate3x.py +1398 -0
- synapse/tests/test_tools_service_apikey.py +224 -0
- synapse/tests/test_tools_service_backup.py +122 -0
- synapse/tests/test_tools_service_demote.py +114 -0
- synapse/tests/test_tools_service_healthcheck.py +83 -0
- synapse/tests/test_tools_service_livebackup.py +23 -0
- synapse/tests/test_tools_service_modrole.py +142 -0
- synapse/tests/test_tools_service_moduser.py +258 -0
- synapse/tests/test_tools_service_promote.py +67 -0
- synapse/tests/test_tools_service_reload.py +54 -0
- synapse/tests/test_tools_service_shutdown.py +105 -0
- synapse/tests/test_tools_service_snapshot.py +47 -0
- synapse/tests/test_tools_storm_cli.py +445 -0
- synapse/tests/test_tools_storm_pkg_doc.py +144 -0
- synapse/tests/test_tools_storm_pkg_gen.py +362 -0
- synapse/tests/test_tools_storm_printer.py +213 -0
- synapse/tests/test_tools_storm_tester.py +153 -0
- synapse/tests/test_tools_storm_validate.py +82 -0
- synapse/tests/test_tools_utils_autodoc.py +325 -0
- synapse/tests/test_tools_utils_easycert.py +215 -0
- synapse/tests/test_tools_utils_guid.py +12 -0
- synapse/tests/test_tools_utils_json2mpk.py +33 -0
- synapse/tests/test_tools_utils_rstorm.py +54 -0
- synapse/tests/test_utils.py +321 -0
- synapse/tests/test_utils_getrefs.py +81 -0
- synapse/tests/test_utils_stormcov.py +376 -0
- synapse/tests/utils.py +2316 -0
- synapse/tools/__init__.py +0 -0
- synapse/tools/aha/__init__.py +0 -0
- synapse/tools/aha/clone.py +48 -0
- synapse/tools/aha/easycert.py +53 -0
- synapse/tools/aha/enroll.py +103 -0
- synapse/tools/aha/list.py +67 -0
- synapse/tools/aha/mirror.py +190 -0
- synapse/tools/aha/provision/__init__.py +0 -0
- synapse/tools/aha/provision/service.py +78 -0
- synapse/tools/aha/provision/user.py +50 -0
- synapse/tools/axon/__init__.py +0 -0
- synapse/tools/axon/copy.py +44 -0
- synapse/tools/axon/dump.py +155 -0
- synapse/tools/axon/get.py +64 -0
- synapse/tools/axon/load.py +89 -0
- synapse/tools/axon/put.py +122 -0
- synapse/tools/cortex/__init__.py +0 -0
- synapse/tools/cortex/csv.py +274 -0
- synapse/tools/cortex/docmodel.py +878 -0
- synapse/tools/cortex/feed.py +173 -0
- synapse/tools/cortex/layer/__init__.py +0 -0
- synapse/tools/cortex/layer/dump.py +184 -0
- synapse/tools/cortex/layer/load.py +128 -0
- synapse/tools/cortex/migrate3x.py +1906 -0
- synapse/tools/docker/__init__.py +0 -0
- synapse/tools/docker/validate.py +154 -0
- synapse/tools/service/__init__.py +0 -0
- synapse/tools/service/apikey.py +90 -0
- synapse/tools/service/backup.py +179 -0
- synapse/tools/service/demote.py +47 -0
- synapse/tools/service/healthcheck.py +108 -0
- synapse/tools/service/livebackup.py +34 -0
- synapse/tools/service/modrole.py +116 -0
- synapse/tools/service/moduser.py +184 -0
- synapse/tools/service/promote.py +48 -0
- synapse/tools/service/reload.py +68 -0
- synapse/tools/service/shutdown.py +61 -0
- synapse/tools/service/snapshot.py +64 -0
- synapse/tools/storm/__init__.py +0 -0
- synapse/tools/storm/__main__.py +5 -0
- synapse/tools/storm/_cli.py +544 -0
- synapse/tools/storm/_printer.py +152 -0
- synapse/tools/storm/pkg/__init__.py +0 -0
- synapse/tools/storm/pkg/_pandoc_filter.py +79 -0
- synapse/tools/storm/pkg/doc.py +184 -0
- synapse/tools/storm/pkg/gen.py +276 -0
- synapse/tools/storm/tester.py +94 -0
- synapse/tools/storm/validate.py +50 -0
- synapse/tools/utils/__init__.py +0 -0
- synapse/tools/utils/autodoc.py +1065 -0
- synapse/tools/utils/easycert.py +136 -0
- synapse/tools/utils/guid.py +11 -0
- synapse/tools/utils/json2mpk.py +46 -0
- synapse/tools/utils/rstorm.py +34 -0
- synapse/utils/__init__.py +0 -0
- synapse/utils/getrefs.py +96 -0
- synapse/utils/stormcov.py +910 -0
- synapse/vendor/__init__.py +0 -0
- synapse/vendor/cashaddress/LICENSE +25 -0
- synapse/vendor/cashaddress/__init__.py +5 -0
- synapse/vendor/cashaddress/base58.py +134 -0
- synapse/vendor/cashaddress/convert.py +131 -0
- synapse/vendor/cashaddress/crypto.py +70 -0
- synapse/vendor/cashaddress/tests/__init__.py +0 -0
- synapse/vendor/cashaddress/tests/test_cashaddress.py +65 -0
- synapse/vendor/cpython/LICENSE +279 -0
- synapse/vendor/cpython/__init__.py +0 -0
- synapse/vendor/cpython/lib/__init__.py +0 -0
- synapse/vendor/cpython/lib/email/__init__.py +0 -0
- synapse/vendor/cpython/lib/email/_parseaddr.py +560 -0
- synapse/vendor/cpython/lib/email/utils.py +505 -0
- synapse/vendor/cpython/lib/http/__init__.py +0 -0
- synapse/vendor/cpython/lib/http/cookies.py +59 -0
- synapse/vendor/cpython/lib/ipaddress.py +2366 -0
- synapse/vendor/cpython/lib/json.py +35 -0
- synapse/vendor/cpython/lib/test/__init__.py +0 -0
- synapse/vendor/cpython/lib/test/support/__init__.py +114 -0
- synapse/vendor/cpython/lib/test/test_email/__init__.py +0 -0
- synapse/vendor/cpython/lib/test/test_email/test_email.py +480 -0
- synapse/vendor/cpython/lib/test/test_email/test_utils.py +167 -0
- synapse/vendor/cpython/lib/test/test_http_cookies.py +49 -0
- synapse/vendor/cpython/lib/test/test_ipaddress.py +2672 -0
- synapse/vendor/cpython/lib/test/test_json.py +22 -0
- synapse/vendor/substrateinterface/LICENSE +206 -0
- synapse/vendor/substrateinterface/__init__.py +20 -0
- synapse/vendor/substrateinterface/tests/__init__.py +0 -0
- synapse/vendor/substrateinterface/tests/test_ss58.py +207 -0
- synapse/vendor/substrateinterface/utils/__init__.py +34 -0
- synapse/vendor/substrateinterface/utils/ss58.py +250 -0
- synapse/vendor/utils.py +9 -0
- synapse/vendor/xrpl/LICENSE +13 -0
- synapse/vendor/xrpl/__init__.py +26 -0
- synapse/vendor/xrpl/constants.py +30 -0
- synapse/vendor/xrpl/core/__init__.py +5 -0
- synapse/vendor/xrpl/core/addresscodec/__init__.py +39 -0
- synapse/vendor/xrpl/core/addresscodec/codec.py +210 -0
- synapse/vendor/xrpl/core/addresscodec/exceptions.py +9 -0
- synapse/vendor/xrpl/core/addresscodec/main.py +156 -0
- synapse/vendor/xrpl/core/addresscodec/utils.py +7 -0
- synapse/vendor/xrpl/tests/__init__.py +0 -0
- synapse/vendor/xrpl/tests/test_codec.py +170 -0
- synapse/vendor/xrpl/tests/test_main.py +134 -0
- synapse/vendor/xrpl/tests/test_main_test_cases.py +134 -0
- synapse-3.0.0b1.dist-info/METADATA +127 -0
- synapse-3.0.0b1.dist-info/RECORD +675 -0
- synapse-3.0.0b1.dist-info/WHEEL +5 -0
- synapse-3.0.0b1.dist-info/licenses/LICENSE +202 -0
- synapse-3.0.0b1.dist-info/top_level.txt +1 -0
synapse/__init__.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'''
|
|
2
|
+
The synapse intelligence analysis framework.
|
|
3
|
+
'''
|
|
4
|
+
|
|
5
|
+
import sys
|
|
6
|
+
if (sys.version_info.major, sys.version_info.minor) < (3, 14): # pragma: no cover
|
|
7
|
+
raise Exception('synapse is not supported on Python versions < 3.14')
|
|
8
|
+
|
|
9
|
+
# checking maximum *signed* integer size to determine the interpreter arch
|
|
10
|
+
if sys.maxsize < 9223372036854775807: # pragma: no cover
|
|
11
|
+
raise Exception('synapse is only supported on 64 bit architectures')
|
|
12
|
+
|
|
13
|
+
# Checking if the interpreter is running with -OO - if so, this breaks
|
|
14
|
+
# behavior which relies on __doc__ being set. Warn the user of this
|
|
15
|
+
# degraded behavior. Could affect Cli, Cortex, and other components.
|
|
16
|
+
if sys.flags.optimize >= 2:
|
|
17
|
+
import warnings
|
|
18
|
+
mesg = '''Synapse components may experience degraded capabilities with sys.flags.optimize >=2.'''
|
|
19
|
+
warnings.warn(mesg, RuntimeWarning)
|
|
20
|
+
|
|
21
|
+
import lmdb
|
|
22
|
+
if tuple([int(x) for x in lmdb.__version__.split('.')]) < (1, 0, 0): # pragma: no cover
|
|
23
|
+
raise Exception('synapse is only supported on version >= 1.0.0 of the lmdb python module')
|
|
24
|
+
|
|
25
|
+
from synapse.lib.version import version # noqa: F401
|
|
26
|
+
# Friendly __version__ string alias
|
|
27
|
+
__version__ = version
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import logging
|
|
3
|
+
|
|
4
|
+
import synapse.common as s_common
|
|
5
|
+
|
|
6
|
+
logger = logging.getLogger(__name__)
|
|
7
|
+
dirname = os.path.dirname(__file__)
|
|
8
|
+
|
|
9
|
+
def getStorm(*names):
|
|
10
|
+
'''
|
|
11
|
+
Return a storm file from the synapse storm folder.
|
|
12
|
+
|
|
13
|
+
Example:
|
|
14
|
+
|
|
15
|
+
text = storm.get('migrate.storm')
|
|
16
|
+
await core.callStorm(text)
|
|
17
|
+
|
|
18
|
+
Example #2:
|
|
19
|
+
text = storm.get('migrations', 'model-0.2.28.storm')
|
|
20
|
+
await core.callStorm(text)
|
|
21
|
+
'''
|
|
22
|
+
fp = getAssetPath('storm', *names)
|
|
23
|
+
with open(fp, 'rb') as fd:
|
|
24
|
+
text = fd.read()
|
|
25
|
+
return text.decode('utf8')
|
|
26
|
+
|
|
27
|
+
def getAssetPath(*names):
|
|
28
|
+
fp = s_common.genpath(dirname, *names)
|
|
29
|
+
if not fp.startswith(dirname):
|
|
30
|
+
logger.error(f'{fp} is not in {dirname}')
|
|
31
|
+
raise ValueError(f'Path escaping detected for {names}')
|
|
32
|
+
if not os.path.isfile(fp):
|
|
33
|
+
logger.error('{} does not exist'.format(fp))
|
|
34
|
+
raise ValueError(f'Asset does not exist for {names}')
|
|
35
|
+
return fp
|