Commit Graph

1121 Commits

Author SHA1 Message Date
Owen Mansel-Chan
703cea2b65 Model panicking log functions better 2026-06-02 01:32:00 +01:00
Owen Mansel-Chan
e6e8e3d005 Taint doesn't flow through panicking functions 2026-06-02 01:31:44 +01:00
Owen Mansel-Chan
8a1e6d4f64 Add missing QLDocs 2026-06-02 00:41:48 +01:00
Owen Mansel-Chan
1a747dd8be (Trivial) Fix QLDoc grammar 2026-06-02 00:39:25 +01:00
Owen Mansel-Chan
c99dab1d71 Improve glog (and klog) modelling 2026-06-02 00:16:19 +01:00
Owen Mansel-Chan
8d099cbe38 Recognize more non-returning logging functions 2026-06-02 00:15:58 +01:00
Owen Mansel-Chan
b07d2fb7d7 Merge pull request #21740 from owen-mc/go/overlay-correctness
Go: improve accuracy of overlay annotations
2026-04-28 11:35:14 +01:00
Tom Hvitved
2e94b09e6f Address review comments 2026-04-27 14:18:41 +02:00
Owen Mansel-Chan
710c1ba050 Make getACallee overlay[global]
Co-authored-by: Copilot <copilot@github.com>
2026-04-24 12:35:11 +01:00
Tom Hvitved
8e26fa1c81 Go: Avoid combinatorial explosion in mostRecentSideEffect when there are multiple entry points 2026-04-24 13:24:58 +02:00
Owen Mansel-Chan
57eaed4dcc Refactor: remove fields from EncryptionOperation
Co-authored-by: Copilot <copilot@github.com>
2026-04-22 13:37:35 +01:00
Owen Mansel-Chan
bc28e1726c Refactor to get rid of duplication 2026-04-17 13:24:16 +01:00
Owen Mansel-Chan
9f4fd7fab0 Remove a data flow consistency exclusion
This is no longer needed.
2026-04-17 11:27:36 +01:00
Owen Mansel-Chan
f6135b70ea Remove global function step from local flow 2026-04-16 11:15:01 +01:00
Owen Mansel-Chan
a7fdc4b543 Replace acceptingvalue with acceptingValue 2026-03-27 22:15:45 +00:00
Owen Mansel-Chan
b3285c6ae2 Make description of acceptingvalue column clearer 2026-03-27 11:35:22 +00:00
Owen Mansel-Chan
e680d49c93 Shared: document extensible relations rather than CSV 2026-03-27 09:47:32 +00:00
Owen Mansel-Chan
805d2ec46c Go: Add provenance to MaD format explanation 2026-03-27 09:47:28 +00:00
Owen Mansel-Chan
10fddc7b96 Add barriers and barrier guards to MaD format explanations 2026-03-27 09:47:24 +00:00
Owen Mansel-Chan
99f4930e24 Explicitly mark DataFlowNodes.qll as overlay[local] 2026-03-13 15:23:39 +00:00
Owen Mansel-Chan
f32f85399a Mark various files as overlay[local] 2026-03-13 15:03:02 +00:00
Jonas Jensen
c56feb7644 Go: annotate the standard library with for overlay
This commit is auto-generated with:

    python3 config/add-overlay-annotations.py go
2026-03-13 15:03:01 +00:00
Owen Mansel-Chan
d7d1554461 Merge pull request #21465 from owen-mc/go/small-tweaks
Go: improve detection of type expressions when database is missing some type information
2026-03-12 14:58:16 +00:00
Owen Mansel-Chan
c271755985 Add and use exprRefersToNil predicate 2026-03-12 13:28:57 +00:00
Owen Mansel-Chan
a16c43881b Use "database" instead of "snapshot" in QLDocs 2026-03-12 13:28:06 +00:00
Owen Mansel-Chan
39e0382089 Improve QLDoc for isTypeExprTopDown 2026-03-12 13:28:05 +00:00
Owen Mansel-Chan
22e012c6f4 Expand isTypeExprTopDown
We should be using all subtypes of `FieldBase`. This allows us to find
more type expressions, and is also simpler to evaluate.
2026-03-12 13:28:03 +00:00
Owen Mansel-Chan
936c4cc79f Fix edge case in MaD validation
If the db contains no pointer types then we were getting spurious model
validation errors.
2026-02-10 22:32:31 +00:00
Owen Mansel-Chan
90401b3ad3 Merge pull request #21254 from owen-mc/go/astnode-get-enclosing-block
Go: Add `AstNode.getEnclosingBlock()`
2026-02-06 22:23:15 +00:00
Owen Mansel-Chan
8aa1bff9a5 Add AstNode.getEnclosingBlock() 2026-02-01 23:06:26 +00:00
Owen Mansel-Chan
52c510bfea Use shared getScope instead of getRoot 2026-01-28 22:12:30 +00:00
Owen Mansel-Chan
b2f878229d Use shared getASuccessor and getAPredecessor 2026-01-28 22:12:23 +00:00
Owen Mansel-Chan
3dd6b3fb69 Use shared basic blocks library 2026-01-28 22:11:59 +00:00
Owen Mansel-Chan
c316d51d41 Add ConditionGuardNode.getOutcome 2026-01-28 21:46:26 +00:00
Tom Hvitved
739748c29b Go: Adapt to changes in FlowSummaryImpl 2026-01-26 12:40:18 +01:00
Owen Mansel-Chan
0dc47380a3 Swap order of equality for easier comprehension 2026-01-14 11:50:53 +00:00
Owen Mansel-Chan
94bc47ab15 Swap order of supertypes 2026-01-14 11:50:50 +00:00
Owen Mansel-Chan
3850734a15 Use non-extending subtypes 2026-01-14 11:50:49 +00:00
Owen Mansel-Chan
93d7c5c7ef Remove redundant supertypes 2026-01-14 11:50:44 +00:00
Owen Mansel-Chan
ca805e9d84 Fix QLDoc 2026-01-09 10:09:22 +00:00
Owen Mansel-Chan
c271e52fe5 Validate models for barriers and barrier guards 2026-01-09 10:04:56 +00:00
Owen Mansel-Chan
a7c4ba503e Add missing qldoc 2026-01-06 23:41:33 +00:00
Owen Mansel-Chan
8602c4c57c Rename Default* to External* for MaD classes 2026-01-06 22:57:01 +00:00
Owen Mansel-Chan
7fff3534fa Convert 3 barriers for path injection to MaD 2026-01-06 22:56:59 +00:00
Owen Mansel-Chan
1e18fce300 Convert xss sanitizer to MaD 2026-01-06 22:56:57 +00:00
Owen Mansel-Chan
1e6410804f Allow non-query-specific MaD sanitizers 2026-01-06 22:56:55 +00:00
Anders Schack-Mulligen
1fbc28b753 Go: Add support for MaD barriers and barrier guards. 2026-01-06 22:51:32 +00:00
Tom Hvitved
d709343d38 Merge pull request #21011 from aschackmull/mad/shared-externalflow
Java/C++/Go/C#: Share parts of ExternalFlow.qll
2025-12-15 20:27:04 +01:00
Owen Mansel-Chan
af2fbd8dda Merge pull request #20929 from owen-mc/go/fix-data-flow-consistency-checks
Go: fix small issues highlighted by data flow consistency checks
2025-12-12 17:01:43 +00:00
Anders Schack-Mulligen
64a48e4e7b MaD: Use "namespace" instead "package" in shared code. 2025-12-12 13:57:02 +01:00