synapse 2.225.0__tar.gz → 2.226.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.

Files changed (690) hide show
  1. {synapse-2.225.0/synapse.egg-info → synapse-2.226.0}/PKG-INFO +1 -1
  2. {synapse-2.225.0 → synapse-2.226.0}/pyproject.toml +1 -1
  3. {synapse-2.225.0 → synapse-2.226.0}/synapse/cortex.py +6 -8
  4. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/agenda.py +28 -15
  5. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/ast.py +4 -8
  6. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/platforms/linux.py +2 -0
  7. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/storm.py +11 -3
  8. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/aha.py +3 -3
  9. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormtypes.py +10 -3
  10. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/types.py +20 -0
  11. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/version.py +2 -2
  12. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/base.py +3 -0
  13. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/inet.py +58 -5
  14. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/infotech.py +18 -0
  15. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_cortex.py +113 -0
  16. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_agenda.py +140 -27
  17. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_lmdbslab.py +2 -0
  18. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_platforms_linux.py +4 -0
  19. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_storm.py +6 -0
  20. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_aha.py +6 -2
  21. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_inet.py +31 -0
  22. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_infotech.py +15 -1
  23. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_aha.py +2 -2
  24. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/utils.py +12 -0
  25. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/mirror.py +1 -1
  26. {synapse-2.225.0 → synapse-2.226.0/synapse.egg-info}/PKG-INFO +1 -1
  27. {synapse-2.225.0 → synapse-2.226.0}/LICENSE +0 -0
  28. {synapse-2.225.0 → synapse-2.226.0}/README.rst +0 -0
  29. {synapse-2.225.0 → synapse-2.226.0}/setup.cfg +0 -0
  30. {synapse-2.225.0 → synapse-2.226.0}/synapse/__init__.py +0 -0
  31. {synapse-2.225.0 → synapse-2.226.0}/synapse/axon.py +0 -0
  32. {synapse-2.225.0 → synapse-2.226.0}/synapse/cells.py +0 -0
  33. {synapse-2.225.0 → synapse-2.226.0}/synapse/cmds/__init__.py +0 -0
  34. {synapse-2.225.0 → synapse-2.226.0}/synapse/cmds/boss.py +0 -0
  35. {synapse-2.225.0 → synapse-2.226.0}/synapse/cmds/cortex.py +0 -0
  36. {synapse-2.225.0 → synapse-2.226.0}/synapse/cmds/hive.py +0 -0
  37. {synapse-2.225.0 → synapse-2.226.0}/synapse/common.py +0 -0
  38. {synapse-2.225.0 → synapse-2.226.0}/synapse/cryotank.py +0 -0
  39. {synapse-2.225.0 → synapse-2.226.0}/synapse/daemon.py +0 -0
  40. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/__init__.py +0 -0
  41. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/attack-flow/LICENSE.txt +0 -0
  42. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/attack-flow/README.md +0 -0
  43. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/attack-flow/attack-flow-schema-2.0.0.json +0 -0
  44. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/certs/cas/The Vertex Project Intermediate CA 00.crt +0 -0
  45. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/certs/cas/The Vertex Project ROOT CA.crt +0 -0
  46. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/certs/crls/The Vertex Project Intermediate CA 00.crl +0 -0
  47. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/certs/crls/The Vertex Project ROOT CA.crl +0 -0
  48. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/iana.tlds.mpk +0 -0
  49. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/iana.uris.mpk +0 -0
  50. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/README.md +0 -0
  51. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/LICENSE.txt +0 -0
  52. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/binary.json +0 -0
  53. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/bundle.json +0 -0
  54. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/core.json +0 -0
  55. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/cyber-observable-core.json +0 -0
  56. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/dictionary.json +0 -0
  57. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension-definition.json +0 -0
  58. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension.json +0 -0
  59. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/external-reference.json +0 -0
  60. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/granular-marking.json +0 -0
  61. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hashes-type.json +0 -0
  62. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hex.json +0 -0
  63. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/identifier.json +0 -0
  64. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/kill-chain-phase.json +0 -0
  65. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/language-content.json +0 -0
  66. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/marking-definition.json +0 -0
  67. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/properties.json +0 -0
  68. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/timestamp.json +0 -0
  69. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/url-regex.json +0 -0
  70. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/artifact.json +0 -0
  71. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/autonomous-system.json +0 -0
  72. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/directory.json +0 -0
  73. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/domain-name.json +0 -0
  74. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-addr.json +0 -0
  75. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-message.json +0 -0
  76. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/file.json +0 -0
  77. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv4-addr.json +0 -0
  78. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv6-addr.json +0 -0
  79. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mac-addr.json +0 -0
  80. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mutex.json +0 -0
  81. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/network-traffic.json +0 -0
  82. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/process.json +0 -0
  83. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/software.json +0 -0
  84. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/url.json +0 -0
  85. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/user-account.json +0 -0
  86. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/windows-registry-key.json +0 -0
  87. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/x509-certificate.json +0 -0
  88. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/attack-pattern.json +0 -0
  89. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/campaign.json +0 -0
  90. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/course-of-action.json +0 -0
  91. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/grouping.json +0 -0
  92. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/identity.json +0 -0
  93. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/incident.json +0 -0
  94. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/indicator.json +0 -0
  95. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/infrastructure.json +0 -0
  96. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/intrusion-set.json +0 -0
  97. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/location.json +0 -0
  98. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware-analysis.json +0 -0
  99. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware.json +0 -0
  100. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/note.json +0 -0
  101. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/observed-data.json +0 -0
  102. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/opinion.json +0 -0
  103. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/report.json +0 -0
  104. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/threat-actor.json +0 -0
  105. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/tool.json +0 -0
  106. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/vulnerability.json +0 -0
  107. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/relationship.json +0 -0
  108. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/sighting.json +0 -0
  109. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/lark/__init__.py +0 -0
  110. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/lark/imap.lark +0 -0
  111. {synapse-2.225.0 → synapse-2.226.0}/synapse/data/lark/storm.lark +0 -0
  112. {synapse-2.225.0 → synapse-2.226.0}/synapse/datamodel.py +0 -0
  113. {synapse-2.225.0 → synapse-2.226.0}/synapse/exc.py +0 -0
  114. {synapse-2.225.0 → synapse-2.226.0}/synapse/glob.py +0 -0
  115. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/__init__.py +0 -0
  116. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/aha.py +0 -0
  117. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/auth.py +0 -0
  118. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/autodoc.py +0 -0
  119. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/base.py +0 -0
  120. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/boss.py +0 -0
  121. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/cache.py +0 -0
  122. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/cell.py +0 -0
  123. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/certdir.py +0 -0
  124. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/chop.py +0 -0
  125. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/cli.py +0 -0
  126. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/cmd.py +0 -0
  127. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/cmdr.py +0 -0
  128. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/config.py +0 -0
  129. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/const.py +0 -0
  130. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/coro.py +0 -0
  131. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/crypto/__init__.py +0 -0
  132. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/crypto/coin.py +0 -0
  133. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/crypto/ecc.py +0 -0
  134. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/crypto/passwd.py +0 -0
  135. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/crypto/rsa.py +0 -0
  136. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/crypto/tinfoil.py +0 -0
  137. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/datfile.py +0 -0
  138. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/drive.py +0 -0
  139. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/dyndeps.py +0 -0
  140. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/encoding.py +0 -0
  141. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/gis.py +0 -0
  142. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/grammar.py +0 -0
  143. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/hashitem.py +0 -0
  144. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/hashset.py +0 -0
  145. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/health.py +0 -0
  146. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/hive.py +0 -0
  147. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/httpapi.py +0 -0
  148. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/ingest.py +0 -0
  149. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/interval.py +0 -0
  150. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/json.py +0 -0
  151. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/jsonstor.py +0 -0
  152. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/layer.py +0 -0
  153. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/link.py +0 -0
  154. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/lmdbslab.py +0 -0
  155. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/modelrev.py +0 -0
  156. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/module.py +0 -0
  157. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/modules.py +0 -0
  158. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/msgpack.py +0 -0
  159. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/multislabseqn.py +0 -0
  160. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/nexus.py +0 -0
  161. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/node.py +0 -0
  162. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/oauth.py +0 -0
  163. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/output.py +0 -0
  164. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/parser.py +0 -0
  165. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/platforms/__init__.py +0 -0
  166. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/platforms/common.py +0 -0
  167. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/platforms/darwin.py +0 -0
  168. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/platforms/freebsd.py +0 -0
  169. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/platforms/windows.py +0 -0
  170. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/queue.py +0 -0
  171. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/ratelimit.py +0 -0
  172. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/reflect.py +0 -0
  173. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/rstorm.py +0 -0
  174. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/schemas.py +0 -0
  175. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/scope.py +0 -0
  176. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/scrape.py +0 -0
  177. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/share.py +0 -0
  178. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/slaboffs.py +0 -0
  179. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/slabseqn.py +0 -0
  180. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/snap.py +0 -0
  181. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/spooled.py +0 -0
  182. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/storm_format.py +0 -0
  183. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormctrl.py +0 -0
  184. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormhttp.py +0 -0
  185. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/__init__.py +0 -0
  186. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/auth.py +0 -0
  187. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/backup.py +0 -0
  188. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/basex.py +0 -0
  189. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/cache.py +0 -0
  190. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/cell.py +0 -0
  191. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/compression.py +0 -0
  192. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/cortex.py +0 -0
  193. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/easyperm.py +0 -0
  194. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/env.py +0 -0
  195. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/ethereum.py +0 -0
  196. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/gen.py +0 -0
  197. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/gis.py +0 -0
  198. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/graph.py +0 -0
  199. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/hashes.py +0 -0
  200. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/hex.py +0 -0
  201. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/imap.py +0 -0
  202. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/index.py +0 -0
  203. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/infosec.py +0 -0
  204. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/ipv6.py +0 -0
  205. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/iters.py +0 -0
  206. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/json.py +0 -0
  207. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/log.py +0 -0
  208. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/macro.py +0 -0
  209. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/math.py +0 -0
  210. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/mime.py +0 -0
  211. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/model.py +0 -0
  212. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/modelext.py +0 -0
  213. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/notifications.py +0 -0
  214. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/oauth.py +0 -0
  215. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/pack.py +0 -0
  216. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/pkg.py +0 -0
  217. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/project.py +0 -0
  218. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/random.py +0 -0
  219. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/scrape.py +0 -0
  220. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/smtp.py +0 -0
  221. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/spooled.py +0 -0
  222. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/stats.py +0 -0
  223. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/stix.py +0 -0
  224. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/storm.py +0 -0
  225. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/tabular.py +0 -0
  226. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/task.py +0 -0
  227. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/utils.py +0 -0
  228. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/vault.py +0 -0
  229. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/version.py +0 -0
  230. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/xml.py +0 -0
  231. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormlib/yaml.py +0 -0
  232. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormsvc.py +0 -0
  233. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/stormwhois.py +0 -0
  234. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/structlog.py +0 -0
  235. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/task.py +0 -0
  236. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/thishost.py +0 -0
  237. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/thisplat.py +0 -0
  238. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/threads.py +0 -0
  239. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/time.py +0 -0
  240. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/trigger.py +0 -0
  241. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/urlhelp.py +0 -0
  242. {synapse-2.225.0 → synapse-2.226.0}/synapse/lib/view.py +0 -0
  243. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/__init__.py +0 -0
  244. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/cvss.py +0 -0
  245. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/iana.py +0 -0
  246. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/iso3166.py +0 -0
  247. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/macho.py +0 -0
  248. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/pe.py +0 -0
  249. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/phonenum.py +0 -0
  250. {synapse-2.225.0 → synapse-2.226.0}/synapse/lookup/timezones.py +0 -0
  251. {synapse-2.225.0 → synapse-2.226.0}/synapse/mindmeld.py +0 -0
  252. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/__init__.py +0 -0
  253. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/auth.py +0 -0
  254. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/belief.py +0 -0
  255. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/biz.py +0 -0
  256. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/crypto.py +0 -0
  257. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/dns.py +0 -0
  258. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/doc.py +0 -0
  259. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/economic.py +0 -0
  260. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/entity.py +0 -0
  261. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/files.py +0 -0
  262. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/geopol.py +0 -0
  263. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/geospace.py +0 -0
  264. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/gov/__init__.py +0 -0
  265. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/gov/cn.py +0 -0
  266. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/gov/intl.py +0 -0
  267. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/gov/us.py +0 -0
  268. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/language.py +0 -0
  269. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/material.py +0 -0
  270. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/math.py +0 -0
  271. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/media.py +0 -0
  272. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/orgs.py +0 -0
  273. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/person.py +0 -0
  274. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/planning.py +0 -0
  275. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/proj.py +0 -0
  276. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/risk.py +0 -0
  277. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/science.py +0 -0
  278. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/syn.py +0 -0
  279. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/telco.py +0 -0
  280. {synapse-2.225.0 → synapse-2.226.0}/synapse/models/transport.py +0 -0
  281. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/__init__.py +0 -0
  282. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/aha.py +0 -0
  283. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/axon.py +0 -0
  284. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/cell.py +0 -0
  285. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/cortex.py +0 -0
  286. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/cryotank.py +0 -0
  287. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/jsonstor.py +0 -0
  288. {synapse-2.225.0 → synapse-2.226.0}/synapse/servers/stemcell.py +0 -0
  289. {synapse-2.225.0 → synapse-2.226.0}/synapse/telepath.py +0 -0
  290. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/__init__.py +0 -0
  291. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/TestUtilsGetrefs.test_basics.yaml +0 -0
  292. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/__init__.py +0 -0
  293. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/aha/certs/cas/synapse.crt +0 -0
  294. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/aha/certs/cas/synapse.key +0 -0
  295. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.crt +0 -0
  296. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.key +0 -0
  297. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/aha/certs/users/root@synapse.crt +0 -0
  298. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/aha/certs/users/root@synapse.key +0 -0
  299. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/attack_flow/CISA AA22-138B VMWare Workspace (Alt).json +0 -0
  300. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/attack_flow/CISA_Iranian_APT.json +0 -0
  301. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/cas/ca.crt +0 -0
  302. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/cas/ca.key +0 -0
  303. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/hosts/localhost.crt +0 -0
  304. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/hosts/localhost.key +0 -0
  305. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/users/root.crt +0 -0
  306. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/users/root.key +0 -0
  307. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/users/user.crt +0 -0
  308. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/certdir/users/user.key +0 -0
  309. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/changelog/model_2.176.0_16ee721a6b7221344eaf946c3ab4602dda546b1a.yaml.gz +0 -0
  310. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/changelog/model_2.176.0_2a25c58bbd344716cd7cbc3f4304d8925b0f4ef2.yaml.gz +0 -0
  311. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/cpedata.json +0 -0
  312. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/rstorm/httpresp1.json +0 -0
  313. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/rstorm/httpresp2.json +0 -0
  314. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/rstorm/httpresp3.json +0 -0
  315. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/rstorm/httprespmulti.yaml +0 -0
  316. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/rstorm/testsvc.py +0 -0
  317. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stix_export/basic.json +0 -0
  318. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stix_export/custom0.json +0 -0
  319. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stix_export/risk0.json +0 -0
  320. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stix_import/apt1.json +0 -0
  321. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stix_import/oasis-example-00.json +0 -0
  322. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/argvquery.storm +0 -0
  323. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/dupesubs.storm +0 -0
  324. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/lookup.storm +0 -0
  325. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/pivot.storm +0 -0
  326. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/pragma-nocov.storm +0 -0
  327. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/spin.storm +0 -0
  328. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormcov/stormctrl.storm +0 -0
  329. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormmod/common +0 -0
  330. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/badapidef.yaml +0 -0
  331. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/badcmdname.yaml +0 -0
  332. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/badendpoints.yaml +0 -0
  333. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/badinits.yaml +0 -0
  334. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/badjsonpkg.yaml +0 -0
  335. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/docs/foobar.md +0 -0
  336. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/docs/foobar.svg +0 -0
  337. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/dotstorm/dotstorm.yaml +0 -0
  338. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/dotstorm/storm/commands/dotstorm.bar.storm +0 -0
  339. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/dotstorm/storm/modules/dotstorm.foo.storm +0 -0
  340. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/nocontent.yaml +0 -0
  341. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/nomime.yaml +0 -0
  342. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/nopath.yaml +0 -0
  343. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/nosuchfile.yaml +0 -0
  344. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/notitle.yaml +0 -0
  345. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/optic/index.html +0 -0
  346. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/storm/commands/invalidCMD +0 -0
  347. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/storm/commands/testpkg.baz +0 -0
  348. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/storm/commands/testpkgcmd +0 -0
  349. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/storm/modules/apimod +0 -0
  350. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/storm/modules/testmod +0 -0
  351. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/testpkg.yaml +0 -0
  352. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/workflows/testpkg-bam.newp +0 -0
  353. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/workflows/testpkg-baz.yaml +0 -0
  354. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/stormpkg/workflows/testpkg-foo.yaml +0 -0
  355. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/test.dat +0 -0
  356. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testcore/cell.yaml +0 -0
  357. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/docs/bar.rst +0 -0
  358. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/docs/foo.rst +0 -0
  359. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/storm/commands/testcmd.storm +0 -0
  360. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/storm/modules/apimod.storm +0 -0
  361. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/storm/modules/testmod.storm +0 -0
  362. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/storm/testcmd.storm +0 -0
  363. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/files/testpkg_build_docs/testpkg.yaml +0 -0
  364. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/nopmod.py +0 -0
  365. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_axon.py +0 -0
  366. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_cmds_boss.py +0 -0
  367. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_cmds_cortex.py +0 -0
  368. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_cmds_hive.py +0 -0
  369. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_common.py +0 -0
  370. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_cryotank.py +0 -0
  371. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_daemon.py +0 -0
  372. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_data.py +0 -0
  373. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_datamodel.py +0 -0
  374. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_exc.py +0 -0
  375. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_glob.py +0 -0
  376. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_init.py +0 -0
  377. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_aha.py +0 -0
  378. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_ast.py +0 -0
  379. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_auth.py +0 -0
  380. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_autodoc.py +0 -0
  381. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_base.py +0 -0
  382. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_boss.py +0 -0
  383. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_cache.py +0 -0
  384. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_cell.py +0 -0
  385. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_certdir.py +0 -0
  386. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_chop.py +0 -0
  387. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_cli.py +0 -0
  388. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_config.py +0 -0
  389. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_const.py +0 -0
  390. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_coro.py +0 -0
  391. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_crypto_coin.py +0 -0
  392. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_crypto_ecc.py +0 -0
  393. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_crypto_passwd.py +0 -0
  394. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_crypto_tinfoil.py +0 -0
  395. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_datfile.py +0 -0
  396. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_dyndeps.py +0 -0
  397. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_encoding.py +0 -0
  398. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_gis.py +0 -0
  399. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_grammar.py +0 -0
  400. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_hashitem.py +0 -0
  401. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_hashset.py +0 -0
  402. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_health.py +0 -0
  403. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_hive.py +0 -0
  404. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_httpapi.py +0 -0
  405. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_interval.py +0 -0
  406. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_json.py +0 -0
  407. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_jsonstor.py +0 -0
  408. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_layer.py +0 -0
  409. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_link.py +0 -0
  410. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_modelrev.py +0 -0
  411. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_module.py +0 -0
  412. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_msgpack.py +0 -0
  413. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_multislabseqn.py +0 -0
  414. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_nexus.py +0 -0
  415. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_node.py +0 -0
  416. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_output.py +0 -0
  417. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_queue.py +0 -0
  418. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_ratelimit.py +0 -0
  419. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_reflect.py +0 -0
  420. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_rstorm.py +0 -0
  421. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_scope.py +0 -0
  422. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_scrape.py +0 -0
  423. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_slaboffs.py +0 -0
  424. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_slabseqn.py +0 -0
  425. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_snap.py +0 -0
  426. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_spooled.py +0 -0
  427. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_storm_format.py +0 -0
  428. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormctrl.py +0 -0
  429. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormhttp.py +0 -0
  430. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_auth.py +0 -0
  431. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_backup.py +0 -0
  432. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_basex.py +0 -0
  433. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_cache.py +0 -0
  434. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_cell.py +0 -0
  435. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_compression.py +0 -0
  436. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_cortex.py +0 -0
  437. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_easyperm.py +0 -0
  438. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_env.py +0 -0
  439. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_ethereum.py +0 -0
  440. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_gen.py +0 -0
  441. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_gis.py +0 -0
  442. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_hashes.py +0 -0
  443. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_hex.py +0 -0
  444. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_imap.py +0 -0
  445. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_index.py +0 -0
  446. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_infosec.py +0 -0
  447. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_ipv6.py +0 -0
  448. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_iters.py +0 -0
  449. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_json.py +0 -0
  450. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_log.py +0 -0
  451. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_macro.py +0 -0
  452. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_mime.py +0 -0
  453. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_model.py +0 -0
  454. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_modelext.py +0 -0
  455. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_oauth.py +0 -0
  456. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_pack.py +0 -0
  457. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_pkg.py +0 -0
  458. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_random.py +0 -0
  459. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_scrape.py +0 -0
  460. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_smtp.py +0 -0
  461. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_spooled.py +0 -0
  462. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_stats.py +0 -0
  463. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_stix.py +0 -0
  464. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_storm.py +0 -0
  465. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_tabular.py +0 -0
  466. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_task.py +0 -0
  467. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_utils.py +0 -0
  468. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_vault.py +0 -0
  469. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_xml.py +0 -0
  470. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormlib_yaml.py +0 -0
  471. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormsvc.py +0 -0
  472. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormtypes.py +0 -0
  473. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_stormwhois.py +0 -0
  474. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_structlog.py +0 -0
  475. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_task.py +0 -0
  476. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_thishost.py +0 -0
  477. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_time.py +0 -0
  478. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_trigger.py +0 -0
  479. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_types.py +0 -0
  480. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_urlhelp.py +0 -0
  481. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_version.py +0 -0
  482. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lib_view.py +0 -0
  483. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lookup_iso3166.py +0 -0
  484. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_lookup_phonenum.py +0 -0
  485. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_mindmeld.py +0 -0
  486. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_auth.py +0 -0
  487. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_base.py +0 -0
  488. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_belief.py +0 -0
  489. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_biz.py +0 -0
  490. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_crypto.py +0 -0
  491. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_dns.py +0 -0
  492. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_doc.py +0 -0
  493. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_economic.py +0 -0
  494. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_entity.py +0 -0
  495. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_files.py +0 -0
  496. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_geopol.py +0 -0
  497. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_geospace.py +0 -0
  498. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_gov_cn.py +0 -0
  499. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_gov_intl.py +0 -0
  500. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_gov_us.py +0 -0
  501. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_language.py +0 -0
  502. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_material.py +0 -0
  503. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_math.py +0 -0
  504. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_media.py +0 -0
  505. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_orgs.py +0 -0
  506. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_person.py +0 -0
  507. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_planning.py +0 -0
  508. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_proj.py +0 -0
  509. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_risk.py +0 -0
  510. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_science.py +0 -0
  511. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_syn.py +0 -0
  512. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_telco.py +0 -0
  513. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_model_transport.py +0 -0
  514. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_servers_axon.py +0 -0
  515. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_servers_cortex.py +0 -0
  516. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_servers_cryotank.py +0 -0
  517. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_servers_stemcell.py +0 -0
  518. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_servers_univ.py +0 -0
  519. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_telepath.py +0 -0
  520. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_axon_copy.py +0 -0
  521. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_axon_dump_load.py +0 -0
  522. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_axon_get.py +0 -0
  523. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_axon_put.py +0 -0
  524. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_cellauth.py +0 -0
  525. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_cortex_csv.py +0 -0
  526. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_cortex_feed.py +0 -0
  527. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_cortex_layer.py +0 -0
  528. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_cryo_cat.py +0 -0
  529. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_cryo_list.py +0 -0
  530. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_docker_validate.py +0 -0
  531. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_hiveload.py +0 -0
  532. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_hivesave.py +0 -0
  533. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_apikey.py +0 -0
  534. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_backup.py +0 -0
  535. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_demote.py +0 -0
  536. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_healthcheck.py +0 -0
  537. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_livebackup.py +0 -0
  538. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_modrole.py +0 -0
  539. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_moduser.py +0 -0
  540. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_promote.py +0 -0
  541. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_reload.py +0 -0
  542. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_shutdown.py +0 -0
  543. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_service_snapshot.py +0 -0
  544. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_storm_cli.py +0 -0
  545. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_storm_pkg_doc.py +0 -0
  546. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_storm_pkg_gen.py +0 -0
  547. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_utils_autodoc.py +0 -0
  548. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_utils_changelog.py +0 -0
  549. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_utils_easycert.py +0 -0
  550. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_utils_guid.py +0 -0
  551. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_utils_json2mpk.py +0 -0
  552. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_tools_utils_rstorm.py +0 -0
  553. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_utils.py +0 -0
  554. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_utils_getrefs.py +0 -0
  555. {synapse-2.225.0 → synapse-2.226.0}/synapse/tests/test_utils_stormcov.py +0 -0
  556. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/__init__.py +0 -0
  557. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/__init__.py +0 -0
  558. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/clone.py +0 -0
  559. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/easycert.py +0 -0
  560. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/enroll.py +0 -0
  561. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/list.py +0 -0
  562. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/provision/__init__.py +0 -0
  563. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/provision/service.py +0 -0
  564. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/aha/provision/user.py +0 -0
  565. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/apikey.py +0 -0
  566. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/autodoc.py +0 -0
  567. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon/__init__.py +0 -0
  568. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon/copy.py +0 -0
  569. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon/dump.py +0 -0
  570. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon/get.py +0 -0
  571. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon/load.py +0 -0
  572. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon/put.py +0 -0
  573. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/axon2axon.py +0 -0
  574. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/backup.py +0 -0
  575. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cellauth.py +0 -0
  576. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/changelog.py +0 -0
  577. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cmdr.py +0 -0
  578. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cortex/__init__.py +0 -0
  579. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cortex/csv.py +0 -0
  580. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cortex/feed.py +0 -0
  581. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cortex/layer/__init__.py +0 -0
  582. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cortex/layer/dump.py +0 -0
  583. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cortex/layer/load.py +0 -0
  584. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cryo/__init__.py +0 -0
  585. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cryo/cat.py +0 -0
  586. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/cryo/list.py +0 -0
  587. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/csvtool.py +0 -0
  588. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/demote.py +0 -0
  589. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/docker/__init__.py +0 -0
  590. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/docker/validate.py +0 -0
  591. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/easycert.py +0 -0
  592. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/feed.py +0 -0
  593. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/genpkg.py +0 -0
  594. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/guid.py +0 -0
  595. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/healthcheck.py +0 -0
  596. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/hive/__init__.py +0 -0
  597. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/hive/load.py +0 -0
  598. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/hive/save.py +0 -0
  599. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/json2mpk.py +0 -0
  600. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/livebackup.py +0 -0
  601. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/modrole.py +0 -0
  602. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/moduser.py +0 -0
  603. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/pkgs/gendocs.py +0 -0
  604. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/promote.py +0 -0
  605. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/pullfile.py +0 -0
  606. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/pushfile.py +0 -0
  607. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/reload.py +0 -0
  608. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/rstorm.py +0 -0
  609. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/__init__.py +0 -0
  610. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/apikey.py +0 -0
  611. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/backup.py +0 -0
  612. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/demote.py +0 -0
  613. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/healthcheck.py +0 -0
  614. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/livebackup.py +0 -0
  615. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/modrole.py +0 -0
  616. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/moduser.py +0 -0
  617. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/promote.py +0 -0
  618. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/reload.py +0 -0
  619. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/shutdown.py +0 -0
  620. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/service/snapshot.py +0 -0
  621. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/shutdown.py +0 -0
  622. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/snapshot.py +0 -0
  623. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/__init__.py +0 -0
  624. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/__main__.py +0 -0
  625. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/_cli.py +0 -0
  626. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/pkg/__init__.py +0 -0
  627. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/pkg/_pandoc_filter.py +0 -0
  628. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/pkg/doc.py +0 -0
  629. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/storm/pkg/gen.py +0 -0
  630. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/__init__.py +0 -0
  631. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/autodoc.py +0 -0
  632. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/changelog.py +0 -0
  633. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/easycert.py +0 -0
  634. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/guid.py +0 -0
  635. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/json2mpk.py +0 -0
  636. {synapse-2.225.0 → synapse-2.226.0}/synapse/tools/utils/rstorm.py +0 -0
  637. {synapse-2.225.0 → synapse-2.226.0}/synapse/utils/__init__.py +0 -0
  638. {synapse-2.225.0 → synapse-2.226.0}/synapse/utils/getrefs.py +0 -0
  639. {synapse-2.225.0 → synapse-2.226.0}/synapse/utils/stormcov/__init__.py +0 -0
  640. {synapse-2.225.0 → synapse-2.226.0}/synapse/utils/stormcov/plugin.py +0 -0
  641. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/__init__.py +0 -0
  642. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/LICENSE +0 -0
  643. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/__init__.py +0 -0
  644. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/base58.py +0 -0
  645. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/convert.py +0 -0
  646. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/crypto.py +0 -0
  647. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/tests/__init__.py +0 -0
  648. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cashaddress/tests/test_cashaddress.py +0 -0
  649. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/LICENSE +0 -0
  650. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/__init__.py +0 -0
  651. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/__init__.py +0 -0
  652. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/email/__init__.py +0 -0
  653. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/email/_parseaddr.py +0 -0
  654. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/email/utils.py +0 -0
  655. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/http/__init__.py +0 -0
  656. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/http/cookies.py +0 -0
  657. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/ipaddress.py +0 -0
  658. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/json.py +0 -0
  659. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/__init__.py +0 -0
  660. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/support/__init__.py +0 -0
  661. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/test_email/__init__.py +0 -0
  662. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/test_email/test_email.py +0 -0
  663. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/test_email/test_utils.py +0 -0
  664. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/test_http_cookies.py +0 -0
  665. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/test_ipaddress.py +0 -0
  666. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/cpython/lib/test/test_json.py +0 -0
  667. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/substrateinterface/LICENSE +0 -0
  668. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/substrateinterface/__init__.py +0 -0
  669. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/substrateinterface/tests/__init__.py +0 -0
  670. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/substrateinterface/tests/test_ss58.py +0 -0
  671. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/substrateinterface/utils/__init__.py +0 -0
  672. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/substrateinterface/utils/ss58.py +0 -0
  673. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/utils.py +0 -0
  674. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/LICENSE +0 -0
  675. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/__init__.py +0 -0
  676. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/constants.py +0 -0
  677. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/core/__init__.py +0 -0
  678. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/core/addresscodec/__init__.py +0 -0
  679. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/core/addresscodec/codec.py +0 -0
  680. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/core/addresscodec/exceptions.py +0 -0
  681. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/core/addresscodec/main.py +0 -0
  682. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/core/addresscodec/utils.py +0 -0
  683. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/tests/__init__.py +0 -0
  684. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/tests/test_codec.py +0 -0
  685. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/tests/test_main.py +0 -0
  686. {synapse-2.225.0 → synapse-2.226.0}/synapse/vendor/xrpl/tests/test_main_test_cases.py +0 -0
  687. {synapse-2.225.0 → synapse-2.226.0}/synapse.egg-info/SOURCES.txt +0 -0
  688. {synapse-2.225.0 → synapse-2.226.0}/synapse.egg-info/dependency_links.txt +0 -0
  689. {synapse-2.225.0 → synapse-2.226.0}/synapse.egg-info/requires.txt +0 -0
  690. {synapse-2.225.0 → synapse-2.226.0}/synapse.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: synapse
