Detect circular module imports to prevent stack overflow
jq used to recurse without bound on mutual or self-referential `import` declarations, exhausting the stack. Track each library's load state with a `loading` flag set before its dependencies are processed; a recursive reference to an in-progress library now reports "circular import of X". Fixes CVE-2026-44777.
This commit is contained in:
1 parent
9d223f153c
commit
f58787c418
6 files changed
+70
-20
No files matched your search
@@ -232,6 +232,8 @@ EXTRA_DIST = $(DOC_FILES) $(man_MANS) $(TESTS) $(TEST_LOG_COMPILER) \
|
||||
tests/modules/test_bind_order0.jq \
|
||||
tests/modules/test_bind_order1.jq \
|
||||
tests/modules/test_bind_order2.jq \
|
||||
tests/modules/cycle_a.jq tests/modules/cycle_b.jq \
|
||||
tests/modules/cycle_self.jq \
|
||||
tests/onig.supp tests/local.supp \
|
||||
tests/setup tests/torture/input0.json \
|
||||
tests/optional.test tests/man.test tests/manonig.test \
|
||||
|
||||
Reference in new issue
Block a user