3
- Version: 2.225.0
3
+ Version: 2.226.0
4
4
  Summary: Synapse Intelligence Analysis Framework
5
5
  Author-email: The Vertex Project LLC <root@vertex.link>
6
6
  License-Expression: Apache-2.0
@@ -4,7 +4,7 @@ build-backend = 'setuptools.build_meta'
4
4
 
5
5
  [project]
6
6
  name = 'synapse'
7
- version = '2.225.0'
7
+ version = '2.226.0'
8
8
  authors = [
9
9
  { name = 'The Vertex Project LLC', email = 'root@vertex.link'},
10
10
  ]
@@ -1538,11 +1538,9 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
1538
1538
  'desc': 'Controls access to deleting storm packages.'},
1539
1539
 
1540
1540
  {'perm': ('storm', 'asroot', 'cmd', '<cmdname>'), 'gate': 'cortex',
1541
- 'desc': 'Controls running storm commands requiring root privileges.',
1542
- 'ex': 'storm.asroot.cmd.movetag'},
1541
+ 'desc': 'Deprecated. Please use Storm modules to implement functionality requiring root privileges.'},
1543
1542
  {'perm': ('storm', 'asroot', 'mod', '<modname>'), 'gate': 'cortex',
1544
- 'desc': 'Controls importing modules requiring root privileges.',
1545
- 'ex': 'storm.asroot.cmd.synapse-misp.privsep'},
1543
+ 'desc': 'Deprecated. Storm modules should use the asroot:perms key to specify the permissions they require.'},
1546
1544
 
1547
1545
  {'perm': ('storm', 'graph', 'add'), 'gate': 'cortex',
1548
1546
  'desc': 'Controls access to add a storm graph.',
@@ -6914,7 +6912,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
6914
6912
  Delete a cron job
6915
6913
 
6916
6914
  Args:
6917
- iden (bytes): The iden of the cron job to be deleted
6915
+ iden (str): The iden of the cron job to be deleted
6918
6916
  '''
6919
6917
  await self._killCronTask(iden)
6920
6918
  try:
@@ -6931,7 +6929,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
6931
6929
  Change an existing cron job's query
6932
6930
 
6933
6931
  Args:
6934
- iden (bytes): The iden of the cron job to be changed
6932
+ iden (str): The iden of the cron job to be changed
6935
6933
  '''
6936
6934
  await self.agenda.mod(iden, query)
6937
6935
  await self.feedBeholder('cron:edit:query', {'iden': iden, 'query': query}, gates=[iden])
@@ -6942,7 +6940,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
6942
6940
  Enable a cron job
6943
6941
 
6944
6942
  Args:
6945
- iden (bytes): The iden of the cron job to be changed
6943
+ iden (str): The iden of the cron job to be changed
6946
6944
  '''
6947
6945
  await self.agenda.enable(iden)
6948
6946
  await self.feedBeholder('cron:enable', {'iden': iden}, gates=[iden])
@@ -6954,7 +6952,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
6954
6952
  Enable a cron job
6955
6953
 
6956
6954
  Args:
6957
- iden (bytes): The iden of the cron job to be changed
6955
+ iden (str): The iden of the cron job to be changed
6958
6956
  '''
6959
6957
  await self.agenda.disable(iden)
6960
6958
  await self._killCronTask(iden)
@@ -430,6 +430,9 @@ class _Appt:
430
430
 
431
431
  if name == 'lasterrs' and not isinstance(valu, list):
432
432
  valu = list(valu)
433
+ elif name == 'nexttime' and valu is None:
434
+ self.recs.clear()
435
+ self.stor._delete_appt_from_heap(self)
433
436
 
434
437
  setattr(self, name, valu)
435
438
 
@@ -469,7 +472,6 @@ class Agenda(s_base.Base):
469
472
  self.apptheap = []
470
473
  self.appts = {}
471
474
 
472
- to_delete = []
473
475
  for iden, info in self.apptdefs.items():
474
476
  try:
475
477
  appt = _Appt.unpack(self, info)
@@ -479,18 +481,30 @@ class Agenda(s_base.Base):
479
481
  self._next_indx = max(self._next_indx, appt.indx + 1)
480
482
  except (s_exc.InconsistentStorage, s_exc.BadStorageVersion, s_exc.BadTime, TypeError, KeyError,
481
483
  UnicodeDecodeError) as e:
482
- logger.warning('Invalid appointment %r found in storage: %r. Removing.', iden, e)
483
- to_delete.append(iden)
484
- continue
485
-
486
- for iden in to_delete:
487
- self.apptdefs.pop(iden)
484
+ logger.warning('Invalid appointment %r found in storage: %r. This appointment will be removed.', iden, e)
488
485
 
489
486
  # Make sure we don't assign the same index to 2 appointments
490
487
  if self.appts:
491
488
  maxindx = max(appt.indx for appt in self.appts.values())
492
489
  self._next_indx = maxindx + 1
493
490
 
491
+ async def _clear_invalid(self):
492
+
493
+ to_delete = []
494
+ for iden, info in self.apptdefs.items():
495
+ try:
496
+ appt = _Appt.unpack(self, info)
497
+ if appt.iden != iden:
498
+ raise s_exc.InconsistentStorage(mesg='iden inconsistency')
499
+
500
+ except (s_exc.InconsistentStorage, s_exc.BadStorageVersion, s_exc.BadTime, TypeError, KeyError,
501
+ UnicodeDecodeError) as e:
502
+ logger.warning('Removing invalid appointment %r.', iden)
503
+ to_delete.append(iden)
504
+
505
+ for iden in to_delete:
506
+ await self.core.delCronJob(iden)
507
+
494
508
  def _addappt(self, iden, appt):
495
509
  '''
496
510
  Updates the data structures to add an appointment
@@ -685,14 +699,13 @@ class Agenda(s_base.Base):
685
699
  '''
686
700
  Delete an appointment
687
701
  '''
688
- appt = self.appts.get(iden)
689
- if appt is None:
702
+ if not self.apptdefs.delete(iden):
690
703
  mesg = f'No cron job with iden: {iden}'
691
704
  raise s_exc.NoSuchIden(iden=iden, mesg=mesg)
692
705
 
693
- self._delete_appt_from_heap(appt)
694
- del self.appts[iden]
695
- self.apptdefs.delete(iden)
706
+ if (appt := self.appts.get(iden)) is not None:
707
+ self._delete_appt_from_heap(appt)
708
+ del self.appts[iden]
696
709
 
697
710
  def _delete_appt_from_heap(self, appt):
698
711
  try:
@@ -729,14 +742,14 @@ class Agenda(s_base.Base):
729
742
  await self.core.addCronEdits(appt.iden, edits)
730
743
  await self.core.feedBeholder('cron:stop', {'iden': appt.iden})
731
744
 
732
- if appt.nexttime is None:
733
- self._delete_appt_from_heap(appt)
734
-
735
745
  async def runloop(self):
736
746
  '''
737
747
  Task loop to issue query tasks at the right times.
738
748
  '''
739
749
  await self.clearRunningStatus()
750
+
751
+ await self._clear_invalid()
752
+
740
753
  while not self.isfini:
741
754
 
742
755
  timeout = None
@@ -3452,10 +3452,6 @@ class PropValue(Value):
3452
3452
  raise self.kids[0].addExcInfo(exc)
3453
3453
 
3454
3454
  valu = path.node.get(name)
3455
- if isinstance(valu, (dict, list, tuple)):
3456
- # these get special cased because changing them affects the node
3457
- # while it's in the pipeline but the modification doesn't get stored
3458
- valu = s_msgpack.deepcopy(valu)
3459
3455
  return prop, valu
3460
3456
 
3461
3457
  # handle implicit pivot properties
@@ -3479,10 +3475,6 @@ class PropValue(Value):
3479
3475
  raise self.kids[0].addExcInfo(exc)
3480
3476
 
3481
3477
  if i >= imax:
3482
- if isinstance(valu, (dict, list, tuple)):
3483
- # these get special cased because changing them affects the node
3484
- # while it's in the pipeline but the modification doesn't get stored
3485
- valu = s_msgpack.deepcopy(valu)
3486
3478
  return prop, valu
3487
3479
 
3488
3480
  form = runt.model.forms.get(prop.type.name)
@@ -3495,6 +3487,10 @@ class PropValue(Value):
3495
3487
 
3496
3488
  async def compute(self, runt, path):
3497
3489
  prop, valu = await self.getPropAndValu(runt, path)
3490
+
3491
+ if prop:
3492
+ valu = await prop.type.tostorm(valu)
3493
+
3498
3494
  return valu
3499
3495
 
3500
3496
  class RelPropValue(PropValue):
@@ -112,7 +112,9 @@ def getSysctls():
112
112
  ('vm.dirty_expire_centisecs', '/proc/sys/vm/dirty_expire_centisecs', int),
113
113
  ('vm.dirty_writeback_centisecs', '/proc/sys/vm/dirty_writeback_centisecs', int),
114
114
  ('vm.dirty_background_ratio', '/proc/sys/vm/dirty_background_ratio', int),
115
+ ('vm.dirty_background_bytes', '/proc/sys/vm/dirty_background_bytes', int),
115
116
  ('vm.dirty_ratio', '/proc/sys/vm/dirty_ratio', int),
117
+ ('vm.dirty_bytes', '/proc/sys/vm/dirty_bytes', int),
116
118
  )
117
119
  ret = {}
118
120
  for key, fp, func in _sysctls:
@@ -2521,9 +2521,17 @@ class PureCmd(Cmd):
2521
2521
  perm = ('storm', 'asroot', 'cmd') + tuple(name.split('.'))
2522
2522
 
2523
2523
  asroot = runt.allowed(perm)
2524
- if self.asroot and not asroot:
2525
- mesg = f'Command ({name}) elevates privileges. You need perm: storm.asroot.cmd.{name}'
2526
- raise s_exc.AuthDeny(mesg=mesg, user=runt.user.iden, username=runt.user.name)
2524
+ if self.asroot:
2525
+ mesg = f'Command ({name}) requires asroot permission which is deprecated and will be removed in v3.0.0. ' \
2526
+ 'Functionality which requires elevated permissions should be implemented in Storm modules and use ' \
2527
+ 'asroot:perms to specify the required permissions.'
2528
+
2529
+ s_common.deprecated('Storm command asroot key', curv='2.226.0', eolv='3.0.0')
2530
+ await runt.warnonce(mesg, log=False)
2531
+
2532
+ if not asroot:
2533
+ mesg = f'Command ({name}) elevates privileges. You need perm: storm.asroot.cmd.{name}'
2534
+ raise s_exc.AuthDeny(mesg=mesg, user=runt.user.iden, username=runt.user.name)
2527
2535
 
2528
2536
  # if a command requires perms, check em!
2529
2537
  # ( used to create more intuitive perm boundaries )
@@ -740,10 +740,10 @@ The ready column indicates that a service has entered into the realtime change w
740
740
  $info = $cell_infos.$svcname
741
741
  $cell_info = $info.cell
742
742
  $status.nexs_indx = $cell_info.nexsindx
743
- if ($cell_info.uplink) {
744
- $status.role = 'follower'
745
- } else {
743
+ if ($cell_info.active) {
746
744
  $status.role = 'leader'
745
+ } else {
746
+ $status.role = 'follower'
747
747
  }
748
748
  $status.version = $info.cell.verstring
749
749
  $status.synapse_version = $info.synapse.verstring
@@ -1499,9 +1499,16 @@ class LibBase(Lib):
1499
1499
  perm = ('storm', 'asroot', 'mod') + tuple(name.split('.'))
1500
1500
  asroot = self.runt.allowed(perm)
1501
1501
 
1502
- if mdef.get('asroot', False) and not asroot:
1503
- mesg = f'Module ({name}) elevates privileges. You need perm: storm.asroot.mod.{name}'
1504
- raise s_exc.AuthDeny(mesg=mesg, user=self.runt.user.iden, username=self.runt.user.name)
1502
+ if mdef.get('asroot', False):
1503
+ mesg = f'Module ({name}) requires asroot permission but does not specify any asroot:perms. ' \
1504
+ 'storm.asroot.mod.<modname> style permissons are deprecated and will be removed in v3.0.0.'
1505
+
1506
+ s_common.deprecated('Storm module asroot key', curv='2.226.0', eolv='3.0.0')
1507
+ await self.runt.warnonce(mesg, log=False)
1508
+
1509
+ if not asroot:
1510
+ mesg = f'Module ({name}) elevates privileges. You need perm: storm.asroot.mod.{name}'
1511
+ raise s_exc.AuthDeny(mesg=mesg, user=self.runt.user.iden, username=self.runt.user.name)
1505
1512
 
1506
1513
  modr = await self.runt.getModRuntime(query, opts={'vars': {'modconf': modconf}})
1507
1514
  modr.asroot = asroot
@@ -32,6 +32,8 @@ class Type:
32
32
  # ( due to hot-loop needs in the storm runtime )
33
33
  isarray = False
34
34
 
35
+ ismutable = False
36
+
35
37
  def __init__(self, modl, name, info, opts):
36
38
  '''
37
39
  Construct a new Type object.
@@ -369,6 +371,17 @@ class Type:
369
371
  topt.update(opts)
370
372
  return self.__class__(self.modl, self.name, self.info, topt)
371
373
 
374
+ async def tostorm(self, valu):
375
+ '''
376
+ Allows type-specific modifications to values to make them safe for use in the runtime.
377
+
378
+ Args:
379
+ valu (any): The valu to update.
380
+ '''
381
+ if self.ismutable:
382
+ return s_msgpack.deepcopy(valu, use_list=True)
383
+ return valu
384
+
372
385
  def __eq__(self, othr):
373
386
  if self.name != othr.name:
374
387
  return False
@@ -415,6 +428,7 @@ class Bool(Type):
415
428
  class Array(Type):
416
429
 
417
430
  isarray = True
431
+ ismutable = True
418
432
 
419
433
  def postTypeInit(self):
420
434
 
@@ -534,6 +548,9 @@ class Comp(Type):
534
548
 
535
549
  _type = self.tcache[name]
536
550
 
551
+ if _type.ismutable:
552
+ self.ismutable = True
553
+
537
554
  norm, info = _type.norm(valu[i])
538
555
 
539
556
  subs[name] = norm
@@ -1623,6 +1640,8 @@ class TimeEdge(Edge):
1623
1640
 
1624
1641
  class Data(Type):
1625
1642
 
1643
+ ismutable = True
1644
+
1626
1645
  stortype = s_layer.STOR_TYPE_MSGP
1627
1646
 
1628
1647
  def postTypeInit(self):
@@ -1643,6 +1662,7 @@ class Data(Type):
1643
1662
 
1644
1663
  class NodeProp(Type):
1645
1664
 
1665
+ ismutable = True
1646
1666
  stortype = s_layer.STOR_TYPE_MSGP
1647
1667
 
1648
1668
  def postTypeInit(self):
@@ -223,6 +223,6 @@ def reqVersion(valu, reqver,
223
223
  ##############################################################################
224
224
  # The following are touched during the release process by bumpversion.
225
225
  # Do not modify these directly.
226
- version = (2, 225, 0)
226
+ version = (2, 226, 0)
227
227
  verstring = '.'.join([str(x) for x in version])
228
- commit = 'd2ab923e3df9fe64611ac05b6ffdd7e8c2dc1b22'
228
+ commit = '90a28a430a0b2b1f8cc74af240f55bfcf717b582'
@@ -176,6 +176,9 @@ class BaseModule(s_module.CoreModule):
176
176
  ((None, 'refs', None), {
177
177
  'doc': 'The source node contains a reference to the target node.'}),
178
178
 
179
+ ((None, 'linked', None), {
180
+ 'doc': 'The source node is linked to the target node.'}),
181
+
179
182
  (('meta:source', 'seen', None), {
180
183
  'doc': 'The meta:source observed the target node.'}),
181
184
 
@@ -1550,13 +1550,23 @@ class InetModule(s_module.CoreModule):
1550
1550
  ('inet:ssl:jarmsample', ('comp', {'fields': (('server', 'inet:server'), ('jarmhash', 'inet:ssl:jarmhash'))}), {
1551
1551
  'doc': 'A JARM hash sample taken from a server.'}),
1552
1552
 
1553
+ ('inet:service:platform:type:taxonomy', ('taxonomy', {}), {
1554
+ 'interfaces': ('meta:taxonomy',),
1555
+ 'doc': 'A service platform type taxonomy.'}),
1556
+
1553
1557
  ('inet:service:platform', ('guid', {}), {
1554
1558
  'doc': 'A network platform which provides services.'}),
1555
1559
 
1560
+ ('inet:service:agent', ('guid', {}), {
1561
+ 'interfaces': ('inet:service:object',),
1562
+ 'template': {'service:base': 'agent'},
1563
+ 'doc': 'An instance of a deployed agent or software integration which is part of the service architecture.'}),
1564
+
1556
1565
  ('inet:service:app', ('guid', {}), {
1557
1566
  'interfaces': ('inet:service:object',),
1558
1567
  'template': {'service:base': 'application'},
1559
- 'doc': 'An application which is part of a service architecture.'}),
1568
+ 'deprecated': True,
1569
+ 'doc': 'Deprecated. Please use inet:service:agent for autonomous agents.'}),
1560
1570
 
1561
1571
  ('inet:service:instance', ('guid', {}), {
1562
1572
  'doc': 'An instance of the platform such as Slack or Discord instances.'}),
@@ -1795,7 +1805,8 @@ class InetModule(s_module.CoreModule):
1795
1805
  'doc': 'The service account which removed or decommissioned the {service:base}.'}),
1796
1806
 
1797
1807
  ('app', ('inet:service:app', {}), {
1798
- 'doc': 'The app which contains the {service:base}.'}),
1808
+ 'deprecated': True,
1809
+ 'doc': 'Deprecated. Objects are no longer scoped to an application or agent.'}),
1799
1810
  ),
1800
1811
  }),
1801
1812
 
@@ -1816,7 +1827,11 @@ class InetModule(s_module.CoreModule):
1816
1827
  'props': (
1817
1828
 
1818
1829
  ('app', ('inet:service:app', {}), {
1819
- 'doc': 'The app which handled the action.'}),
1830
+ 'deprecated': True,
1831
+ 'doc': 'Deprecated. Please use :agent / inet:service:agent.'}),
1832
+
1833
+ ('agent', ('inet:service:agent', {}), {
1834
+ 'doc': 'The service agent which performed the action potentially on behalf of an account.'}),
1820
1835
 
1821
1836
  ('time', ('time', {}), {
1822
1837
  'doc': 'The time that the account initiated the action.'}),
@@ -1851,8 +1866,12 @@ class InetModule(s_module.CoreModule):
1851
1866
  ('client:host', ('it:host', {}), {
1852
1867
  'doc': 'The client host which initiated the action.'}),
1853
1868
 
1869
+ ('client:software', ('it:prod:softver', {}), {
1870
+ 'doc': 'The client software used to initiate the action.'}),
1871
+
1854
1872
  ('client:app', ('inet:service:app', {}), {
1855
- 'doc': 'The client service app which initiated the action.'}),
1873
+ 'deprecated': True,
1874
+ 'doc': 'Deprecated. Please use :client:software.'}),
1856
1875
 
1857
1876
  ('server', ('inet:server', {}), {
1858
1877
  'doc': 'The network address of the server which handled the action.'}),
@@ -3698,6 +3717,8 @@ class InetModule(s_module.CoreModule):
3698
3717
  'ro': True,
3699
3718
  'doc': 'The x509 certificate sent by the client.'})
3700
3719
  )),
3720
+
3721
+ ('inet:service:platform:type:taxonomy', {}, ()),
3701
3722
  ('inet:service:platform', {}, (
3702
3723
 
3703
3724
  ('id', ('str', {'strip': True}), {
@@ -3732,6 +3753,12 @@ class InetModule(s_module.CoreModule):
3732
3753
  'disp': {'hint': 'text'},
3733
3754
  'doc': 'A description of the service platform.'}),
3734
3755
 
3756
+ ('type', ('inet:service:platform:type:taxonomy', {}), {
3757
+ 'doc': 'The type of service platform.'}),
3758
+
3759
+ ('family', ('str', {'onespace': True, 'lower': True}), {
3760
+ 'doc': 'A family designation for use with instanced platforms such as Slack, Discord, or Mastodon.'}),
3761
+
3735
3762
  ('parent', ('inet:service:platform', {}), {
3736
3763
  'doc': 'A parent platform which owns this platform.'}),
3737
3764
 
@@ -3752,6 +3779,9 @@ class InetModule(s_module.CoreModule):
3752
3779
 
3753
3780
  ('provider:name', ('ou:name', {}), {
3754
3781
  'doc': 'The name of the organization which operates the platform.'}),
3782
+
3783
+ ('software', ('it:prod:softver', {}), {
3784
+ 'doc': 'The latest known software version that the platform is running.'}),
3755
3785
  )),
3756
3786
 
3757
3787
  ('inet:service:instance', {}, (
@@ -3791,7 +3821,8 @@ class InetModule(s_module.CoreModule):
3791
3821
  'doc': 'The tenant which contains the instance.'}),
3792
3822
 
3793
3823
  ('app', ('inet:service:app', {}), {
3794
- 'doc': 'The app which contains the instance.'}),
3824
+ 'deprecated': True,
3825
+ 'doc': 'Deprecated. Instances are no longer scoped to applications.'}),
3795
3826
  )),
3796
3827
 
3797
3828
  ('inet:service:app', {}, (
@@ -3816,6 +3847,25 @@ class InetModule(s_module.CoreModule):
3816
3847
  'doc': 'The name of the organization which provides the application.'}),
3817
3848
  )),
3818
3849
 
3850
+ ('inet:service:agent', {}, (
3851
+
3852
+ ('name', ('str', {'lower': True, 'onespace': True}), {
3853
+ 'alts': ('names',),
3854
+ 'doc': 'The name of the service agent instance.'}),
3855
+
3856
+ ('names', ('array', {'type': 'str',
3857
+ 'typeopts': {'onespace': True, 'lower': True},
3858
+ 'sorted': True, 'uniq': True}), {
3859
+ 'doc': 'An array of alternate names for the service agent instance.'}),
3860
+
3861
+ ('desc', ('str', {}), {
3862
+ 'disp': {'hint': 'text'},
3863
+ 'doc': 'A description of the deployed service agent instance.'}),
3864
+
3865
+ ('software', ('it:prod:softver', {}), {
3866
+ 'doc': 'The latest known software version running on the service agent instance.'}),
3867
+ )),
3868
+
3819
3869
  ('inet:service:account', {}, (
3820
3870
 
3821
3871
  ('user', ('inet:user', {}), {
@@ -3911,6 +3961,9 @@ class InetModule(s_module.CoreModule):
3911
3961
 
3912
3962
  ('inet:service:login', {}, (
3913
3963
 
3964
+ ('url', ('inet:url', {}), {
3965
+ 'doc': 'The URL of the login endpoint used for this login attempt.'}),
3966
+
3914
3967
  ('method', ('inet:service:login:method:taxonomy', {}), {
3915
3968
  'doc': 'The type of authentication used for the login. For example "password" or "multifactor.sms".'}),
3916
3969
 
@@ -803,6 +803,9 @@ class ItModule(s_module.CoreModule):
803
803
  ('it:dev:repo:diff', ('guid', {}), {
804
804
  'doc': 'A diff of a file being applied in a single commit.',
805
805
  }),
806
+ ('it:dev:repo:entry', ('guid', {}), {
807
+ 'doc': 'A file included in a repository.',
808
+ }),
806
809
  ('it:dev:repo:issue:label', ('guid', {}), {
807
810
  'interfaces': ('inet:service:object',),
808
811
  'template': {'service:base': 'repository issue label'},
@@ -1119,6 +1122,10 @@ class ItModule(s_module.CoreModule):
1119
1122
  'doc': 'The YARA rule is intended for use in detecting the target node.'}),
1120
1123
  (('it:dev:repo', 'has', 'inet:url'), {
1121
1124
  'doc': 'The repo has content hosted at the URL.'}),
1125
+ (('it:dev:repo:commit', 'has', 'it:dev:repo:entry'), {
1126
+ 'doc': 'The file entry is present in the commit version of the repository.'}),
1127
+ (('it:log:event', 'about', None), {
1128
+ 'doc': 'The it:log:event is about the target node.'}),
1122
1129
  ),
1123
1130
  'forms': (
1124
1131
  ('it:hostname', {}, ()),
@@ -2001,6 +2008,17 @@ class ItModule(s_module.CoreModule):
2001
2008
  'doc': 'The URL where the diff is hosted.'}),
2002
2009
  )),
2003
2010
 
2011
+ ('it:dev:repo:entry', {}, (
2012
+
2013
+ ('repo', ('it:dev:repo', {}), {
2014
+ 'doc': 'The repository which contains the file.'}),
2015
+
2016
+ ('file', ('file:bytes', {}), {
2017
+ 'doc': 'The file which the repository contains.'}),
2018
+
2019
+ ('path', ('file:path', {}), {
2020
+ 'doc': 'The path to the file in the repository.'}),
2021
+ )),
2004
2022
  ('it:dev:repo:issue', {}, (
2005
2023
 
2006
2024
  ('repo', ('it:dev:repo', {}), {
@@ -9093,3 +9093,116 @@ class CortexBasicTest(s_t_utils.SynTest):
9093
9093
  async with self.getRegrCore('2.213.0-queue-authgates') as core:
9094
9094
  self.nn(await core.getAuthGate('queue:stillhere'))
9095
9095
  self.none(await core.getAuthGate('queue:authtest'))
9096
+
9097
+ async def test_cortex_prop_copy(self):
9098
+ async with self.getTestCore() as core:
9099
+ q = '[test:arrayprop=(ap0,) :strs=(foo, bar, baz)]'
9100
+ self.len(1, await core.nodes(q))
9101
+
9102
+ q = 'test:arrayprop=(ap0,) $l=:strs $r=$l.rem(baz) return(($r, $l))'
9103
+ valu = await core.callStorm(q)
9104
+ self.true(valu[0])
9105
+ self.sorteq(valu[1], ['foo', 'bar'])
9106
+
9107
+ # modifying the property value shouldn't update the node
9108
+ nodes = await core.nodes('test:arrayprop=(ap0,) $l=:strs $l.rem(baz)')
9109
+ self.len(1, nodes)
9110
+ self.sorteq(nodes[0].get('strs'), ['foo', 'bar', 'baz'])
9111
+
9112
+ data = {
9113
+ 'str': 'strval',
9114
+ 'int': 1,
9115
+ 'dict': {'dictkey': 'dictval'},
9116
+ 'list': ('listval0', 'listval1'),
9117
+ 'tuple': ('tupleval0', 'tupleval1'),
9118
+ }
9119
+
9120
+ opts = {
9121
+ 'vars': {
9122
+ 'data': data,
9123
+ }
9124
+ }
9125
+ q = '''
9126
+ [ test:guid=(d0,)
9127
+ :data=$data
9128
+ :comp=(1, foo)
9129
+ :mutcomp=(foo, (1, 2, 3))
9130
+ ]
9131
+ '''
9132
+ self.len(1, await core.nodes(q, opts=opts))
9133
+
9134
+ q = '''
9135
+ test:guid=(d0,)
9136
+ $d=:data
9137
+ $d.list.rem(listval0)
9138
+ $d.str = foo
9139
+ $d.int = ($d.int + 1)
9140
+ $d.dict.foo = bar
9141
+ $d.tuple.append(tupleval2)
9142
+ return($d)
9143
+ '''
9144
+ valu = await core.callStorm(q)
9145
+ self.eq(valu, {
9146
+ 'str': 'foo',
9147
+ 'int': 2,
9148
+ 'dict': {'dictkey': 'dictval', 'foo': 'bar'},
9149
+ 'list': ('listval1',),
9150
+ 'tuple': ('tupleval0', 'tupleval1', 'tupleval2'),
9151
+ })
9152
+
9153
+ # modifying the property value shouldn't update the node
9154
+ q = '''
9155
+ test:guid=(d0,)
9156
+ $d=:data
9157
+ $d.dict = $lib.undef
9158
+ '''
9159
+ nodes = await core.nodes(q)
9160
+ self.len(1, nodes)
9161
+ self.eq(nodes[0].get('data')['dict'], {'dictkey': 'dictval'})
9162
+
9163
+ q = '''
9164
+ test:guid=(d0,)
9165
+ $c=:comp
9166
+ $c.rem((1))
9167
+ $m=:mutcomp
9168
+ $m.1.rem((3))
9169
+ return(($c, :comp, $m, :mutcomp))
9170
+ '''
9171
+ valu = await core.callStorm(q)
9172
+ self.eq(valu, (
9173
+ (1, 'foo'),
9174
+ (1, 'foo'),
9175
+ ('foo', (1, 2)),
9176
+ ('foo', (1, 2, 3)),
9177
+ ))
9178
+
9179
+ # Nodeprops could have mutable types in them so make sure modifying
9180
+ # them doesn't cause modifications to the node
9181
+ q = '''
9182
+ $data = { test:guid=(d0,) return(:data) }
9183
+ [ test:str=foobar :baz=(test:guid:data, $data) ]
9184
+ ($prop, $valu) = :baz
9185
+ $valu.list.rem(listval0)
9186
+ return((:baz, $valu))
9187
+ '''
9188
+ valu = await core.callStorm(q)
9189
+
9190
+ exp = {
9191
+ 'str': 'strval',
9192
+ 'int': 1,
9193
+ 'dict': {'dictkey': 'dictval'},
9194
+ 'list': ('listval1',),
9195
+ 'tuple': ('tupleval0', 'tupleval1'),
9196
+ }
9197
+
9198
+ self.eq(valu, (('test:guid:data', data), exp))
9199
+
9200
+ # Make sure $node.props aren't modifiable either
9201
+ nodes = await core.nodes('test:str=foobar $node.props.baz.1.list.rem(listval0)')
9202
+ self.len(1, nodes)
9203
+ self.eq(nodes[0].get('baz'), ('test:guid:data', data))
9204
+
9205
+ # Dereferencing mutable types from $node.props should
9206
+ # return mutable instances without mutating the original prop valu
9207
+ valu = await core.callStorm('test:str=foobar ($prop, $valu) = :baz $valu.list.rem(listval0) return((:baz, $valu))')
9208
+ self.eq(valu, (('test:guid:data', data), exp))