Tamas Vajk
a484766dbd
C#: enable buildless mode
2024-04-09 17:56:03 +01:00
Taus
3656376cc4
Merge pull request #16064 from github/max-schaefer/fix-unexploitable-types
...
Automodel: Filter unexploitable types in application mode.
2024-04-09 17:14:53 +02:00
Felicity Chapman
5253c96aa2
Merge pull request #16162 from github/felicitymay/threat-models-csharp
...
Make duplicated content clear
2024-04-09 15:47:44 +01:00
Owen Mansel-Chan
5e4a5c1571
Merge pull request #16160 from owen-mc/java/delete-jdk-internal-models
...
Java: Delete models for JDK internal packages
2024-04-09 15:01:16 +01:00
Max Schaefer
deb78b248b
Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2024-04-09 14:38:17 +01:00
Tom Hvitved
6c9a0e4a9a
Merge pull request #16154 from hvitved/ruby/redundant-implicit-read
...
Ruby: Remove two redundant `allowImplicitRead` predicates
2024-04-09 15:38:05 +02:00
Rasmus Wriedt Larsen
6f1a9d4574
Merge pull request #16159 from RasmusWL/fix-integration-tests
...
Python: Fixup integration tests after no dep inst
2024-04-09 15:08:20 +02:00
Felicity Chapman
e6d63b980d
Make duplicated content clear
2024-04-09 14:05:42 +01:00
Rasmus Wriedt Larsen
6ce38be3cc
Merge pull request #16112 from github/tausbn/python-various-extractor-fixups
...
Python: Various extractor fixups
2024-04-09 14:46:23 +02:00
Michael Nebel
bd1de179b3
Merge pull request #15887 from michaelnebel/csharp/qualifiedname
...
C#: Fully qualified name.
2024-04-09 14:26:36 +02:00
Owen Mansel-Chan
ae8240a695
Delete models for JDK internal packages
2024-04-09 13:23:03 +01:00
Rasmus Wriedt Larsen
e9e7ccddce
Python: delete force-enable-library-extraction integration test
2024-04-09 14:02:34 +02:00
Rasmus Wriedt Larsen
a0d6324f68
Python: Fix ignore-venv integration test
...
Now that we no longer support the fallback option
(https://github.com/github/codeql/pull/16127 )
2024-04-09 14:01:10 +02:00
Rasmus Wriedt Larsen
bb4952f557
Revert "Python: Disable failing integration tests"
...
This reverts commit 8c2455fc11 .
2024-04-09 14:00:25 +02:00
Paolo Tranquilli
7b2dc325ec
Merge pull request #16153 from github/redsun82/setup-swift-fix
...
CI: apply `setup-swift` workaround
2024-04-09 13:15:39 +02:00
Taus
29b843f772
Merge pull request #16158 from github/tausbn/python-disable-failing-integration-tests
...
Python: Disable failing integration tests
2024-04-09 13:12:48 +02:00
Taus
8c2455fc11
Python: Disable failing integration tests
...
These failures were likely caused by
https://github.com/github/codeql/pull/16127
My guess is that they can probably be deleted altogether, but as the
failures are blocking other development, I have opted to simply disable
them for the time being.
2024-04-09 10:49:30 +00:00
Tamás Vajk
239776ba21
Merge pull request #16124 from tamasvajk/buildless/nuget-feed-precheck
...
C#: Validate all nuget feeds to respond in reasonable time
2024-04-09 12:12:06 +02:00
Tom Hvitved
5f8eb7b138
Merge pull request #16110 from hvitved/dataflow/param-flow-no-expects-content
...
Data flow: Block flow at `expectsContents` nodes in `parameterValueFlow`
2024-04-09 11:26:24 +02:00
yoff
1048cf7c5e
Merge pull request #15711 from RasmusWL/tt-content
...
Python: Add type tracking for content
2024-04-09 10:37:43 +02:00
Michael Nebel
10d96ee02f
C#: Address review comments.
2024-04-09 10:31:48 +02:00
Tom Hvitved
e6984aa865
Ruby: Remove two redundant allowImplicitRead predicates
2024-04-09 10:10:25 +02:00
Tamas Vajk
80995ec1d7
Improve comments on environment variable names
2024-04-09 09:51:45 +02:00
Paolo Tranquilli
e3d676f91b
CI: apply tentative setup-swift fix
2024-04-09 09:37:21 +02:00
Erik Krogh Kristensen
44fba68015
Merge pull request #16128 from erik-krogh/java-info
...
Java: add link to the source variable in the alert-message for `java/implicit-cast-in-compound-assignment`
2024-04-09 08:55:09 +02:00
erik-krogh
8cb6598f50
fixing that I put a type on the wrong thing in the alert-message
2024-04-08 20:51:19 +02:00
Mathias Vorreiter Pedersen
e08790d21e
Merge pull request #16146 from MathiasVP/missing-destructor-for-parameter
...
C++: Add example with missing destructor call on parameter
2024-04-08 15:33:00 +01:00
Mathias Vorreiter Pedersen
b581a9ba04
C++: Add example with missing destructor calls on parameters passed by value.
2024-04-08 13:49:05 +01:00
Asger F
f08e8b1d5e
Merge pull request #16136 from asgerf/js/instance-to-subclasses
...
JS: Make getInstance() propagate to subclasses
2024-04-08 14:37:42 +02:00
Jeroen Ketema
ad1139d3af
Merge pull request #16116 from jketema/cpp-version-in-doc
...
C++: Update supported compiler versions based on frontend documentation
2024-04-08 14:09:40 +02:00
Michael Nebel
fc689efd1b
C#: Add debug version of the getFullyQualifiedName predicate.
2024-04-08 13:47:59 +02:00
Michael Nebel
8fbfafc1d7
C#: Dont cache the deprecated getFullyQualifiedName predicate.
2024-04-08 13:46:45 +02:00
Michael Nebel
b677e89f35
C#: Deprecate getFullyQualifiedNameWithTypes.
2024-04-08 13:46:45 +02:00
Michael Nebel
8fa9191434
C#: Deprecate the getFullyQualifiedName predicate.
2024-04-08 13:46:44 +02:00
Michael Nebel
2fb9c2db6f
C#: Remove deprecated qualifiedName predicates.
2024-04-08 13:46:44 +02:00
Tamas Vajk
d7f8b96158
Improve logging
2024-04-08 13:15:33 +02:00
Tamas Vajk
95896bc95f
Make sure diagnostic directory exists
2024-04-08 13:15:32 +02:00
Tamas Vajk
6a5520c85d
Add integration test for unreachable nuget feeds
2024-04-08 13:15:32 +02:00
Tamas Vajk
7051db5e1c
Fix code review findings
2024-04-08 13:15:32 +02:00
Tamas Vajk
9aa85f2d13
C#: Validate all nuget feeds to respond in reasonable time
2024-04-08 13:15:20 +02:00
Tom Hvitved
aa24c29395
Merge pull request #16122 from hvitved/ruby/cfg-may-raise-issue
...
Ruby: Fix CFG for nodes that may raise
2024-04-08 11:20:49 +02:00
Mathias Vorreiter Pedersen
b8e6632bf1
Merge pull request #16140 from MathiasVP/alias-model-for-fopen
...
C++: Add alias models for `fopen` and friends
2024-04-08 10:09:54 +01:00
Rasmus Wriedt Larsen
dfe2f1a52b
Merge pull request #16127 from RasmusWL/remove-dep-inst-fallback
...
Python: Extractor: Remove dependency installation fallback
2024-04-08 10:43:50 +02:00
Asger F
ad9838d0fe
JS: Add change note
2024-04-08 10:02:28 +02:00
Asger F
6e931000c2
JS: Rewrite docs for API::Node#getInstance()
2024-04-08 10:02:22 +02:00
Asger F
d829dd435f
JS: Update docs
2024-04-08 10:00:06 +02:00
erik-krogh
018b066b95
autoformat
2024-04-08 07:15:33 +02:00
erik-krogh
ca4f667053
add fallback if I can't easily determine the variable
2024-04-08 07:14:48 +02:00
erik-krogh
8b220cc1b3
also get the variable for array accesses
2024-04-08 07:14:48 +02:00
erik-krogh
795b767b6e
add link to the source variable in the alert-message for java/implicit-cast-in-compound-assignment
2024-04-08 07:14:48 +02:00
Mathias Vorreiter Pedersen
557555eb71
C++: Make Code Scanning happy.
2024-04-05 19:03:03 +01:00
Mathias Vorreiter Pedersen
777755a241
C++: Add alias models for 'fopen'.
2024-04-05 19:02:23 +01:00
Mathias Vorreiter Pedersen
2256c4c008
Merge pull request #15728 from MathiasVP/shared-typeflow-library
...
Java/Shared: Refactor `TypeFlow.qll` into a shared library
2024-04-05 16:24:17 +01:00
Mathias Vorreiter Pedersen
c85db2a026
Merge pull request #16137 from MathiasVP/swift-5.10-support-fix
...
Docs: Remove Swift version in footnote
2024-04-05 14:59:39 +01:00
Mathias Vorreiter Pedersen
d114d09d73
Docs: Remove Swift version in footnote.
2024-04-05 14:52:19 +01:00
Asger F
cd84fa4bee
JS: Make getInstance() propagate to subclasses
2024-04-05 15:12:02 +02:00
Mathias Vorreiter Pedersen
27688bf154
Shared: Rename 'joinStep' to 'joinStepNotNull' to prevent name clashes. Rename 'sccJoinStep' to 'sccJoinStepNotNull' to match the new name.
2024-04-05 13:25:29 +01:00
Mathias Vorreiter Pedersen
bae633ad24
Shared: Make 'erasedHaveIntersection' more identical to the Java version.
2024-04-05 13:19:21 +01:00
Mathias Vorreiter Pedersen
9deeb67af4
Update shared/typeflow/codeql/typeflow/internal/TypeFlowImpl.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-04-05 13:10:08 +01:00
Mathias Vorreiter Pedersen
ba347bdcf2
Merge pull request #16133 from MathiasVP/swift-5.10-support-docs
...
Docs: Mark Swift version 5.10 as supported
2024-04-05 13:07:09 +01:00
Mathias Vorreiter Pedersen
bffa262a2c
Shared: Make 'getAStrictAncestor' private.
2024-04-05 13:04:26 +01:00
Mathias Vorreiter Pedersen
96e205a4a6
Docs: Mark Swift 5.10 as supported.
2024-04-05 12:59:07 +01:00
Mathias Vorreiter Pedersen
a2c29fe094
Shared: nomagicify 'getASourceSupertype'.
2024-04-05 12:57:11 +01:00
Mathias Vorreiter Pedersen
3f6967829e
Update shared/typeflow/codeql/typeflow/internal/TypeFlowImpl.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-04-05 12:53:23 +01:00
Mathias Vorreiter Pedersen
1775bdee5f
Java: Remove redundant qualifiers.
2024-04-05 12:52:04 +01:00
Mathias Vorreiter Pedersen
26cf8df8d6
Update java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-04-05 12:50:26 +01:00
Mathias Vorreiter Pedersen
3f63d3a865
Update java/ql/lib/semmle/code/java/dataflow/TypeFlow.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-04-05 12:49:40 +01:00
Mathias Vorreiter Pedersen
1acbb84444
Shared/Java: Make the 'isNull' interface slightly prettier.
2024-04-05 11:58:43 +01:00
Pierre
e5b7957e4a
Merge pull request #16130 from github/sitedocs/2.17.0
...
Add changelog for 2.17.0
2024-04-05 12:46:45 +02:00
Taus
ef9f99b3be
Python: Remove unparse.py
2024-04-05 12:30:40 +02:00
Taus
599f573a4a
Python: Preserve comments and docstrings in extractor
2024-04-05 12:30:40 +02:00
Taus
752d28c1b9
Python: Update repinning instructions
...
This aligns us better with the corresponding instructions for
the Ruby extractor.
2024-04-05 12:30:40 +02:00
Taus
7bec41096c
Python: Rename tsg-build target to tsp-build
...
The latter makes more sense, as it's actually building
`tree-sitter-python`.
2024-04-05 12:30:40 +02:00
Pierre
268141822d
Merge branch 'main' into sitedocs/2.17.0
2024-04-05 09:39:18 +02:00
Pierre
9e49c5f185
Add changelogs for 2.16.6 (to this branch) and 2.17.0 (new)
2024-04-05 09:34:27 +02:00
Pierre
0604b4cc14
Changelog mergeback for versions prior to 2.17.0
2024-04-05 09:33:51 +02:00
Owen Mansel-Chan
e10333bf2b
Merge pull request #14919 from github/java/jdk-model-autogeneration
...
Java: add dataflow-generated models for JDK17
2024-04-04 21:12:55 +01:00
Owen Mansel-Chan
32ea94e625
Merge pull request #16123 from owen-mc/go/misc-trivial-fixes
...
Go: miscellaneous trivial fixes
2024-04-04 21:09:15 +01:00
Rasmus Wriedt Larsen
4faff83aa0
Python: Extractor: Remove dependency installation fallback
2024-04-04 16:49:55 +02:00
Asger F
b8b8e2b991
Merge pull request #16054 from asgerf/js/call-graph-improvement2
...
JS: more implied receiver steps
2024-04-04 15:54:06 +02:00
Erik Krogh Kristensen
0cfac605bd
Merge pull request #16100 from erik-krogh/fix-js-rb-typo
...
RB: fix language specifier typo in qhelp for rb/multi-char-san
2024-04-04 15:42:45 +02:00
Tamas Vajk
e42639852c
C#: Move nuget related DependencyManager methods to separate file
2024-04-04 14:25:09 +02:00
Tom Hvitved
ce3b359813
Ruby: Fix CFG for nodes that may raise
2024-04-04 13:27:29 +02:00
Tom Hvitved
6d2d9654b5
Ruby: Add CFG test
2024-04-04 13:27:29 +02:00
Owen Mansel-Chan
7fc5265168
Misc small tidy-ups mostly suggested by linter
2024-04-04 10:51:22 +01:00
Owen Mansel-Chan
68321dd9ec
Use nil for optional argument to packages.Visit
2024-04-04 10:51:13 +01:00
Owen Mansel-Chan
d9fe39d5ae
Extractor: add comment about tw.Package.TypesInfo.Defs
2024-04-04 10:37:31 +01:00
Owen Mansel-Chan
720961787b
Improve QLDoc for CaseClause
2024-04-04 10:37:25 +01:00
Jeroen Ketema
a8f27af6d8
Merge pull request #16119 from jketema/coroutine2
...
C++: Add more missing variable declaration tests
2024-04-04 11:35:52 +02:00
Jeroen Ketema
70491c4a8d
C++: Add more missing variable declaration tests
2024-04-04 10:54:09 +02:00
Tom Hvitved
c03b74545d
Merge pull request #16115 from hvitved/dataflow/fix-bad-join
...
Data flow: Fix bad join
2024-04-04 10:51:22 +02:00
Jeroen Ketema
55d1f43239
C++: Update supported compiler versions based on frontend documentation
2024-04-04 10:18:56 +02:00
Tom Hvitved
79440f6734
Data flow: Fix bad join
...
```
Evaluated relational algebra for predicate DataFlowImpl::Impl<PolynomialReDoSQuery::PolynomialReDoSFlow::C>::storeEx/5#34133ef9@0425e0m7 with tuple counts:
2209132 ~1% {6} r1 = SCAN `DataFlowImpl::Impl<PolynomialReDoSQuery::PolynomialReDoSFlow::C>::storeExUnrestricted/5#3a86a98e` OUTPUT In.1, In.0, In.1, In.2, In.3, In.4
4338565685 ~1% {6} | JOIN WITH `DataFlowPublic::ContentSet.getAReadContent/0#dispred#e4acf74e_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5
34811200 ~1428% {5} | JOIN WITH `project#DataFlowImpl::Impl<PolynomialReDoSQuery::PolynomialReDoSFlow::C>::readSetEx/3#35ac556a` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5
return r1
```
2024-04-04 10:02:02 +02:00
Tom Hvitved
c2f91a5ccf
Merge pull request #16104 from hvitved/csharp/more-compiler-generated
...
C#: Mark more expressions as compiler generated
2024-04-04 09:09:16 +02:00
Tom Hvitved
fc02938687
Merge pull request #16088 from hvitved/csharp/library-property-store
...
C#: Include all non-source-code properties in data flow
2024-04-04 09:04:00 +02:00
Tamás Vajk
7beb73729d
Merge pull request #16036 from tamasvajk/autobuilder/disposable
...
C#: Properly dispose diagnostic writer objects
2024-04-04 08:21:11 +02:00
Tom Hvitved
813f5b99e7
C#: Update PrintAST query
2024-04-03 20:03:02 +02:00
Tom Hvitved
d93d6585d9
C#: Mark more expressions as compiler generated
2024-04-03 20:03:02 +02:00
Erik Krogh Kristensen
35f61d9de4
Merge pull request #16107 from erik-krogh/fix-log-injection-typo
...
RB: Tiny fixes to log-injection QHelp
2024-04-03 18:29:37 +02:00
Tom Hvitved
2d4cf55c87
Merge pull request #15985 from hvitved/ruby/phi-barrier-guards
...
Ruby: Extend barrier guards to handle phi inputs
2024-04-03 15:22:39 +02:00
Tom Hvitved
7871fb8ce6
Data flow: Block flow at expectsContents nodes in parameterValueFlow
2024-04-03 15:19:34 +02:00
Tom Hvitved
137594cf36
Ruby: Add regression test
2024-04-03 15:19:34 +02:00
Owen Mansel-Chan
fe24710c96
Improve QLDoc of Entity.getDeclaration
2024-04-03 14:09:37 +01:00
Owen Mansel-Chan
c7f2e991ed
Improve QLDoc for TypeAssertExpr
...
Include information about the type assert `x.(type)` used in type switches.
2024-04-03 13:59:04 +01:00
Owen Mansel-Chan
698debfa20
Extractor: explicitly deal with extracting x.(type) in type switches
2024-04-03 13:58:58 +01:00
Tamás Vajk
9be2b9cbdb
Merge pull request #16108 from tamasvajk/cleanup/utils
...
C#: Remove unused classes from `Util` project
2024-04-03 14:24:58 +02:00
Tamás Vajk
362a109e04
Remove redundant implemented interface
...
Co-authored-by: Michael Nebel <michaelnebel@github.com >
2024-04-03 14:23:36 +02:00
Tom Hvitved
8b78463f25
Merge pull request #16087 from hvitved/dataflow/store-step-exploration
...
Data flow: Do not require stores to have matching reads in flow exploration
2024-04-03 14:10:28 +02:00
Tom Hvitved
550e251d68
Data flow: Do not require stores to have matching reads in flow exploration
2024-04-03 13:28:24 +02:00
Tamas Vajk
75894d581c
C#: Remove unused classes from Util project
2024-04-03 12:15:37 +02:00
Tom Hvitved
1dc13cc169
Merge pull request #15923 from hvitved/shared-xml-impl
...
Properly shared `XML.qll` implementation
2024-04-03 11:39:50 +02:00
Tom Hvitved
64e82bb00e
C#: Include all non-source-code properties in data flow
2024-04-03 10:22:36 +02:00
Tom Hvitved
cccb11f697
Merge pull request #16091 from hvitved/csharp/system-diagnostics-modules
...
C#: Neutralize some `System.Diagnostics` generated models
2024-04-03 10:21:56 +02:00
Tamas Vajk
fbec197d4a
Move TSP diagnostics related classes to separate files
2024-04-03 10:13:44 +02:00
Tamas Vajk
305fa84186
Change IDiagnosticsWriter to implement IDisposable
2024-04-03 10:08:46 +02:00
Tamas Vajk
0f980e2b97
C#: Properly dispose diagnostic writer objects
2024-04-03 09:47:24 +02:00
erik-krogh
ec32bdce63
fix unsanitized -> sanitized typo, and don't add a new variable just to remove newlines
2024-04-03 09:19:18 +02:00
Tamás Vajk
d7e514913f
Merge pull request #16039 from tamasvajk/fix/buildless-references
...
C#: Reword public mentions of C# buildless
2024-04-03 09:19:13 +02:00
Chuan-kai Lin
1f27eb3658
Merge pull request #16102 from github/post-release-prep/codeql-cli-2.17.0
...
Post-release preparation for codeql-cli-2.17.0
2024-04-02 11:47:23 -07:00
github-actions[bot]
19797fdd27
Post-release preparation for codeql-cli-2.17.0
2024-04-02 18:20:44 +00:00
Chuan-kai Lin
839ca60f90
Merge pull request #16099 from github/release-prep/2.17.0
...
Release preparation for version 2.17.0
2024-04-02 11:07:43 -07:00
erik-krogh
572d3ba542
fix language specifier typo in qhelp for rb/multi-char-san
2024-04-02 19:40:46 +02:00
github-actions[bot]
c511de2eae
Release preparation for version 2.17.0
2024-04-02 17:15:41 +00:00
Chuan-kai Lin
b87cf3c41a
Merge pull request #16098 from github/revert-16085-release-prep/2.17.0
...
Revert "Release preparation for version 2.17.0"
2024-04-02 10:11:15 -07:00
Chuan-kai Lin
6c649c898e
Revert "Release preparation for version 2.17.0"
2024-04-02 10:06:20 -07:00
Michael B. Gale
48f93438d8
Merge pull request #16096 from github/mbg/go/revert-auto-version-fixing
...
Go: Revert `go version` call in `LoadGoModules`
2024-04-02 16:01:45 +01:00
Geoffrey White
11acb499bb
Merge pull request #16042 from geoffw0/maddoc
...
Remove [potentially] untrue claims about models-as-data
2024-04-02 16:01:31 +01:00
Rasmus Wriedt Larsen
a22b9947c0
Python: Revert IterableSequenceNode as LocalSourceNode
...
When looking things over a bit more, we could actually exclude the steps
that would never be used instead. A much more involved solution, but
more performance oriented and clear in terms of what is supported (at
least until we start supporting type-tracking with more than depth 1
access-path, if that ever happens)
2024-04-02 16:51:00 +02:00
Michael B. Gale
55fa245194
Go: Revert go version call in LoadGoModules
2024-04-02 15:20:56 +01:00
Mathias Vorreiter Pedersen
0bf742b82d
Merge pull request #16089 from MathiasVP/fix-double-free-join
...
C++: Fix join order in 'cpp/double-free'.
2024-04-02 14:15:51 +01:00
Asger F
2feb00bb2e
Merge pull request #13303 from asgerf/js/use-server-and-client
...
JS: Move Directive subclasses into module and support "use client/server"
2024-04-02 15:13:45 +02:00
Michael Nebel
c378d6a661
Merge pull request #16027 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2024-04-02 14:08:09 +02:00
Tom Hvitved
368a500d93
C#: Neutralize some System.Diagnostics generated models
2024-04-02 13:58:55 +02:00
Felicity Chapman
75eee04f3e
Merge pull request #15890 from intrigus-lgtm/patch-9
...
[cpp-docs] Fix 404 link in guards library doc.
2024-04-02 12:49:03 +01:00
Rasmus Wriedt Larsen
8707a63edb
Python: Add comments around storeStepCommon
2024-04-02 13:26:26 +02:00
Rasmus Wriedt Larsen
20202aba90
Python: Deprecate AttributeName
2024-04-02 13:21:46 +02:00
Ian Lynagh
e610573411
Merge pull request #16078 from igfoo/igfoo/exprs_changes
...
Kotlin 2: Accept more changes
2024-04-02 12:19:17 +01:00
Ian Lynagh
e5999f76b0
Merge pull request #16079 from igfoo/igfoo/del
...
Kotlin 2: Accept some more location changes
2024-04-02 12:18:58 +01:00
Harry Maclean
409f46ef7b
Merge pull request #14308 from hmac/hmac-rb-csrf-not-enabled
...
Ruby: Add a query for CSRF protection not enabled
2024-04-02 11:30:36 +01:00
Jeroen Ketema
3c8c45872e
Merge pull request #16060 from jketema/qual-fix
...
C++: Output destructor calls for delete expressions
2024-04-02 11:49:51 +02:00
Henry Mercer
9409d7fdca
Merge pull request #16066 from github/henrymercer/ql-run-diagnostics
...
QL: Run diagnostics and summary metrics in code scanning
2024-04-02 10:45:50 +01:00
Mathias Vorreiter Pedersen
352e7de07d
C++: Accept test changes.
2024-04-02 10:43:10 +01:00
Jeroen Ketema
01183800a6
C++: Fix formatting
2024-04-02 11:38:19 +02:00
Jeroen Ketema
9190bf25ce
C++: Add example to QLDoc
2024-04-02 11:35:43 +02:00
Mathias Vorreiter Pedersen
bd0ddec630
C++: Fix join order in 'cpp/double-free'.
2024-04-02 09:59:53 +01:00
Jeroen Ketema
a5d4fad806
C++: Output destructor calls for delete expressions
2024-04-02 10:32:03 +02:00
Tom Hvitved
a8dac17aec
Merge pull request #16016 from hvitved/csharp/remove-lgtm-autobuilder-options
...
C#: Remove support for legacy LGTM options in autobuilder
2024-04-02 10:03:10 +02:00
Erik Krogh Kristensen
332c1e3b8a
Merge pull request #16026 from erik-krogh/htmlSafeSan
...
RB: Add barrier guard for `.html_safe?` to the XSS queries
2024-04-02 07:54:19 +02:00
Erik Krogh Kristensen
0fd89549da
Merge pull request #16033 from github/dependabot/cargo/ql/regex-1.10.4
...
Bump regex from 1.10.3 to 1.10.4 in /ql
2024-04-02 07:52:17 +02:00
Erik Krogh Kristensen
58bf0b709f
Merge pull request #16077 from github/dependabot/cargo/ql/chrono-0.4.37
...
Bump chrono from 0.4.35 to 0.4.37 in /ql
2024-04-02 07:51:49 +02:00
github-actions[bot]
55987d9c1f
Add changed framework coverage reports
2024-04-02 00:16:19 +00:00
Chuan-kai Lin
0bc9318400
Merge pull request #16086 from github/post-release-prep/codeql-cli-2.17.0
...
Post-release preparation for codeql-cli-2.17.0
2024-04-01 08:41:39 -07:00
github-actions[bot]
8e61c6625b
Post-release preparation for codeql-cli-2.17.0
2024-04-01 15:27:42 +00:00
Chuan-kai Lin
6475034b09
Merge pull request #16085 from github/release-prep/2.17.0
...
Release preparation for version 2.17.0
2024-04-01 06:53:52 -07:00
github-actions[bot]
ec97d9a304
Release preparation for version 2.17.0
2024-04-01 13:46:57 +00:00
Owen Mansel-Chan
fdafaa2ff4
Change note: update numbers of models added
2024-04-01 14:04:01 +01:00
Owen Mansel-Chan
e3fb40a842
Adjust change note
2024-04-01 14:03:53 +01:00
Owen Mansel-Chan
a5979e209a
Add change note
2024-04-01 14:03:47 +01:00
Owen Mansel-Chan
fa614df3f4
Tests fixed by model for CharBuffer.wrap(char[])
2024-04-01 14:03:42 +01:00
Owen Mansel-Chan
2d24fe011b
Accept that lots of sinks are now summaries as well
2024-04-01 14:03:36 +01:00
Owen Mansel-Chan
9067a337b0
Test fixed by model for BasicAttributes(String, Object)
2024-04-01 14:03:30 +01:00
Owen Mansel-Chan
776c9d9eb2
Accept changes to top jdk apis test
2024-04-01 14:03:23 +01:00
Owen Mansel-Chan
52e6ea30e7
Accept more capture summary models
...
This line is added because `FileOutputStream`'s constructor is now modeled as propagating taint, not just as a sink.
| p;PrivateFlowViaPublicInterface$SPI;true;openStream;();;Argument[this];ReturnValue;taint;df-generated |
2024-04-01 14:03:00 +01:00
Owen Mansel-Chan
919436efbb
Remove df-gen models we have deliberately modeled
...
Manual models always take precedence over generated models, so there is
no point in keeping the generated models.
These manual models were deliberately written to take precedence over
the corresponding df-gen models.
2024-04-01 13:59:36 +01:00
Jami
d889e3cf98
Merge pull request #14854 from jcogs33/jcogs33/unsafe-url-forward-promotion
...
Java: Promote Unsafe URL Forward query from experimental
2024-03-29 16:34:06 -04:00
Jami
2f8c4df309
docs wording updates
...
Co-authored-by: Ben Ahmady <32935794+subatoi@users.noreply.github.com >
2024-03-28 16:15:05 -04:00
James Fletcher
5b1cae5fc2
Merge pull request #16076 from github/jf205-patch-1
...
Make customizing-library-models-for-javascript.rst visible to search and the docs TOC
2024-03-28 17:05:32 +00:00
Calum Grant
ef2e2e4067
Merge pull request #16071 from github/calumgrant/cpp-analysis
...
Add C++ analysis in separate workflow
2024-03-28 17:53:53 +01:00
Ian Lynagh
3acdc73f22
Kotlin 2: Accept some more location changes
2024-03-28 16:15:37 +00:00
Ian Lynagh
568fba6940
Kotlin 2: Accept some more test changes
2024-03-28 15:28:36 +00:00
Ian Lynagh
0fdc71bf57
Kotlin 2: Accept a test change
...
For
if(r != null) {
val r2: Rectangle = r
in Kotlin 2 mode, there is no IMPLICIT_NOTNULL check in Kotlin 2 mode:
then: BLOCK type=kotlin.Unit origin=null
VAR name:r2 type:java.awt.Rectangle [val]
- TYPE_OP type=java.awt.Rectangle origin=IMPLICIT_NOTNULL typeOperand=java.awt.Rectangle
- GET_VAR 'val r: @[FlexibleNullability] java.awt.Rectangle? [val] declared in <root>.foo' type=@[FlexibleNullability] java.awt.Rectangle? origin=null
+ GET_VAR 'val r: @[FlexibleNullability] java.awt.Rectangle? [val] declared in <root>.foo' type=@[FlexibleNullability] java.awt.Rectangle? origin=null
VAR name:height type:kotlin.Int [val]
GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:height type:kotlin.Int visibility:public' type=kotlin.Int origin=null
receiver: GET_VAR 'val r2: java.awt.Rectangle [val] declared in <root>.foo' type=java.awt.Rectangle origin=null
2024-03-28 15:23:27 +00:00
Ian Lynagh
96723b1a8f
Kotlin 2: Accept some loc changes
2024-03-28 15:11:19 +00:00
Ian Lynagh
24c4c3e068
Kotlin 2: Accept a test change
...
With:
open class Root {}
class Subclass1: Root() {}
fun typeTests(x: Root, y: Subclass1) {
val y1: Subclass1 = if (x is Subclass1) { x } else { y }
}
we now get a slightly different AST, which means we no longer need to
insert a StmtExpr:
BRANCH
if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=<root>.Subclass1
GET_VAR 'x: <root>.Root declared in <root>.typeTests' type=<root>.Root origin=null
- then: TYPE_OP type=<root>.Subclass1 origin=IMPLICIT_CAST typeOperand=<root>.Subclass1
- BLOCK type=<root>.Root origin=null
+ then: BLOCK type=<root>.Subclass1 origin=null
+ TYPE_OP type=<root>.Subclass1 origin=IMPLICIT_CAST typeOperand=<root>.Subclass1
GET_VAR 'x: <root>.Root declared in <root>.typeTests' type=<root>.Root origin=null
2024-03-28 15:07:30 +00:00
Michael B. Gale
73f71d8ace
Merge pull request #15979 from github/mbg/go/deal-with-incorrect-versions
2024-03-28 14:16:14 +00:00
Michael B. Gale
f6c22d466f
Update toolchain_test.go
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2024-03-28 13:32:02 +00:00
Sid Shankar
aeacfb82c1
Merge pull request #16073 from hmac/ruby-re-add-mad-docs
...
Ruby: Re-add MaD docs
2024-03-28 09:18:04 -04:00
Paolo Tranquilli
2fa2a5a53c
Merge pull request #15984 from github/alexdenisov/swift-5.10
...
Swift: upgrade to 5.10
2024-03-28 13:58:39 +01:00
Michael B. Gale
977ac71b26
Update toolchain_test.go
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2024-03-28 11:15:30 +00:00
Ian Lynagh
5dcd635403
Merge pull request #15961 from igfoo/igfoo/MissingEnumInSwitch
...
Java: Limit the amount of results that MissingEnumInSwitch produces per switch
2024-03-28 11:13:45 +00:00
Paolo Tranquilli
a34bb2608d
Swift: fix ql format
2024-03-28 11:57:33 +01:00
Paolo Tranquilli
ece0d1f477
Swift: add upgrade/downgrade scripts
2024-03-28 11:54:18 +01:00
Paolo Tranquilli
bfce01cef6
Swift: add change note for Swift 5.10 upgrade
2024-03-28 11:38:39 +01:00
James Fletcher
d57e8efaf2
Update codeql-for-javascript.rst
2024-03-28 10:28:37 +00:00
Jeroen Ketema
3d8ac1441a
Merge pull request #16074 from jketema/reuse-val-cat
...
C++: Add value category column to the expr_reuse relation
2024-03-28 10:14:32 +01:00
dependabot[bot]
07f9614dc2
Bump chrono from 0.4.35 to 0.4.37 in /ql
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.35 to 0.4.37.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.35...v0.4.37 )
---
updated-dependencies:
- dependency-name: chrono
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-28 03:07:21 +00:00
Jeroen Ketema
9eb51a9b9e
C++: Add value category column to the expr_reuse relation
2024-03-27 22:49:40 +01:00
Jeroen Ketema
9e47909208
Merge pull request #16065 from geoffw0/codeowners
...
C++: Divide CODEOWNERS responsibilities.
2024-03-27 22:22:15 +01:00
Harry Maclean
3690f294da
Ruby: add MaD doc to TOC tree
2024-03-27 21:02:25 +00:00
Ian Lynagh
b6a1266ade
Java: Accept test changes for MissingEnumInSwitch Oxford commas
2024-03-27 18:48:22 +00:00
Harry Maclean
ce0edcc265
Ruby: Make MaD doc visible to search
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2024-03-27 17:29:18 +00:00
James Fletcher
04edd6ec69
Update docs/codeql/codeql-language-guides/codeql-for-javascript.rst
2024-03-27 17:08:47 +00:00
James Fletcher
121fed63a0
Update codeql-for-javascript.rst
2024-03-27 17:06:31 +00:00
James Fletcher
fbc0f57280
Update customizing-library-models-for-javascript.rst
2024-03-27 16:58:11 +00:00
Paolo Tranquilli
e9957aa4a6
Swift: make result a child in ThenStmt
2024-03-27 17:53:36 +01:00
Harry Maclean
f6e2e1319b
Ruby: Link to MaD docs from Ruby doc page
...
Also remove an internal link from the docs.
2024-03-27 15:30:05 +00:00
Harry Maclean
e6ba0a34f4
Revert "Ruby: remove customizing-library-models-for-ruby.rst"
...
This reverts commit 5b46256fdb .
2024-03-27 15:24:30 +00:00
Michael B. Gale
45b41bb506
Go: Mirror stdout/stderr output in InstallVersion
2024-03-27 15:18:24 +00:00
Michael B. Gale
6b1d1d427c
Go: Add integration test for incorrect version format logic
2024-03-27 15:16:32 +00:00
Michael B. Gale
6ea99825be
Go: Add unit test to sanity check HasGoVersion
2024-03-27 15:15:40 +00:00
Michael B. Gale
ab255d70b5
Go: Fix semver-related logic bugs
2024-03-27 15:15:20 +00:00
Ian Lynagh
fda3c92612
Java: Add a changenote for the MissingEnumInSwitch change
2024-03-27 15:12:55 +00:00
Ian Lynagh
59ae6dd5f5
Java: Add a couple of Oxford commas
2024-03-27 15:07:58 +00:00
Michael B. Gale
86bf4fbbc0
Go: Make diagnostic names static
2024-03-27 14:22:58 +00:00
Jami Cogswell
40c932a5f9
Java: move UrlForward.qll code to UrlForwardQuery.qll
2024-03-27 10:12:28 -04:00
Max Schaefer
5b07e14fb3
Merge pull request #16055 from github/max-schaefer/go-open-redirect-qhelp
...
Go: Improve QHelp for `go/unvalidated-url-redirection`.
2024-03-27 13:56:48 +00:00
Paolo Tranquilli
0243d9f2b9
Swift: accept explicit any in existential type name
2024-03-27 13:49:15 +01:00
Jami Cogswell
2391fe7d89
Java: use InlineFlowTest instead of InlineExpectationsTest
2024-03-27 08:44:17 -04:00
Paolo Tranquilli
d9c40488bb
Swift: add ThenStmt to control flow
2024-03-27 13:37:24 +01:00
Paolo Tranquilli
b8e38288e3
Swift: add extraction of ThenStmt
...
These are currently added implicitly by the compiler in the context of
`if`/`switch` expressions. In the future, there might be explicit
`then <expr>` statement useful for cases where one would like to add
more than one statement in the branch, to mark what value to actually
use.
See https://forums.swift.org/t/pitch-multi-statement-if-switch-do-expressions/68443
2024-03-27 13:26:04 +01:00
Max Schaefer
32ebd4eebb
Automodel: Filter unexploitable types in application mode.
...
We already did this in framework mode.
2024-03-27 12:22:24 +00:00
Arthur Baars
ba89f1b6b1
Merge pull request #15896 from github/aibaars/java-update-output
...
Java: update expected output
2024-03-27 13:19:52 +01:00
Jami Cogswell
121b24ea7c
Java: remove parentheses
2024-03-27 08:16:06 -04:00
Owen Mansel-Chan
311512c768
Remove df-gen models for incidentally modelled APIs
...
Manual models always take precedence over generated models, so there is
no point in keeping the generated models.
These APIs happened to have been modelled between model generation and
merging this PR.
2024-03-27 12:15:08 +00:00
Owen Mansel-Chan
f03a56f7e0
Run generation script
...
The command line was:
python3 /Users/owen-mc/workspace/codeql-home/codeql/java/ql/src/utils/modelgenerator/GenerateFlowModel.py /Users/owen-mc/db/java/openjdk17 --with-summaries --with-neutrals
2024-03-27 12:15:00 +00:00
Jami Cogswell
35fbc95cc7
Java: remove redundant line
2024-03-27 08:09:40 -04:00
Mathias Vorreiter Pedersen
7bb2b57394
Merge pull request #15964 from rdmarsh2/rdmarsh2/cpp/temp-destructors-extended
...
C++: IR translation for destruction of temporaries with extended lifetimes
2024-03-27 11:58:48 +00:00
Calum Grant
03bf804a68
Add C++ analysis in separate workflow
2024-03-27 11:44:58 +00:00
Mathias Vorreiter Pedersen
8711232a38
Merge pull request #16069 from jketema/var-templ
...
C++: Add `VariableTemplateInstantiation` class
2024-03-27 11:31:35 +00:00
Paolo Tranquilli
2382f76317
Swift: ignore experimental ThenStmt
2024-03-27 12:23:37 +01:00
Paolo Tranquilli
f9d10cec08
Swift: fix DeclTranslator.cpp compile errors
2024-03-27 12:21:28 +01:00
Ian Lynagh
6cd94cf253
Merge pull request #16059 from igfoo/igfoo/exprs
...
Kotlin 2: Accept more location changes
2024-03-27 11:17:07 +00:00
Jeroen Ketema
050682c477
C++: Update expected test results
2024-03-27 12:03:37 +01:00
Paolo Tranquilli
8e9b4336da
Merge branch 'main' into alexdenisov/swift-5.10
2024-03-27 11:35:14 +01:00
Jeroen Ketema
27c6e2421c
C++: Add VariableTemplateInstantiation class
...
This adds some uniformity, as we already had `FunctionTemplateInstantiation` and
`ClassTemplateInstantiation` classes.
2024-03-27 11:35:13 +01:00
Tony Torralba
b617667b0e
Merge pull request #16062 from atorralba/atorralba/java/more-neutrals
...
Java: Add more neutrals and improve `java.net.URL` models
2024-03-27 10:41:38 +01:00
Geoffrey White
30c9ec1926
C++: Adjust following discussion.
2024-03-27 09:23:48 +00:00
Tony Torralba
7a0446740b
Update java/ql/lib/ext/java.net.model.yml
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2024-03-27 09:09:48 +01:00
Henry Mercer
568442d5f8
QL: Run diagnostics and summary metrics in code scanning
...
Add diagnostics and summary metric queries to the code scanning suite.
2024-03-26 18:11:50 +00:00
Arthur Baars
497325455a
Java: update expected output
2024-03-26 18:40:22 +01:00
Geoffrey White
b4a6f75ad7
C++: Divide CODEOWNERS responsibilities.
2024-03-26 17:35:07 +00:00
Mathias Vorreiter Pedersen
3e9602854a
Merge pull request #16063 from MathiasVP/taint-inheriting-content-for-cpp
...
C++: Add `TaintInheritingContent`
2024-03-26 17:28:52 +00:00
Mathias Vorreiter Pedersen
3bfaab9182
C++: Remove debugging conjunct.
2024-03-26 17:01:06 +00:00
Mathias Vorreiter Pedersen
6a8c592900
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/FlowSteps.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2024-03-26 16:59:18 +00:00
Mathias Vorreiter Pedersen
d610d721a4
C++: Add file QLDoc.
2024-03-26 16:47:39 +00:00
Mathias Vorreiter Pedersen
e3744c435a
C++: Add change note.
2024-03-26 16:44:16 +00:00
Mathias Vorreiter Pedersen
ec3d041c8d
C++: Accept test changes.
2024-03-26 16:40:18 +00:00
Mathias Vorreiter Pedersen
bd2ecd3346
C++: Add test.
2024-03-26 16:38:28 +00:00
Mathias Vorreiter Pedersen
2075716df7
C++: Add 'TaintInheritingContent'.
2024-03-26 16:37:22 +00:00
Tony Torralba
d786ea90a4
Java: Add more neutrals
...
Adds more neutral models to help the model generator ignore certain callables.
Also improves the precision of certain URL models by using synthetic fields so that the parts of a URL are tainted separately.
2024-03-26 17:31:11 +01:00
Henry Mercer
2de62dfcdd
Merge pull request #16058 from github/henrymercer/merge-back-rc-3.13
...
Merge `rc/3.13` back to `main`
2024-03-26 14:57:31 +00:00
Ian Lynagh
c5604c97bd
Kotlin 2: Accept more location changes
2024-03-26 14:10:28 +00:00
Henry Mercer
0646744928
Merge branch 'main' into henrymercer/merge-back-rc-3.13
2024-03-26 12:59:12 +00:00
Michael B. Gale
cf9e2dcea1
Merge pull request #16056 from github/mbg/go/changenote-for-dependency-improvement
...
Go: Add changenote for `CODEQL_EXTRACTOR_GO_FAST_PACKAGE_INFO` change
2024-03-26 12:50:19 +00:00
Henry Mercer
f89109df7c
Merge pull request #16048 from github/post-release-prep/codeql-cli-2.16.6
...
Post-release preparation for codeql-cli-2.16.6
2024-03-26 12:23:11 +00:00
Max Schaefer
d7258f76d3
Go: Improve QHelp for go/unvalidated-url-redirection.
...
The example showed a different (and better) fix from what the help claimed, but the suggestion also had a subtle bug that I fixed at the same time.
2024-03-26 10:57:36 +00:00
Michael B. Gale
f84609dbc4
Go: Add changenote for CODEQL_EXTRACTOR_GO_FAST_PACKAGE_INFO change
2024-03-26 10:51:57 +00:00
Tamás Vajk
0c5ea975a4
Merge pull request #16021 from tamasvajk/feature/add-buildless-telemetry
...
C#: Add high level diagnostic messages for buildless extraction (star…
2024-03-26 11:03:20 +01:00
Asger F
22b56a4a40
JS: More implied receiver steps
2024-03-26 10:23:08 +01:00
Asger F
f2939bd05b
JS: Add test case
2024-03-26 10:23:08 +01:00
Asger F
f8641dd82d
JS: Fix use of deprecated alias
2024-03-26 09:39:39 +01:00
Asger F
a0b49b23f5
JS: Add UseServer and UseClient directives
2024-03-26 09:39:39 +01:00
Asger F
1d22e65851
JS: Move Directive subclasses into Directive module
2024-03-26 09:39:37 +01:00
Dave Bartolomeo
a950de36a0
Merge pull request #16050 from github/dbartol/more-test-fixes
...
Remove unused data extension in test
2024-03-25 20:50:09 -04:00
Dave Bartolomeo
c11b8f9d51
Remove unused data extension in test
2024-03-25 19:14:54 -04:00
Max Schaefer
ff23f572d0
Merge pull request #16038 from github/max-schaefer/string-break-qhelp
...
Go: Improve QHelp for `go/unsafe-quoting`.
2024-03-25 20:10:02 +00:00
Max Schaefer
5bc710b406
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2024-03-25 19:48:56 +00:00
Dave Bartolomeo
98bf5269a0
Merge pull request #16040 from github/dbartol/qltest-model
...
Use correct model pack name in qltest data extension
2024-03-25 15:29:16 -04:00
Chris Smowton
f5ebd3d501
Merge pull request #16047 from github/smowton/admin/update-java-supported-version
...
Update Java version supported to 22
2024-03-25 18:42:35 +00:00
github-actions[bot]
f67b5f9158
Post-release preparation for codeql-cli-2.16.6
2024-03-25 18:17:15 +00:00
Chris Smowton
757b9bb5fa
Update Java version supported to 22
2024-03-25 18:01:30 +00:00
Chris Smowton
6fc99e3ad6
Merge pull request #16023 from smowton/smowton/feature/jdk22-support
...
Java: support Java 22 language features
2024-03-25 17:58:50 +00:00
Henry Mercer
3d82318839
Merge pull request #16045 from github/release-prep/2.16.6
...
Release preparation for version 2.16.6
2024-03-25 16:59:13 +00:00
github-actions[bot]
71ab804274
Release preparation for version 2.16.6
2024-03-25 16:58:08 +00:00
Chris Smowton
dcebcc35b6
Rename getPatternAtIndex
2024-03-25 16:36:38 +00:00
Chris Smowton
568bddc4a9
Add test cases for cases falling directly out of switch blocks
2024-03-25 16:31:40 +00:00
Chris Smowton
17193ac11b
Distinguish record patterns that do or don't declare identifiers
2024-03-25 16:31:40 +00:00
Chris Smowton
a4401963f5
Use getAPattern
2024-03-25 16:31:39 +00:00
Chris Smowton
f347784ec2
autoformat
2024-03-25 16:31:39 +00:00
Chris Smowton
3d9bc6fc89
Note pattern-cases may be missing some type-accesses
2024-03-25 16:31:39 +00:00
Chris Smowton
5e0961b348
Account for new possible child index gap
2024-03-25 16:31:39 +00:00
Chris Smowton
9fa2f19990
Add test for guards in the presence of fall-through between pattern and constant cases
2024-03-25 16:31:39 +00:00
Chris Smowton
c48e64e536
Add tests for the combination of anonymous labels and a guard
2024-03-25 16:31:39 +00:00
Chris Smowton
1e0766dffa
Add tests for case statement type test dominance against anonymous labels and fall-through
2024-03-25 16:31:39 +00:00
Chris Smowton
f2ff6c476a
Add printast tests for anonymous variables
2024-03-25 16:31:38 +00:00
Chris Smowton
5cb5ee026c
Fix pretty-printing of anonymous vars and multiple patterns; add test
2024-03-25 16:31:38 +00:00
Chris Smowton
f317f782ae
Add test for control-flow with mixed patterns, constants and fall-through
2024-03-25 16:31:38 +00:00
Chris Smowton
6cf956d07a
Add CFG test for anonymous variables and fall-throughs with pattern cases
2024-03-25 16:31:38 +00:00
Chris Smowton
cc8dcf63b0
Convert test to use an anonymous local
2024-03-25 16:31:38 +00:00
Chris Smowton
ee36e3b72b
autoformat
2024-03-25 16:31:38 +00:00
Chris Smowton
403e86878c
Don't mistake a rule case for a fall-through edge
2024-03-25 16:31:37 +00:00
Chris Smowton
5243a62a41
Accept test changes
2024-03-25 16:31:37 +00:00
Chris Smowton
c0874ab04b
Fix pattern-case variable pretty-printer
2024-03-25 16:31:37 +00:00
Chris Smowton
f66811048d
Fix next-normal-statement predicate
2024-03-25 16:31:37 +00:00
Chris Smowton
bc0724e2b3
Add change note
2024-03-25 16:31:37 +00:00
Chris Smowton
d5443b3f10
Remove dead code
2024-03-25 16:31:37 +00:00
Chris Smowton
29e93edf90
Dataflow: restrict pattern-case flow to unique patterns.
2024-03-25 16:31:37 +00:00
Chris Smowton
00c7dd5f92
Fix a stray use of getPattern
2024-03-25 16:31:36 +00:00
Chris Smowton
e59487a324
Don't regard cases with multiple patterns as conducting a type test
2024-03-25 16:31:36 +00:00
Chris Smowton
c7cb885e71
Add missing javadoc and getUniquePattern predicate
2024-03-25 16:31:36 +00:00
Chris Smowton
f44becea7f
Implement multiple pattern case and fall-through pattern case support
2024-03-25 16:31:36 +00:00
Chris Smowton
c283894b4b
Fix typo
2024-03-25 16:31:36 +00:00
Chris Smowton
33b807f3bb
Parameters and local variables: add isAnonymous predicate
2024-03-25 16:31:36 +00:00
Geoffrey White
b2a301c206
Swift: Remove claims about 'Annotated'.
2024-03-25 15:45:37 +00:00
Geoffrey White
4a4c77e81d
Remove claims about models-as-data that require you to select a parameter from non-Java languages. We believe this is only possible in Java.
2024-03-25 15:41:00 +00:00
Edward Minnix III
7377cbb46e
Merge pull request #15930 from egregius313/egregius313/csharp/mad/database/dapper-sources
...
C#: Sources for the `Dapper` database library
2024-03-25 11:21:51 -04:00
Rasmus Wriedt Larsen
d516db6abc
Merge pull request #15903 from yoff/python/test-MaD-keyword-argument
...
Python: test MaD syntax for keyword argument
2024-03-25 15:51:49 +01:00
Dave Bartolomeo
d805bbcd27
Use correct model pack name in qltest data extension
2024-03-25 10:31:11 -04:00
Tamas Vajk
78912d5eea
C#: Reword public mentions of C# buildless
2024-03-25 14:33:51 +01:00
Max Schaefer
120fb93c23
Go: Improve QHelp for go/unsafe-quoting.
2024-03-25 13:32:51 +00:00
Paolo Tranquilli
dea922958b
Merge pull request #16034 from github/redsun82/swift-move-integration-tests-to-internal
...
Swift: prepare integration tests for internal running
2024-03-25 14:08:47 +01:00
Paolo Tranquilli
9c9f4b956e
Swift: fix db in diagnostics_test_utils.py
2024-03-25 13:53:27 +01:00
Tamas Vajk
2f0b54c801
Refactor buildless telemetry logging
2024-03-25 12:48:27 +01:00
Ian Lynagh
55226c48a6
Merge pull request #16022 from igfoo/igfoo/k2_exprs
...
Kotlin 2: Accept more location changes
2024-03-25 11:38:15 +00:00
Tamas Vajk
b94d33d78d
Add buildless failed diagnostic
2024-03-25 12:27:36 +01:00
Paolo Tranquilli
7f53509022
Merge branch 'main' into redsun82/swift-move-integration-tests-to-internal
2024-03-25 12:22:00 +01:00
Paolo Tranquilli
6707fc3a7c
Swift: remove wrong flag in runner.py
2024-03-25 12:20:13 +01:00
Paolo Tranquilli
148033e020
Swift: fix assertion diagnostics test
2024-03-25 12:05:22 +01:00
Tamas Vajk
5ab5244171
Change public messages to not include 'buildless'
2024-03-25 11:59:29 +01:00
Chris Smowton
10afb1cd93
Merge pull request #16030 from smowton/smowton/admin/buildless-wording-update
...
Java: Update buildless test expectations
2024-03-25 10:57:56 +00:00
Paolo Tranquilli
ca5d85c57e
Merge branch 'main' into redsun82/swift-move-integration-tests-to-internal
2024-03-25 11:56:48 +01:00
Paolo Tranquilli
0fa40af131
Swift: fix last references to old integration test location
2024-03-25 11:49:19 +01:00
Max Schaefer
ffbe3e6ed4
Merge pull request #16020 from github/max-schaefer/go-path-injection-qhelp
...
Go: Update query help for `go/path-injection` to include example fixes.
2024-03-25 10:25:36 +00:00
Owen Mansel-Chan
f2db9ce312
Merge pull request #16028 from owen-mc/java/sensitive-log-whitelist-tokenimage
...
Java: whitelist variable name `tokenImage` for `java/sensitive-log` as it's used in code generated by JavaCC
2024-03-25 10:02:19 +00:00
Paolo Tranquilli
5a771ad2cf
Swift: bump python version
2024-03-25 10:42:16 +01:00
Tamás Vajk
d6374f65e4
Merge pull request #15957 from tamasvajk/feature/limit-message-extraction
...
C#: Limit extracted compilation and extraction messages
2024-03-25 10:30:10 +01:00
Paolo Tranquilli
762b4ce42e
Swift: prepare integration tests for internal running
...
This harmonizes Swift integration tests with the rest of the repository,
to prepare for the internal integration test runner to run them. The
stripped down runner is kept compatible, so that current CI can still
use it now. Maybe it will be kept for developer use.
This PR includes:
* moving the integration tests inside `ql`
* editing `qlpack.yml` so that the internal runner can use it
* change database directory to be `test-db` rather than `db`
2024-03-25 10:17:55 +01:00
dependabot[bot]
0c73340e47
Bump regex from 1.10.3 to 1.10.4 in /ql
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.10.3 to 1.10.4.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.10.3...1.10.4 )
---
updated-dependencies:
- dependency-name: regex
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-25 03:31:03 +00:00
Owen Mansel-Chan
ac6c4add14
Apply suggestions from code review
...
Co-authored-by: Chris Smowton <smowton@github.com >
2024-03-24 20:20:37 +00:00
Chris Smowton
d8686e02a8
Update test expectations
2024-03-24 17:57:27 +00:00
Owen Mansel-Chan
821f399193
Add change note
2024-03-23 23:51:52 +00:00
Owen Mansel-Chan
f4b3bae88b
Add test for ParseException use of tokenImage
2024-03-23 23:48:16 +00:00
Owen Mansel-Chan
4832dc51ed
Whitelist variable name tokenImage
2024-03-23 21:33:02 +00:00
Owen Mansel-Chan
63a04c056a
Add test with tokenImage as used in JavaCC
2024-03-23 21:30:33 +00:00
erik-krogh
051120e958
add qldoc for ReflectedXssSanitizers
2024-03-22 17:58:25 +01:00
erik-krogh
c60cec36d4
add calls to .html_safe? as a shared XSS sanitizer
2024-03-22 17:46:39 +01:00
Aditya Sharad
1a8932bc28
Merge pull request #16024 from github/changedocs/2.16.5
...
Update CodeQL CLI to version 2.16.5
2024-03-22 09:32:52 -07:00
Erik Krogh Kristensen
45ce988943
Merge pull request #16002 from erik-krogh/tarBlank
...
JS: change the precision of the `js/unsafe-external-link` query to `low`
2024-03-22 17:12:58 +01:00
Florin Coada
c653f1ce8c
Add CodeQL 2.16.5 changelog
2024-03-22 15:28:54 +00:00
Max Schaefer
034ed17227
Apply suggestions from code review
...
Co-authored-by: Ben Ahmady <32935794+subatoi@users.noreply.github.com >
2024-03-22 15:24:29 +00:00
Jeroen Ketema
d9b0a5918c
Merge pull request #16018 from jketema/tls-precision
...
C++: Add precision to `cpp/boost/tls-settings-misconfiguration` and `cpp/boost/use-of-deprecated-hardcoded-security-protocol`
2024-03-22 16:17:34 +01:00
Jeroen Ketema
453cdfa513
C++: Add change note
2024-03-22 15:52:52 +01:00
Ian Lynagh
63e34c4dec
Kotlin 2: Accept more location changes
2024-03-22 14:09:20 +00:00
Edward Minnix III
1785086ccb
Merge pull request #15784 from egregius313/egregius313/csharp/dataflow/sources/file
...
C#: Add source models for `file` threat model/source kind for .NET standard library
2024-03-22 09:50:30 -04:00
Michael Nebel
a07ee8e961
C#: Update the AsList model to a value flow model.
2024-03-22 14:40:25 +01:00
Tamas Vajk
178a45af25
C#: Add high level diagnostic messages for buildless extraction (start, success)
2024-03-22 14:27:36 +01:00
Max Schaefer
bc9396e0e6
Address suggestions from review.
2024-03-22 13:19:36 +00:00
Michael B. Gale
f48e295f4a
Merge pull request #16019 from p-/p--weak-enc-ecb-qhelp
...
C#: add hint regarding ECB to weak encryption QHelp
2024-03-22 13:09:08 +00:00
Michael Nebel
ca72b0583d
C#: Update source and sink expected test output.
2024-03-22 13:59:47 +01:00
Erik Krogh Kristensen
7d968184fd
improve the change-note
...
Co-authored-by: Asger F <asgerf@github.com >
2024-03-22 13:58:34 +01:00
Ed Minnix
4b13ad1310
Fix flow summary tests
2024-03-22 13:46:20 +01:00
Ed Minnix
9ed8ca27a1
Fix test and model
2024-03-22 13:46:19 +01:00
Ed Minnix
1f04229def
Fix typo
2024-03-22 13:46:19 +01:00
Ed Minnix
73b4e8fe6a
Add WithElement identifier to AsList method
2024-03-22 13:46:19 +01:00
Ed Minnix
9b23bfa038
Execute methods which return objects
...
The `Execute` method returns `int` for "number of rows affected". But
some of the other `Execute*` methods return objects.
2024-03-22 13:46:19 +01:00
Ed Minnix
5885938eaf
Use wildcard signatures for Query methods
2024-03-22 13:46:19 +01:00
Ed Minnix
8223781978
Fix FlowSummaries tests
2024-03-22 13:46:19 +01:00
Ed Minnix
5ca6b40c34
Change note
2024-03-22 13:46:18 +01:00
Ed Minnix
23aeb1d878
Add tests
2024-03-22 13:46:18 +01:00
Ed Minnix
98285b5171
Add AsList summary
2024-03-22 13:46:18 +01:00
Ed Minnix
87ad170067
Dapper source models
2024-03-22 13:46:18 +01:00
Ian Lynagh
01475fd8ba
Merge pull request #16011 from igfoo/igfoo/legacy_vars
...
Java/Kotlin: Remove references to legacy ODASA_SNAPSHOT env var
2024-03-22 12:38:37 +00:00
Max Schaefer
4e4cd52f63
Go: Update query help for go/path-injection to include example fixes.
2024-03-22 11:45:59 +00:00
Peter Stöckli
d62d68a40b
C#: add hint regarding ECB to weak encryption QHelp
2024-03-22 12:08:30 +01:00
Rasmus Wriedt Larsen
69f6e1e263
Merge pull request #16010 from RasmusWL/perf
...
Python: Two small join-order fixes
2024-03-22 11:36:17 +01:00
Jeroen Ketema
adfb3c3d50
C++: Simplify cpp/boost/tls-settings-misconfiguration
2024-03-22 11:22:11 +01:00
yoff
c520cb6d58
Merge branch 'main' into python/test-MaD-keyword-argument
2024-03-22 10:56:08 +01:00
Rasmus Lerchedahl Petersen
eef60c9ad2
python: add test for "ReturnValue.TupleElement[0,1]"
...
also synchronise files
2024-03-22 10:54:12 +01:00
Jeroen Ketema
fb4ed39d89
Merge pull request #16017 from jketema/destructors21
...
C++: Add destructor test cases for AV Rule 114
2024-03-22 10:50:27 +01:00
Jeroen Ketema
a770bddff0
C++: Add precision to cpp/boost/tls-settings-misconfiguration and cpp/boost/use-of-deprecated-hardcoded-security-protocol
...
Also clean up the names of the queries while here.
2024-03-22 10:48:18 +01:00
Jeroen Ketema
3f0ce98ccb
C++: Add destructor test cases for AV Rule 114
2024-03-22 10:25:47 +01:00
Tom Hvitved
9d124197e8
C#: Remove support for legacy LGTM options in autobuilder
2024-03-22 10:09:24 +01:00
Tamas Vajk
205d6a3bc5
Extract total number of diagnostic per ID and compilation
2024-03-22 08:55:41 +01:00
Tamas Vajk
fa7f437e71
Code quality improvement
2024-03-22 08:16:11 +01:00
Jeroen Ketema
eca6c00003
Merge pull request #16014 from jketema/destructors20
...
C++: Handle destructors of range-based for-loop, if, and switch initializer statements
2024-03-21 21:04:23 +01:00
Ed Minnix
c7a746e3dc
Flow summary tests
2024-03-21 13:15:45 -04:00
Ed Minnix
3e3eceea5f
Typo
2024-03-21 13:06:34 -04:00
Ed Minnix
e2c2d574f8
Add FileInfo::OpenText
2024-03-21 13:06:33 -04:00
Ed Minnix
46a9bb9804
Change note
2024-03-21 13:06:31 -04:00
Ed Minnix
08611f0c9c
Fix flow summary tests
2024-03-21 13:06:30 -04:00
Ed Minnix
e14e47cd73
Fix Stream::Read(Span<byte>) model
2024-03-21 13:06:28 -04:00
Ed Minnix
d6f085373e
System.IO.Stream::ReadExactly models
2024-03-21 13:06:27 -04:00
Ed Minnix
2a73677fd2
Missing Stream::ReadAsync overload
2024-03-21 13:06:26 -04:00
Ed Minnix
a698684fec
System.IO.Stream::ReadAtLeast
2024-03-21 13:06:24 -04:00
Ed Minnix
3e29a8d2a1
System.IO files test
2024-03-21 13:06:23 -04:00
Ed Minnix
d387e6d068
Fix flow-summary tests
2024-03-21 13:06:21 -04:00
Ed Minnix
9232fafde1
Add System.IO.Stream::Read(Span<Byte>) model
2024-03-21 13:06:20 -04:00
Ed Minnix
a8c5e4e0f2
FileInfo source models
2024-03-21 13:06:18 -04:00
Ed Minnix
bb9b0eabf2
Add BufferedStream summary models
2024-03-21 13:06:17 -04:00
Ed Minnix
a5b801b31f
Add File reading methods
2024-03-21 13:06:15 -04:00
Arthur Baars
c219b1a3c7
Merge pull request #16013 from github/rc/3.13
...
Merge rc/3.13 into main
2024-03-21 16:04:58 +01:00
Rasmus Wriedt Larsen
93f940aa9c
Python: Join-order improvement for DataFlowDispatch::TrackAttrReadInput
...
I was surprised to see that this predicate actually gets evaluated 3 times
- Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@c15596yu was evaluated in 74 iterations totaling 165ms (delta sizes total: 113119).
- Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@3459ejws was evaluated in 30 iterations totaling 76ms (delta sizes total: 32555).
- Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@5ac22jwq was evaluated in 30 iterations totaling 108ms (delta sizes total: 32555).
It does however fit with it being used in exactly 3 places: https://github.com/search?q=repo%3Agithub%2Fcodeql+%2FattrReadTracker%5C%28%2F&type=code -- so I assume it's because each use forces a new evaluation. Although that's something we could look into solving, for now I'm just trying to fix the join-order.
Initial
```
Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@3459ejws was evaluated in 30 iterations totaling 76ms (delta sizes total: 32555).
7068090 ~0% {2} r1 = SCAN Attributes::AttrRead#class#f6c3f431 OUTPUT In.0, In.0
{2} | AND NOT `DataFlowDispatch::TrackAttrReadInput::start/2#67f26627#prev`(FIRST 2)
3901178 ~5% {2} | SCAN OUTPUT In.1, In.1
3901178 ~0% {3} | JOIN WITH `Attributes::AttrRef.getObject/0#dispred#d7cd0a97` ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1
13615 ~1% {2} r2 = JOIN r1 WITH `DataFlowDispatch::classTracker/1#d11f2237#reorder_1_0#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
94 ~2% {2} r3 = JOIN r1 WITH `DataFlowDispatch::superCallTwoArgumentTracker/2#d18be99f#reorder_2_0_1#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
18846 ~1% {2} r4 = JOIN r1 WITH `DataFlowDispatch::classInstanceTracker/1#d73ecef4#prev_delta_1#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
32555 ~1% {2} r5 = r2 UNION r3 UNION r4
return r5
```
==>
```
Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@f2517jwq was evaluated in 30 iterations totaling 12ms (delta sizes total: 32704).
186719 ~121% {1} r1 = SCAN `DataFlowDispatch::classInstanceTracker/1#d73ecef4#prev_delta` OUTPUT In.1
164342 ~158% {1} r2 = SCAN `DataFlowDispatch::classTracker/1#d11f2237#reorder_1_0#prev_delta` OUTPUT In.0
96 ~0% {1} r3 = SCAN `DataFlowDispatch::superCallTwoArgumentTracker/2#d18be99f#reorder_2_0_1#prev_delta` OUTPUT In.0
351157 ~80% {1} r4 = r1 UNION r2 UNION r3
88074 ~14% {1} | JOIN WITH `Attributes::AttrRef.getObject/0#dispred#d7cd0a97_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1
41789 ~18% {2} | JOIN WITH Attributes::AttrRead#class#f6c3f431 ON FIRST 1 OUTPUT Lhs.0, Lhs.0
{2} | AND NOT `DataFlowDispatch::TrackAttrReadInput::start/2#67f26627#prev`(FIRST 2)
32883 ~2% {2} | SCAN OUTPUT In.1, In.1
return r4
```
AND
initial
```
Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@c15596yu was evaluated in 74 iterations totaling 165ms (delta sizes total: 113119).
17434622 ~0% {2} r1 = SCAN Attributes::AttrRead#class#f6c3f431 OUTPUT In.0, In.0
{2} | AND NOT `DataFlowDispatch::TrackAttrReadInput::start/2#67f26627#prev`(FIRST 2)
9483976 ~4% {2} | SCAN OUTPUT In.1, In.1
9483976 ~0% {3} | JOIN WITH `Attributes::AttrRef.getObject/0#dispred#d7cd0a97` ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1
19258 ~1% {2} r2 = JOIN r1 WITH `DataFlowDispatch::classInstanceTracker/1#d73ecef4#reorder_1_0#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
1654 ~1% {2} r3 = JOIN r1 WITH `DataFlowDispatch::superCallNoArgumentTracker/1#0a2e8a06#reorder_1_0#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
1314 ~4% {2} r4 = JOIN r1 WITH `DataFlowDispatch::clsArgumentTracker/1#47339327#reorder_1_0#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
94 ~2% {2} r5 = JOIN r1 WITH `DataFlowDispatch::superCallTwoArgumentTracker/2#d18be99f#reorder_2_0_1#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
77217 ~0% {2} r6 = JOIN r1 WITH `DataFlowDispatch::selfTracker/1#f157aa27#reorder_1_0#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
13632 ~1% {2} r7 = JOIN r1 WITH `DataFlowDispatch::classTracker/1#d11f2237#reorder_1_0#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
113169 ~0% {2} r8 = r2 UNION r3 UNION r4 UNION r5 UNION r6 UNION r7
return r8
```
==>
```
Pipeline standard for DataFlowDispatch::TrackAttrReadInput::start/2#67f26627@d732e6yt was evaluated in 74 iterations totaling 31ms (delta sizes total: 113129).
186719 ~150% {1} r1 = SCAN `DataFlowDispatch::classInstanceTracker/1#d73ecef4#reorder_1_0#prev_delta` OUTPUT In.0
1669 ~0% {1} r2 = SCAN `DataFlowDispatch::superCallNoArgumentTracker/1#0a2e8a06#reorder_1_0#prev_delta` OUTPUT In.0
3425 ~15% {1} r3 = SCAN `DataFlowDispatch::clsArgumentTracker/1#47339327#prev_delta` OUTPUT In.1
96 ~0% {1} r4 = SCAN `DataFlowDispatch::superCallTwoArgumentTracker/2#d18be99f#reorder_2_0_1#prev_delta` OUTPUT In.0
123310 ~0% {1} r5 = SCAN `DataFlowDispatch::selfTracker/1#f157aa27#reorder_1_0#prev_delta` OUTPUT In.0
164342 ~581% {1} r6 = SCAN `DataFlowDispatch::classTracker/1#d11f2237#reorder_1_0#prev_delta` OUTPUT In.0
479561 ~94% {1} r7 = r1 UNION r2 UNION r3 UNION r4 UNION r5 UNION r6
169424 ~2% {1} | JOIN WITH `Attributes::AttrRef.getObject/0#dispred#d7cd0a97_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1
116290 ~0% {2} | JOIN WITH Attributes::AttrRead#class#f6c3f431 ON FIRST 1 OUTPUT Lhs.0, Lhs.0
{2} | AND NOT `DataFlowDispatch::TrackAttrReadInput::start/2#67f26627#prev`(FIRST 2)
113160 ~0% {2} | SCAN OUTPUT In.1, In.1
return r7
```
2024-03-21 15:55:58 +01:00
Jeroen Ketema
98de4e209b
C++: Handle destructors of if and switch initializer statements
2024-03-21 15:47:11 +01:00
Jeroen Ketema
9cc287dff1
C++: Handle destructors of range-based for-loop initializer statements
2024-03-21 15:47:11 +01:00
Cornelius Riemenschneider
be245dd4b2
Merge pull request #16012 from github/criemen/swift-linux-sandbox
...
Swift genrule: Replace local with no-sandbox.
2024-03-21 15:06:47 +01:00
Rasmus Wriedt Larsen
bfa8515b28
Python: Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-03-21 14:51:45 +01:00
Cornelius Riemenschneider
79094e4b89
Swift genrule: Replace local with no-sandbox.
...
This allows the bazel cache to cache this genrule invocation.
It shouldn't depend on system-specific binaries, so
I believe this is correct.
This is the only part of our build where we otherwise
need to recompute parts after pulling in a full cache.
2024-03-21 13:51:22 +00:00
Ian Lynagh
1b3605754f
Java: Add a changenote for dropping ODASA_SNAPSHOT support
2024-03-21 13:38:54 +00:00
Tamás Vajk
0aa7de295b
Merge pull request #16004 from tamasvajk/feature/adjust-incorrect-compare-to
...
C#: Simplify the output of `cs/wrong-compareto-signature` to remove e…
2024-03-21 14:38:54 +01:00
Ian Lynagh
33fe5abf94
Kotlin: Remove references to legacy ODASA_SNAPSHOT env var
2024-03-21 13:29:40 +00:00
Henry Mercer
4e3a6e2140
Merge pull request #15874 from github/henrymercer/mark-loc-as-telemetry
...
Show lines of code data in debug mode only
2024-03-21 12:20:09 +00:00
Rasmus Wriedt Larsen
cff63ad5d5
Python: Fix small join-order problem for call-graph
...
problem is:
```
14294 ~33% {1} r23 = r21 UNION r22
13626 ~0% {2} | JOIN WITH `DataFlowPublic::Node.getEnclosingCallable/0#dispred#be95825a` ON FIRST 1 OUTPUT Rhs.1, Lhs.0
11871493 ~2% {2} | JOIN WITH `DataFlowPublic::Node.getEnclosingCallable/0#dispred#be95825a_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
6810938 ~3% {2} | JOIN WITH num#DataFlowPublic::TCfgNode#2cd2fb22_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
0 ~0% {4} | JOIN WITH `DataFlowDispatch::resolveMethodCall/4#3067f1f1#reorder_0_3_1_2#prev` ON FIRST 2 OUTPUT Rhs.3, Lhs.1, Lhs.0, Rhs.2
0 ~0% {4} | JOIN WITH num#DataFlowDispatch::CallTypeClassMethod#3508c3e5 ON FIRST 1 OUTPUT Lhs.3, Lhs.2, Lhs.0, Lhs.1
0 ~0% {4} | JOIN WITH `DataFlowDispatch::resolveCall/3#454c02d8#reorder_1_0_2#prev` ON FIRST 3 OUTPUT Lhs.3, Lhs.1, Lhs.0, Lhs.2
0 ~0% {5} | JOIN WITH num#DataFlowDispatch::TSelfArgumentPosition#de6d64b8 CARTESIAN PRODUCT OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.0, Rhs.0
```
that is, it does cartesian product of DataFlowPublic::Node.getEnclosingCallable
After fix
```
14294 ~33% {1} r23 = r21 UNION r22
0 ~0% {4} | JOIN WITH `DataFlowDispatch::resolveMethodCall/4#3067f1f1#reorder_3_0_1_2#prev` ON FIRST 1 OUTPUT Rhs.3, Lhs.0, Rhs.1, Rhs.2
0 ~0% {4} | JOIN WITH num#DataFlowDispatch::CallTypeClassMethod#3508c3e5 ON FIRST 1 OUTPUT Lhs.3, Lhs.2, Lhs.0, Lhs.1
0 ~0% {4} | JOIN WITH `DataFlowDispatch::resolveCall/3#454c02d8#reorder_1_0_2#prev` ON FIRST 3 OUTPUT Lhs.1, Lhs.3, Lhs.0, Lhs.2
0 ~0% {5} | JOIN WITH num#DataFlowPublic::TCfgNode#2cd2fb22 ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0, Lhs.2, Lhs.3
0 ~0% {5} | JOIN WITH `DataFlowPublic::Node.getEnclosingCallable/0#dispred#be95825a` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.2, Lhs.3, Lhs.4
0 ~0% {4} | JOIN WITH `DataFlowPublic::Node.getEnclosingCallable/0#dispred#be95825a` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.4
0 ~0% {5} | JOIN WITH num#DataFlowDispatch::TSelfArgumentPosition#de6d64b8 CARTESIAN PRODUCT OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.0, Rhs.0
```
Overall stats
(old)
Pipeline standard for DataFlowDispatch::getCallArg/5#21589076@b30c7vxg was evaluated in 51 iterations totaling 54ms (delta sizes total: 38247).
==>
(new)
Pipeline standard for DataFlowDispatch::getCallArg/5#21589076@c1559vxu was evaluated in 51 iterations totaling 28ms (delta sizes total: 38247).
2024-03-21 12:31:58 +01:00
Jeroen Ketema
ccc5a80d93
Merge pull request #16008 from jketema/destructors19
...
C++: Handle `getInitializingExpr` in PrintAST
2024-03-21 12:22:48 +01:00
Rasmus Wriedt Larsen
2aa5ae41fb
Python: Fix join-order problem in SqlAlchemy
...
No major performance impact, more of a learning example for myself (had +3000 join order badness).
Initial tuple counts
```
Evaluated recursive predicate SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0@594cfx2g in 1ms on iteration 1 (delta size: 4).
Evaluated relational algebra for predicate SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0@594cfx2g on iteration 1 running pipeline base with tuple counts:
37793 ~0% {3} r1 = JOIN `ApiGraphs::API::Node.getACall/0#dispred#312deb92_10#join_rhs` WITH DataFlowPublic::CallCfgNode#b8ddbf81 ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.1
0 ~0% {2} | JOIN WITH `SqlAlchemy::SqlAlchemy::Connection::classRef/0#565fc3ad` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
30 ~0% {5} r2 = JOIN DataFlowPublic::CallCfgNode#b8ddbf81 WITH `DataFlowPublic::MethodCallNode.calls/2#dispred#1dd1e0f4#ffb` ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Rhs.1, Rhs.2, _
{4} | REWRITE WITH NOT [NOT [Tmp.4 := "begin", TEST InOut.3 = Tmp.4], NOT [Tmp.4 := "connect", TEST InOut.3 = Tmp.4]] KEEPING 4
21 ~0% {3} | SCAN OUTPUT In.2, In.0, In.1
4 ~0% {2} | JOIN WITH `SqlAlchemy::SqlAlchemy::Engine::instance/0#1828baef` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
4 ~0% {2} r3 = r1 UNION r2
return r3
```
which is fixed by the only_bind_out
```
Evaluated recursive predicate SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0@49effxtg in 0ms on iteration 1 (delta size: 0).
Evaluated relational algebra for predicate SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0@49effxtg on iteration 1 running pipeline base with tuple counts:
0 ~0% {1} r1 = JOIN `SqlAlchemy::SqlAlchemy::Connection::classRef/0#565fc3ad` WITH `ApiGraphs::API::Node.getACall/0#dispred#312deb92` ON FIRST 1 OUTPUT Rhs.1
0 ~0% {2} | JOIN WITH DataFlowPublic::CallCfgNode#b8ddbf81 ON FIRST 1 OUTPUT Lhs.0, Rhs.1
return r1
```
We also had this initial problem
```
Evaluated recursive predicate SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0@594cfx2g in 1ms on iteration 4 (delta size: 0).
Evaluated relational algebra for predicate SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0@594cfx2g on iteration 4 running pipeline standard with tuple counts:
48722 ~6% {2} r1 = DataFlowPublic::CallCfgNode#b8ddbf81 AND NOT SqlAlchemy::SqlAlchemy::Connection::ConnectionConstruction#45e716e0#prev(FIRST 2)
48722 ~3% {3} r2 = SCAN r1 OUTPUT In.0, _, In.1
48722 ~1% {3} | REWRITE WITH Out.1 := "connect"
16 ~0% {3} | JOIN WITH `DataFlowPublic::MethodCallNode.calls/2#dispred#1dd1e0f4#ffb_021#join_rhs` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2
0 ~0% {2} | JOIN WITH `SqlAlchemy::SqlAlchemy::Connection::instance/0#5ed87c17#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
48722 ~3% {3} r3 = SCAN r1 OUTPUT In.0, _, In.1
48722 ~2% {3} | REWRITE WITH Out.1 := "execution_options"
9 ~0% {3} | JOIN WITH `DataFlowPublic::MethodCallNode.calls/2#dispred#1dd1e0f4#ffb_021#join_rhs` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2
0 ~0% {2} | JOIN WITH `SqlAlchemy::SqlAlchemy::Connection::instance/0#5ed87c17#prev_delta` ON FIRST 1 OUTPUT Lhs.1, Lhs.2
0 ~0% {2} r4 = r2 UNION r3
return r4
```
which is fixed by `connectionConstruction_helper`
```
Evaluated recursive predicate SqlAlchemy::SqlAlchemy::Connection::helper/0#62cfc178#b@4f295yef in 1ms on iteration 4 (delta size: 0).
Evaluated relational algebra for predicate SqlAlchemy::SqlAlchemy::Connection::helper/0#62cfc178#b@4f295yef on iteration 4 running pipeline standard with tuple counts:
4 ~0% {1} r1 = JOIN `SqlAlchemy::SqlAlchemy::Connection::instance/1#029b4c87#prev_delta` WITH `TypeTrackingImpl::TypeTracker::end/0#2ac2cfd4` ON FIRST 1 OUTPUT Lhs.1
16 ~0% {1} | JOIN WITH `LocalSources::Cached::hasLocalSource/2#8b3ee0ec_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1
0 ~0% {3} | JOIN WITH `DataFlowPublic::MethodCallNode.calls/2#dispred#1dd1e0f4#ffb_102#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Rhs.2, _
0 ~0% {2} | REWRITE WITH NOT [NOT [Tmp.2 := "connect", TEST InOut.1 = Tmp.2], NOT [Tmp.2 := "execution_options", TEST InOut.1 = Tmp.2]] KEEPING 2
0 ~0% {1} | JOIN WITH DataFlowPublic::CallCfgNode#b8ddbf81 ON FIRST 1 OUTPUT Lhs.0
0 ~0% {1} | AND NOT `SqlAlchemy::SqlAlchemy::Connection::helper/0#62cfc178#b#prev`(FIRST 1)
return r1
```
2024-03-21 11:55:49 +01:00
Jeroen Ketema
4c4ebd907e
C++: Update more expected test results
2024-03-21 11:54:29 +01:00
Jeroen Ketema
a3ae304dfe
C++: Handle getInitializingExpr in PrintAST
2024-03-21 11:32:23 +01:00
Jeroen Ketema
33c524d9fd
Merge pull request #16003 from jketema/destructors18
...
C++: Add tests showing missing destructors for initialization statements
2024-03-21 11:28:54 +01:00
Tamas Vajk
9d655520cc
Code quality improvement
2024-03-21 11:26:45 +01:00
Mathias Vorreiter Pedersen
dc5ee7c8b4
Merge pull request #16007 from MathiasVP/fix-tls-settings-misconfiguration
...
C++: Fix `cpp/boost/tls-settings-misconfiguration` FPs
2024-03-21 10:16:37 +00:00
Mathias Vorreiter Pedersen
7fb64268bd
Merge pull request #15997 from MathiasVP/simplify-guard-in-missing-check-scanf
...
C++: Simplify use of guard conditions in `cpp/missing-check-scanf`
2024-03-21 10:16:12 +00:00
Tamas Vajk
d0c09f43a9
Add change note
2024-03-21 11:13:42 +01:00
Paolo Tranquilli
eb7f07dc3f
Merge pull request #15967 from github/redsun82/test
...
Swift: add `-headerpad_max_install_names` to link options
2024-03-21 11:11:53 +01:00
Tom Hvitved
c0f80ecd2f
Merge pull request #15994 from hvitved/csharp/no-trap-stack-in-buildless
...
C#: Avoid using TRAP stack in buildless mode
2024-03-21 10:46:08 +01:00
erik-krogh
54a1c25276
change the precision of the js/unsafe-external-link query to low
2024-03-21 10:32:15 +01:00
Tamas Vajk
9da8cb1165
C#: Simplify the output of cs/wrong-compareto-signature to remove entity locations
2024-03-21 10:27:55 +01:00
Jeroen Ketema
06313b9bb6
Merge pull request #15998 from MathiasVP/simplify-guard-in-incorrectly-check-scanf
...
C++: Simplify use of guard conditions in `cpp/incorrectly-checked-scanf`
2024-03-21 10:10:03 +01:00
Jeroen Ketema
84646cd795
C++: Add tests showing missing destructors for initialization statements
...
Incidentially this also shows that for contructs like `if (char x = ...)`, so
there is an initialization but not initializer statement, the initialization
is not displayed in the AST, although the IR does contain the initialization.
2024-03-21 09:40:00 +01:00
Michael Nebel
6619be3137
Merge pull request #15940 from michaelnebel/csharp/sourcesinktests
...
C#: Source- and sink tests.
2024-03-21 08:12:16 +01:00
Jeroen Ketema
ec071cde51
Merge pull request #15991 from jketema/destructors17
...
C++: Handle destruction of temporaries in expressions with a `thow` at the root
2024-03-21 07:47:09 +01:00
Jeroen Ketema
9300b04def
C++: Update test results
2024-03-21 00:05:30 +01:00
Henry Mercer
a76832f4e0
Mark LOC queries as debug instead
2024-03-20 21:18:55 +00:00
Tom Hvitved
8f56edea80
Merge pull request #15966 from hvitved/treesitter-split-up-node-info-table
...
Tree-sitter: Split up `ast_node_info` table into two tables
2024-03-20 20:38:18 +01:00
Mathias Vorreiter Pedersen
0ef8c7d87f
C++: Accept test changes.
2024-03-20 18:05:14 +00:00
Mathias Vorreiter Pedersen
1330c885c8
C++: Use 'asIndirectExpr' in the sink of 'ExistsAnyFlowConfig.
2024-03-20 18:04:59 +00:00
Mathias Vorreiter Pedersen
f31bb1391d
C++: Simplify 'checkedForEof'.
2024-03-20 16:59:39 +00:00
Mathias Vorreiter Pedersen
5476f42d2c
C++: Simplify use of 'GuardCondition's in 'cpp/missing-check-scanf'.
2024-03-20 16:44:43 +00:00
Mathias Vorreiter Pedersen
e3be2057d3
Merge pull request #15996 from MathiasVP/missing-check-scanf-path-problem
...
Make `cpp/missing-check-scanf` a `path-problem` query
2024-03-20 16:42:47 +00:00
Mathias Vorreiter Pedersen
96cd259eda
C++: Add change note.
2024-03-20 14:56:39 +00:00
Mathias Vorreiter Pedersen
14aff5c94c
C++: Convert 'cpp/missing-check-scanf' to a path-problem query.
2024-03-20 14:54:53 +00:00
Mathias Vorreiter Pedersen
0fe3072a65
Merge pull request #15988 from MathiasVP/clean-up-missing-check-scanf
...
C++: Rewrite 'cpp/missing-check-scanf' to use standard dataflow configs
2024-03-20 14:50:08 +00:00
Mathias Vorreiter Pedersen
ebac171b2b
Java/Shared: Rename 'joinStep0' to 'joinStep'.
2024-03-20 14:40:16 +00:00
Mathias Vorreiter Pedersen
6a65c46b2e
Java/Shared: Share more 'isNull' computations.
2024-03-20 14:36:12 +00:00
Mathias Vorreiter Pedersen
90fbacc7bf
Java/Shared: Use getLocation instead of hasLocationInfo.
2024-03-20 14:29:48 +00:00
Michael Nebel
969676975d
C#: Address review comments.
2024-03-20 15:28:56 +01:00
Michael B. Gale
616015fddf
Merge pull request #15935 from github/mbg/go/speed-up-dependencies
2024-03-20 14:26:46 +00:00
Tom Hvitved
79dc7fcc04
C#: Avoid using TRAP stack in buildless mode
2024-03-20 15:21:36 +01:00
Taus
1d38ca371b
Merge pull request #15845 from github/tausbn/python-extractor-fix-build
...
Python: Build external extractor
2024-03-20 15:18:59 +01:00
Michael B. Gale
648543f2fb
Merge pull request #15989 from github/mbg/docs/go-1.22
...
Docs: Add Go 1.22 to supported versions range
2024-03-20 14:04:26 +00:00
Michael B. Gale
c74d6348f9
Go: Run go with a valid toolchain version if we have found an invalid one
2024-03-20 13:55:37 +00:00
Michael B. Gale
0d527b2f75
Go: Keep track of all installed toolchains that we know of
2024-03-20 13:52:06 +00:00
Jeroen Ketema
1fd11928eb
Merge pull request #15978 from jketema/destructors16
...
C++: Handle destructors at temporary object lifetime expressions
2024-03-20 14:24:10 +01:00
Ian Lynagh
9086ec8b13
Merge pull request #15973 from igfoo/igfoo/exprs
...
Kotlin 2: Accept more test changes
2024-03-20 13:13:56 +00:00
Michael B. Gale
96a6dd72cd
Go: Move go version command construction into its own function
2024-03-20 13:08:59 +00:00
Michael B. Gale
c71ba0361e
Docs: Add Go 1.22 to supported versions range
2024-03-20 12:12:20 +00:00
Mathias Vorreiter Pedersen
c9dbb7c5a9
C++: Rewrite 'cpp/missing-check-scanf' to use standard dataflow configurations.
2024-03-20 12:01:57 +00:00
Michael B. Gale
06134467e9
Go: Make CODEQL_EXTRACTOR_GO_FAST_PACKAGE_INFO true by default
2024-03-20 12:01:49 +00:00
Ian Lynagh
3fa7532b43
Kotlin 2: Accept more test changes
2024-03-20 11:46:58 +00:00
Cornelius Riemenschneider
8fbd743e9e
Merge pull request #15971 from github/criemen/bazel-7-1
...
Upgrade to bazel 7.1
2024-03-20 12:27:03 +01:00
Mathias Vorreiter Pedersen
7ff2998c88
Merge pull request #15980 from MathiasVP/guards-lt
...
C++: Support `<` reasoning for `switch` statements in Guards library
2024-03-20 10:40:39 +00:00
Mathias Vorreiter Pedersen
3a7b80da47
C++: Respond to review comments.
2024-03-20 10:12:29 +00:00
Mathias Vorreiter Pedersen
9179f0bda6
Merge pull request #15969 from MathiasVP/disable-some-constant-folding
...
C++: Disable _some_ constant folding in IR
2024-03-20 09:25:06 +00:00
Arthur Baars
1d956e1039
Merge pull request #15974 from github/dbartol/rc3.13-mergeback
...
Mergeback from `rc/3.13`
2024-03-20 10:13:32 +01:00
erik-krogh
db3bf0e482
use the sanitizers from ReflectedXSS in unsafe-html-construction
2024-03-20 10:11:07 +01:00
Jeroen Ketema
3ee965f2b9
C++: Update test results
2024-03-20 10:05:35 +01:00
Tom Hvitved
90779f4413
Ruby: Extend barrier guards to handle phi inputs
2024-03-20 10:02:20 +01:00
Tom Hvitved
0f0acc0428
Ruby: Add barrier guard flow tests
2024-03-20 09:25:20 +01:00
Alex Denisov
1cfde49297
Swift: remove unused patches
2024-03-20 09:24:25 +01:00
Alex Denisov
589a5039c8
Swift: update Swift 5.10 dependencies
2024-03-20 09:23:12 +01:00
Tony Torralba
0bb86fc087
Merge pull request #15983 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2024-03-20 09:00:34 +01:00
Paolo Tranquilli
10efcc2bb4
Swift: add -headerpad_max_install_names to link options
2024-03-20 08:35:33 +01:00
github-actions[bot]
f6f7073520
Add changed framework coverage reports
2024-03-20 00:15:31 +00:00
Mathias Vorreiter Pedersen
97aa301ac9
C++: Accept more test changes.
2024-03-19 17:33:23 +00:00
Mathias Vorreiter Pedersen
88bfb81b1f
C++: Add change note.
2024-03-19 17:14:07 +00:00
Taus
d12ac1e7ce
Python: Use tsp instead of tree-sitter-python
2024-03-19 17:11:40 +00:00
Taus
38169a981d
Python: Shorten tree-sitter-python directory name
...
The current name results in a path that is more than 260 characters long,
and this causes issues for the build on Windows.
2024-03-19 17:11:40 +00:00
Taus
6f388acdd8
Python: Rename tsg_python_crate_index to py_deps
...
This aligns us a bit more with Ruby.
2024-03-19 17:11:40 +00:00
Taus
04c9ed37a7
Python: Fix reference in unit test
...
The referenced file lives in the internal repo, so this is perhaps a bit
of a hack, but I think it should be fine in the short run.
2024-03-19 17:11:40 +00:00
Taus
cac5a8236e
Python: Fix CLI integration tests
...
Two issues:
- Tests relying on existing query machinery (i.e. `import python`) were not resolving
correctly due to a bad `qlpack.yml` file.
- The diagnostics output tests needed an updated import to account for their new location.
2024-03-19 17:11:40 +00:00
Taus
0550c46766
Python: Fix Bazel build
2024-03-19 17:11:40 +00:00
Taus
5fed8bc57b
Python: Add codeql-extractor.yml
2024-03-19 17:11:40 +00:00
Taus
016aedab0a
Python: Move Python language pack tooling to external repo
...
This is essentially the contents of `language-packs/python/tools` with some minor
modifications to account for the changed location.
Of note: we explicitly exclude the `recorded-call-graph-metrics` director that
was already present in `python/tools`. When we revisit this directory for some
cleanup (e.g. to get rid of the `lgtm` references), we'll probably want to switch
to an explicit list of sources to include.
2024-03-19 17:11:40 +00:00
Taus
cdc879ee89
Python: Fix up some bazel references
2024-03-19 17:11:40 +00:00
Mathias Vorreiter Pedersen
1411ee5b26
C++: Extend tests to also test the new predicates and accept test changes.
2024-03-19 17:09:22 +00:00
Mathias Vorreiter Pedersen
a78080cc0e
C++: Implement less-than logic for guard conditions when comparing to constants.
2024-03-19 17:06:26 +00:00
Mathias Vorreiter Pedersen
8b85735cdc
C++: Generalize predicates from booleans to abstract values.
2024-03-19 17:03:59 +00:00
Dave Bartolomeo
bf46fa27d6
Merge remote-tracking branch 'origin/main' into dbartol/rc3.13-mergeback
2024-03-19 13:02:15 -04:00
Mathias Vorreiter Pedersen
aeb667c6ca
Merge pull request #15976 from MathiasVP/guards-eq-follow-up
...
C++: Fix interface for `GuardCondition.comparesEq` and `GuardCondition.ensuresEq`
2024-03-19 16:45:38 +00:00
Mathias Vorreiter Pedersen
6bf1611f10
C++: Fix comments.
2024-03-19 16:26:37 +00:00
Michael B. Gale
be027e217e
Go: Emit diagnostic for invalid toolchain versions
2024-03-19 16:26:06 +00:00
Mathias Vorreiter Pedersen
357a2ba733
C++: Sync identical files.
2024-03-19 16:24:11 +00:00
Mathias Vorreiter Pedersen
458ee13345
C++: Add constant analysis for bitwise operations now that these are no longer constant folded by IR construction.
2024-03-19 16:23:57 +00:00
yoff
ee411cc53a
Merge pull request #15936 from yoff/python/test-conflicting-summaries
...
Python: No `fieldFlowBranchLimit` for `SummarizedCallable`s
2024-03-19 16:56:56 +01:00
Robert Marsh
467f4e11a1
C++: Change note for IR translation of destruction of temporaries with extended lifetimes
2024-03-19 15:55:36 +00:00
Robert Marsh
5a30ad162a
C++: Add a comment for ReusedExpr IR translation
2024-03-19 15:54:52 +00:00
Robert Marsh
3d4f7d880d
C++: unsuppress destructoion of temporaries with extended lifetimes
2024-03-19 15:54:42 +00:00
Robert Marsh
ba10ea8121
C++: ReuseExpr IR translation
2024-03-19 15:50:28 +00:00
Michael Nebel
d3aa2eed64
C#: Fix test.
2024-03-19 16:30:24 +01:00
Jeroen Ketema
f5fed84bb2
Merge pull request #15968 from jketema/destructors15
...
C++: Fabricate destructors for temporaries that occur in dynamic initializations
2024-03-19 16:16:43 +01:00
Owen Mansel-Chan
b8608a1b1c
Merge pull request #15946 from owen-mc/java/more-manual-models
...
Java: more manual models
2024-03-19 15:00:27 +00:00
Mathias Vorreiter Pedersen
c640bd67e9
C++: Fix tests for guards.
2024-03-19 14:43:16 +00:00
Mathias Vorreiter Pedersen
6ce3f35ef5
C++: Fix API for guards.
2024-03-19 14:43:10 +00:00
Dave Bartolomeo
311ba8ea1b
Merge from main to resolve conflicts
2024-03-19 10:41:31 -04:00
Harry Maclean
219cd4e415
Merge pull request #14426 from hmac/hmac-ar-scopes
...
Ruby: Track flow into ActiveRecord scopes
2024-03-19 14:19:14 +00:00
Chris Smowton
f8124222cc
Merge pull request #15959 from smowton/smowton/admin/jdk22-test-changes
...
JDK22 upgrade test changes
2024-03-19 14:02:46 +00:00
Harry Maclean
7e479e3c8e
Ruby: Fix Hash#keys flow summary
2024-03-19 13:47:45 +00:00
Tom Hvitved
ee3e38f0eb
Simplify test interface in FlowSummaryImpl.qll
2024-03-19 14:35:00 +01:00
Owen Mansel-Chan
7371f5e508
Provenance should be "df-manual"
2024-03-19 13:33:49 +00:00
Mathias Vorreiter Pedersen
597f0082e7
Merge pull request #15958 from MathiasVP/ir-guards-from-switch-statements-2
...
C++: Implement guards logic for switch statements
2024-03-19 13:21:45 +00:00
Michael Nebel
70c6744944
Java/Go/Swift: Sync changes.
2024-03-19 14:20:43 +01:00
Michael Nebel
d24f032d97
C#: Update other tests.
2024-03-19 14:20:43 +01:00
Michael Nebel
b39842501a
C#: Update sink test expected output.
2024-03-19 14:20:42 +01:00
Michael Nebel
e32902ad47
C#: Update source expected test output.
2024-03-19 14:20:42 +01:00
Michael Nebel
5b37ee4ec7
Re-factor TestOutput into a param module.
2024-03-19 14:20:42 +01:00
Mathias Vorreiter Pedersen
54262a53c3
Revert "C++: Accept test changes."
...
This reverts commit f36b48346e .
2024-03-19 13:18:01 +00:00
Mathias Vorreiter Pedersen
a88d8b260d
C++: Only ignore constant folding for certain binary operations.
2024-03-19 13:17:49 +00:00
Mathias Vorreiter Pedersen
a97891cbc1
C++: Add QLDoc to 'getNumberOfBinaryOperands' (and rename it to 'getNumberOfNestedBinaryOperands').
2024-03-19 12:56:15 +00:00
Mathias Vorreiter Pedersen
f36b48346e
C++: Accept test changes.
2024-03-19 12:50:43 +00:00
Harry Maclean
df1845379a
Merge pull request #15965 from hmac/hmac-symbol-constant
...
Ruby: remove isString from TSymbol
2024-03-19 12:50:27 +00:00
Michael Nebel
90db9b330f
C#: Add MaD source and sink test query to shared library.
2024-03-19 13:45:38 +01:00
Cornelius Riemenschneider
42c5066cae
Upgrade to bazel 7.1
2024-03-19 13:40:45 +01:00
Harry Maclean
22ddf2129b
Ruby: remove isString from TSymbol
2024-03-19 12:27:34 +00:00
Tom Hvitved
2e370e2ded
Python: Switch to shared XML.qll implementation
2024-03-19 13:17:53 +01:00
Tom Hvitved
61ef9e2e5c
JS: Switch to shared XML.qll implementation
2024-03-19 13:17:50 +01:00
Tom Hvitved
a6c147134a
Java: Switch to shared XML.qll implementation
2024-03-19 13:15:45 +01:00
Tom Hvitved
754b491d09
C++: Switch to shared XML.qll implementation
2024-03-19 13:14:42 +01:00
Tom Hvitved
529e901fb1
C#: Switch to shared XML.qll implementation
2024-03-19 13:14:42 +01:00
Tom Hvitved
7055cd8239
Make XML.qll a parameterized module
2024-03-19 13:14:42 +01:00
Tom Hvitved
ccfbd2956c
Copy existing XML.qll into new a new codeql/xml pack
2024-03-19 13:14:42 +01:00
Tom Hvitved
31e04631d1
QL4QL: Regenerate DB scheme and stats
2024-03-19 13:04:12 +01:00
Tom Hvitved
865026f22b
Ruby: Add up/downgrade scripts (sigh)
2024-03-19 13:04:12 +01:00
Tom Hvitved
72ff494739
Ruby: Regenerate dbscheme and stats
2024-03-19 13:04:07 +01:00
Mathias Vorreiter Pedersen
1af1ba48a9
C++: Accept test changes.
2024-03-19 11:46:51 +00:00
Mathias Vorreiter Pedersen
4d3076ae7e
C++: Don't constant fold small binary operations.
2024-03-19 11:46:51 +00:00
Mathias Vorreiter Pedersen
e16e1c7e83
C++: Add tests.
2024-03-19 11:26:32 +00:00
Jeroen Ketema
06dbb4e9ef
Merge pull request #15937 from jketema/destructors14
...
C++: Handle destructors of temporaries with extended lifetimes
2024-03-19 12:07:05 +01:00
Mathias Vorreiter Pedersen
d7afd7b2e1
C++: Accept test changes.
2024-03-19 10:54:35 +00:00
Mathias Vorreiter Pedersen
350b239ed6
C++: Fix cartesian product in 'simple_comparison_eq'.
2024-03-19 10:29:43 +00:00
Jeroen Ketema
d47e2690b8
C++: Update test results after extractor changes
2024-03-19 11:18:36 +01:00
Jeroen Ketema
fd49871b9a
C++: Handle destructors of temporaries with extended lifetimes
2024-03-19 10:56:44 +01:00
Tom Hvitved
cee6f003fd
Tree-sitter: Split up ast_node_info table into two tables
2024-03-19 10:52:37 +01:00
Mathias Vorreiter Pedersen
0c3d9f75f4
C++: Add change note.
2024-03-19 09:41:58 +00:00
yoff
f025430431
Merge pull request #15319 from Sim4n6/main
...
[Python] Add Unicode DoS (qhelp, tests and the query)
2024-03-19 10:00:30 +01:00
Rasmus Wriedt Larsen
d78efdb67b
Merge pull request #15883 from RasmusWL/js-cg-tests
...
JS: show test changes after #15823
2024-03-19 09:58:20 +01:00
Harry Maclean
dde148ee7e
Ruby: add changenote
2024-03-19 08:40:30 +00:00
Harry Maclean
32b80f8cb1
Ruby: Add tests for hash flow
2024-03-19 08:38:14 +00:00
Tom Hvitved
5ab1047b14
Merge pull request #15882 from hvitved/js/dataflow-node-get-location
...
JS: Add `DataFlow::Node.getLocation`
2024-03-19 09:21:00 +01:00
Chris Smowton
9a8ec36a4f
Accept test changes
2024-03-19 07:55:08 +00:00
Mathias Vorreiter Pedersen
aa1d5c5e41
Merge pull request #15960 from MathiasVP/unitialized-local-as-path
...
C++: Convert `cpp/uninitialized-local` to a `path-problem` query
2024-03-18 21:18:17 +00:00
Erik Krogh Kristensen
a3da6c886b
Merge pull request #15895 from erik-krogh/url-java-qhelp
...
Java: update the url-redirection in the same style as the C# qhelp
2024-03-18 21:10:07 +01:00
yoff
44ab36f238
Merge pull request #15729 from yoff/python/hardcoded-credentials-without-pointsto
...
python: Rewrite `HardcodedCredentials` away from `PointsTo`
2024-03-18 20:48:30 +01:00
Tom Hvitved
fc55567d90
Merge pull request #15853 from hvitved/dataflow/get-location
...
Data flow: Replace `hasLocationInfo` with `getLocation`
2024-03-18 20:21:46 +01:00
Tom Hvitved
8899d66132
Merge pull request #15734 from hvitved/dataflow/hidden-subpath
...
Data flow: Account for hidden `subpath` wrappers
2024-03-18 20:17:16 +01:00
Michael B. Gale
3649af3f05
Go: Add test for go/autobuilder/invalid-go-toolchain-version diagnostic
2024-03-18 17:56:59 +00:00
Harry Maclean
187a68bf76
Ruby: Add flow summary for Hash#keys
2024-03-18 17:56:10 +00:00
Harry Maclean
e895f96a3a
Ruby: Taint flow to second block param in map
...
When `map` is called on a hash, the values in the hash are passed to the
second parameter of the block.
2024-03-18 17:55:02 +00:00
Mathias Vorreiter Pedersen
b66b8785c4
Merge branch 'main' into unitialized-local-as-path
2024-03-18 17:42:53 +00:00
Chris Smowton
35a309fd40
Merge pull request #15897 from smowton/smowton/admin/test-for-gradle-wrapper-without-gradle
...
Java: add test for partial gradle wrapper without gradle on the path
2024-03-18 17:07:20 +00:00
Owen Mansel-Chan
764e99bda7
Fix model for java.util.Scanner#findall(String)
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-03-18 16:56:20 +00:00
Owen Mansel-Chan
e10ce8875f
Merge pull request #15947 from owen-mc/java/fix-model-provenance-to-df-manual
...
Fix model provenance to df-manual
2024-03-18 16:54:39 +00:00
Mathias Vorreiter Pedersen
9c2b2160ce
Merge pull request #15939 from MathiasVP/experimental-surprising-lifetimes-for-range-based-for-loop
...
C++: Add an experimental query for surprising lifetimes from range-based for loops
2024-03-18 16:43:11 +00:00
Mathias Vorreiter Pedersen
40dbc6fdd9
C++: Accept test changes.
2024-03-18 16:27:18 +00:00
Mathias Vorreiter Pedersen
032678a367
C++: Extend tests to also test the new predicates.
2024-03-18 16:27:10 +00:00
Mathias Vorreiter Pedersen
dbd47b387a
C++: Add AST wrappers for the new predicates.
2024-03-18 16:26:36 +00:00
Mathias Vorreiter Pedersen
decede51dc
C++: Use the new predicate in 'ScanfChecks.qll'.
2024-03-18 16:07:57 +00:00
Mathias Vorreiter Pedersen
44045d3eed
C++: Add guards logic for constant comparisons.
2024-03-18 16:07:57 +00:00
Mathias Vorreiter Pedersen
a21eea4ee0
C++: Generalize more predicates from booleans to abstract values.
2024-03-18 16:07:57 +00:00
Arthur Baars
e812682991
Merge pull request #15955 from github/post-release-prep/codeql-cli-2.16.5
...
Post-release preparation for codeql-cli-2.16.5
2024-03-18 16:58:01 +01:00
Mathias Vorreiter Pedersen
b944f3b411
C++: Fix FP.
2024-03-18 15:57:20 +00:00
Mathias Vorreiter Pedersen
e373341f62
C++: Add more tests.
2024-03-18 15:57:17 +00:00
Ian Lynagh
60b5e49905
Java: Limit the amount of results that MissingEnumInSwitch produces per switch
...
The tool status page warns:
An analysis file contained multiple alerts that included more related
locations than our allowed limit of 100.
These alerts correspond to the rule java/missing-case-in-switch.
Only 100 locations were stored for these alerts.
2024-03-18 15:56:21 +00:00
Ian Lynagh
916b1e959e
Java: Add a test for MissingEnumInSwitch
2024-03-18 15:56:10 +00:00
Chris Smowton
af7b1bc425
Java: add test for partial gradle wrapper without gradle on the path
...
Note I had to mimic the actual absence of Gradle by testing the case where it fails, but have manually verified a missing binary works too.
2024-03-18 15:37:39 +00:00
Mathias Vorreiter Pedersen
668239f355
C++: Convert tabs to spaces.
2024-03-18 15:16:10 +00:00
Mathias Vorreiter Pedersen
bd0969b87b
C++: Add change note.
2024-03-18 15:04:19 +00:00
Mathias Vorreiter Pedersen
4a55b6fbdf
C++: Make 'cpp/uninitialized-local' a path-problem query.
2024-03-18 15:02:33 +00:00
Harry Maclean
80ae017aa1
Ruby: Track flow into ActiveRecord scopes
2024-03-18 15:01:37 +00:00
Tom Hvitved
0cecbf5239
Update 2024-02-28-hidden-subpaths.md
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2024-03-18 15:36:01 +01:00
Joe Farebrother
4177c38ed4
Merge pull request #15907 from joefarebrother/ruby-uploaded-file
...
Ruby: Model ActiveDispatch::Http::UploadedFile
2024-03-18 14:02:33 +00:00
Tamas Vajk
322fb6c507
Change integration test to return stable results
2024-03-18 14:53:49 +01:00
Tom Hvitved
7a3b8ebb3a
Address review comments
2024-03-18 14:49:35 +01:00
Tom Hvitved
40089e8088
Add change note
2024-03-18 14:49:35 +01:00
Tom Hvitved
e53357d376
Update expected test output
2024-03-18 14:49:32 +01:00
Tom Hvitved
d7c9bfa08b
Data flow: Account for hidden subpath wrappers
2024-03-18 14:47:11 +01:00
Sim4n6
1af8167354
updated the .expected file
2024-03-18 13:26:20 +00:00
Tamas Vajk
d749335f54
C#: Limit extracted compilation and extraction messages
2024-03-18 14:24:34 +01:00
Tom Hvitved
d83500de5d
Address review comments
2024-03-18 14:24:07 +01:00
Tamas Vajk
e8e1dc0390
C#: Add integration test with extraction and compilation messages
2024-03-18 14:23:40 +01:00
github-actions[bot]
aebe9f6992
Post-release preparation for codeql-cli-2.16.5
2024-03-18 12:16:26 +00:00
Rasmus Wriedt Larsen
c82f5dad56
JS: show test changes after #15823
2024-03-18 13:09:37 +01:00
Rasmus Wriedt Larsen
28c3d35e9b
Merge commit '7c35309732dd2aa4dc0b4e2949922272ad448854' into js-cg-tests
2024-03-18 13:08:46 +01:00
Rasmus Wriedt Larsen
f9309cec0b
JS: Add tests before #15823 changes
2024-03-18 13:08:39 +01:00
Mathias Vorreiter Pedersen
7b6accd33a
Update cpp/ql/src/experimental/Security/CWE/CWE-416/IteratorToExpiredContainer.ql
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2024-03-18 12:01:51 +00:00
Mathias Vorreiter Pedersen
457d71d7bc
Update cpp/ql/src/experimental/Security/CWE/CWE-416/IteratorToExpiredContainer.ql
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2024-03-18 12:01:44 +00:00
Arthur Baars
dbf16827bf
Merge pull request #15951 from github/aibaars/changenotes-fixes
...
Fix minor formatting issues in changenotes
2024-03-18 12:56:50 +01:00
Tamás Vajk
7429fa7b96
Merge pull request #15952 from tamasvajk/buildless/impr1
...
C#: Add logging for source file parsing
2024-03-18 12:27:27 +01:00
Tamás Vajk
f63c9fa07f
Merge pull request #15953 from tamasvajk/buildless/impr2
...
C#: Iterate text files only once
2024-03-18 12:26:38 +01:00
Ian Lynagh
d2bb951ecd
Merge pull request #15943 from igfoo/igfoo/k2locs
...
Kotlin 2: Accept more location changes
2024-03-18 11:26:08 +00:00
Owen Mansel-Chan
7fb05f4a76
Fix duplicate "df-" in "df-df-manual"
2024-03-18 11:17:55 +00:00
Mathias Vorreiter Pedersen
575af1a5f9
Merge branch 'main' into experimental-surprising-lifetimes-for-range-based-for-loop
2024-03-18 11:11:32 +00:00
Mathias Vorreiter Pedersen
1d12e0c9d9
Merge pull request #15941 from MathiasVP/ir-guards-from-switch-statements
...
C++: Handle `switch` statements in the guards library
2024-03-18 11:07:10 +00:00
Mathias Vorreiter Pedersen
e0476b555d
Merge pull request #15934 from MathiasVP/ir-models-for-iterators
...
C++: Add alias and side-effect models to `begin` and `end` functions
2024-03-18 11:06:59 +00:00
Arthur Baars
769e3469a4
Merge pull request #15954 from github/release-prep/2.16.5
...
Release preparation for version 2.16.5
2024-03-18 11:56:14 +01:00
Mathias Vorreiter Pedersen
0be329dbdc
C++: Delete duplicated code.
2024-03-18 10:33:40 +00:00
github-actions[bot]
0a6243d07b
Release preparation for version 2.16.5
2024-03-18 10:14:07 +00:00
Mathias Vorreiter Pedersen
51db2b0bc4
C++: Convert tabs to spaces in ir.cpp.
2024-03-18 10:11:37 +00:00
Tamas Vajk
881c426631
C#: Iterate text files only once
2024-03-18 11:06:44 +01:00
Tamas Vajk
3a8d468983
C#: Add logging for source file parsing
2024-03-18 11:02:29 +01:00
Arthur Baars
a810165e35
Fix minor formatting issues in changenotes
2024-03-18 10:57:05 +01:00
Tom Hvitved
a13391bda1
Merge pull request #15802 from hvitved/dataflow/variable-capture-overlapping-paths
...
Variable capture: Avoid overlapping and false-positive data flow paths
2024-03-18 10:45:55 +01:00
Rasmus Lerchedahl Petersen
2a0c451d2d
python: No fieldFlowBranchLimit for SummarizedCallables
...
Like https://github.com/github/codeql/pull/15689 for Ruby.
2024-03-18 10:29:36 +01:00
Rasmus Lerchedahl Petersen
45c65b48aa
python: make it a real package
...
so python2 also respects it
2024-03-18 08:49:31 +01:00
Jami Cogswell
a8eb1d10f6
Java: remove experimental tests
2024-03-17 22:35:27 -04:00
Jami Cogswell
658fffeac1
Java: remove experimental files
2024-03-17 22:03:59 -04:00
Owen Mansel-Chan
754d4cd959
Fix model provenance to df-manual
2024-03-17 14:36:47 +00:00
Owen Mansel-Chan
23a58a0835
Add df-manual models related to existing df-manual models
2024-03-17 14:21:05 +00:00
Owen Mansel-Chan
fc367042ef
Fix df-manual model with wrong parameter type
2024-03-17 14:21:01 +00:00
Ian Lynagh
a53d5d832d
Kotlin 2: Accept more loc changes
2024-03-15 18:08:53 +00:00
Ian Lynagh
c4c843968e
Kotlin 2: Accept more loc changes
2024-03-15 18:07:39 +00:00
Ian Lynagh
57d17d85f2
Kotlin 2: Accept more loc changes
2024-03-15 18:07:12 +00:00
Ian Lynagh
6c0885c24d
Kotlin 2: Accept more loc changes
2024-03-15 18:06:45 +00:00
Jami Cogswell
55f7369df0
Java: performance fix
2024-03-15 14:06:36 -04:00
Ian Lynagh
5580daf60e
Kotlin 2: Accept more loc changes
2024-03-15 18:06:13 +00:00
Ian Lynagh
1d2b31f0be
Kotlin 2: Accept more loc changes
2024-03-15 18:05:46 +00:00
Ian Lynagh
5552fe3c34
Kotlin 2: Accept more loc changes
2024-03-15 18:05:09 +00:00
Ian Lynagh
28f98d0344
Kotlin 2: Accept more location changes
2024-03-15 18:04:28 +00:00
Ian Lynagh
354cdf44aa
Kotlin 2: Accept more location changes
2024-03-15 18:03:55 +00:00
Ian Lynagh
f4542f6160
Kotlin2 : Accept some more location changes
2024-03-15 18:02:54 +00:00
Mathias Vorreiter Pedersen
e23e3d7fb4
C++: Run tests without the extractor and analysis changes.
2024-03-15 17:35:47 +00:00
Mathias Vorreiter Pedersen
a8718f99a1
C++: Add qhelp for 'cpp/iterator-to-expired-container'.
2024-03-15 17:35:47 +00:00
Mathias Vorreiter Pedersen
3a8db49573
C++: Add tests for 'cpp/iterator-to-expired-container'.
...
NOTE: This is with the yet-to-be-merged changes to the extractor and IR generation.
2024-03-15 17:35:17 +00:00
Mathias Vorreiter Pedersen
f4f417c3f9
C++: Fix QLoc.
2024-03-15 17:19:36 +00:00
Mathias Vorreiter Pedersen
b5e59492bf
C++: Add change note.
2024-03-15 17:17:05 +00:00
Mathias Vorreiter Pedersen
fb218150e1
C++: Change the testcase so that it outputs the controlling values for switch statements as well.
2024-03-15 17:05:42 +00:00
Mathias Vorreiter Pedersen
07ebbb0591
C++: Accept test changes.
2024-03-15 17:04:27 +00:00
Mathias Vorreiter Pedersen
34decd3cf1
C++: Add more general public predicates to work with abstract values.
2024-03-15 17:03:45 +00:00
Mathias Vorreiter Pedersen
f4eb5f5a2d
C++: Convert 'getBranchSuccessor' to use abstract values.
2024-03-15 17:03:45 +00:00
Mathias Vorreiter Pedersen
b7292fbc67
C++: Introduce 'AbstractValue' similar to what C# has.
2024-03-15 17:03:45 +00:00
Mathias Vorreiter Pedersen
2af68d37d0
C++: Include 'SwitchInstruction's as 'IRGuardCondition's.
2024-03-15 17:03:45 +00:00
Mathias Vorreiter Pedersen
704f1fad46
C++: Add switches as testcases for guard conditions.
2024-03-15 17:02:32 +00:00
Max Schaefer
daee22d38c
Merge pull request #15933 from github/max-schaefer/go-incomplete-hostname-regex
...
Go: Mention raw string iterals in QHelp for `go/incomplete-hostname-regexp`.
2024-03-15 15:07:10 +00:00
Edward Minnix III
8ae64e992c
Merge pull request #15929 from egregius313/egregius313/csharp/mad/source-node-clases-for-models
...
C#: Add classes extending `SourceNode` for local and stored source models
2024-03-15 11:06:14 -04:00
Joe Farebrother
8c5fff2d11
Update names and qldoc for params taint predicates
2024-03-15 14:43:29 +00:00
Mathias Vorreiter Pedersen
23cf99734a
C++: Add a new experimental query ' cpp/iterator-to-expired-container'.
2024-03-15 14:29:29 +00:00
Mathias Vorreiter Pedersen
f7c29e6bfb
C++: Expose some previously private classes from our models so they can be used in queries.
2024-03-15 14:21:39 +00:00
Rasmus Lerchedahl Petersen
cfbc3f73ec
Pyhton: add test for conflicting summaries
...
We noticed that when
- a function has more than one summary (with different charpred)
- one summary is subsumed by a subpath (or something happens around the function being extracted)
- the function is called multiple times(we needed at least three)
one of the summaries would no longer lead to flow.
2024-03-15 15:13:39 +01:00
Sim4n6
3acdd3382c
Update the expected file
2024-03-15 14:17:23 +01:00
Sim4n6
26a16b7857
use of a single var "op" of type Cmpop
2024-03-15 14:17:23 +01:00
Sim4n6
a717bf1b9d
Fix p tag in UnicodeDoS.qhelp
2024-03-15 14:17:23 +01:00
Sim4n6
af19a0342e
Fix UnicodeDoS vulnerability in CWE-770 code
2024-03-15 14:17:23 +01:00
Sim4n6
085d803b14
Fix UnicodeDoS vulnerability in CWE-770
2024-03-15 14:17:23 +01:00
Sim4n6
31dc542111
Update request parameter name in good_1() function
2024-03-15 14:17:23 +01:00
Sim4n6
70ebc58b4c
Refactor Unicode normalization code
2024-03-15 14:17:23 +01:00
Sim4n6
3d8868a6c3
Add routes for bad_5 and bad_6, and fix routes for good_3 and good_4
2024-03-15 14:17:23 +01:00
Sim4n6${{7*'7'}}
658b88e62f
Update python/ql/src/experimental/Security/CWE-770/UnicodeDoS.ql
...
update the Config API
Co-authored-by: yoff <lerchedahl@gmail.com >
2024-03-15 14:17:23 +01:00
Sim4n6
1f767b887e
Add some comments and docs
2024-03-15 14:17:23 +01:00
Sim4n6
5cc9170249
Add UnicodeDoS sink for werkzeug secure_filename
2024-03-15 14:17:23 +01:00
Sim4n6
342465057c
Add Unicode DoS (CWE-770)
2024-03-15 14:17:23 +01:00
Mathias Vorreiter Pedersen
19c9ea7e20
C++: Implement alias and side effect models for iterators.
2024-03-15 12:13:43 +00:00
Mathias Vorreiter Pedersen
a51fe4a00e
C++: Make the vector and iterator classes in 'ir.cpp' more realistic. This matches the one we use for dataflow tests.
2024-03-15 12:10:48 +00:00
Max Schaefer
d3e0a90ae5
Go: Mention raw string iterals in QHelp for go/incomplete-hostname-regexp.
2024-03-15 11:22:40 +00:00
Tom Hvitved
693c28a821
Merge pull request #15931 from hvitved/ql/remove-missing-override-query
...
QL4QL: Remove `MissingOverride` query
2024-03-15 11:28:41 +01:00
Owen Mansel-Chan
8e52483beb
Add df-manual models in manually modeled classes
2024-03-15 10:10:23 +00:00
Tom Hvitved
80649786c3
QL4QL: Remove MissingOverride query
2024-03-15 11:06:15 +01:00
Tom Hvitved
e7b00a7b42
Ruby: Add post-update argument nodes for string constants
2024-03-15 10:47:39 +01:00
Rasmus Wriedt Larsen
7eb4419342
Python: Restrict type-tracking content to only be precise
...
At least for now :)
2024-03-15 10:24:57 +01:00
Rasmus Wriedt Larsen
6babb2ff90
Python: Accept .expected for typetracking-summaries
2024-03-15 10:24:33 +01:00
Rasmus Wriedt Larsen
00f2a6a65e
Python: Update ssa-compute test expectations
2024-03-15 10:14:45 +01:00
Tony Torralba
171ff4d161
Merge pull request #15928 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2024-03-15 09:24:57 +01:00
Ed Minnix
71cf948650
Classes extending SourceNode for local and stored source models
...
Queries such as `cs/sql-injection` cast their source to a `SourceNode`
in order to describe them. For example:
```ql
import semmle.code.csharp.security.dataflow.flowsources.FlowSources
string getSourceType(DataFlow::Node source) {
result = source.(SourceNode).getSourceType()
}
```
Models as data source models are not included in `SourceNode` by
default, they must be wrapped with a class extending `SourceNode`.
This adds such classes, which wrap the
`sourceNode(DataFlow::Node,string)` predicate and assigns a
`getSourceType`.
2024-03-14 22:23:54 -04:00
github-actions[bot]
7f05743212
Add changed framework coverage reports
2024-03-15 00:16:16 +00:00
Joe Farebrother
f464f1b94e
Accept test output + fix qldoc typo
2024-03-14 22:25:37 +00:00
Joe Farebrother
b4ed77343b
Add change note + fix qldoc
2024-03-14 22:25:36 +00:00
Joe Farebrother
3e61be1b6a
Add test cases
2024-03-14 22:25:36 +00:00
Joe Farebrother
5333c75919
Model additional string attributes
2024-03-14 22:25:36 +00:00
Joe Farebrother
8c31b612ca
Model UploadedFile original_filename and read
2024-03-14 22:25:35 +00:00
Mathias Vorreiter Pedersen
6dddae0154
Merge pull request #15925 from MathiasVP/rename-dataflowutil-class
...
C++: Follow-up to #15918
2024-03-14 18:15:14 +00:00
Tony Torralba
ee3efbadae
Merge pull request #15924 from atorralba/atorralba/go/hardcoded-credentials-fix
...
Go: Consider more strings as hardcoded credentials
2024-03-14 16:52:34 +01:00
Tamás Vajk
945121de1b
Merge pull request #15922 from tamasvajk/buildless/namespace-extraction
...
C#: Handle namespace resolution error more gracefully
2024-03-14 16:19:48 +01:00
Michael Nebel
2280469564
Merge pull request #15902 from michaelnebel/csharp/uncontrolledformatstring
...
C#: Remove hard-coded local sources from the uncontrolled-format-string query.
2024-03-14 15:21:31 +01:00
Mathias Vorreiter Pedersen
7fdea27d33
C++: Rename 'IndirectTemporaryExpr' to 'IndirectOperandExprNode'.
2024-03-14 11:46:15 +00:00
Owen Mansel-Chan
2bd08838d4
Add manual neutral models for java.lang.ClassLoader
2024-03-14 11:40:06 +00:00
Owen Mansel-Chan
5b734c76b6
Add manual neutral models for java.util.Locale and its subclasses
2024-03-14 11:39:59 +00:00
Tony Torralba
20691e409c
Add change note
2024-03-14 11:56:43 +01:00
Mathias Vorreiter Pedersen
9aefdca7a7
Merge pull request #15875 from MathiasVP/bring-back-type-barriers-in-non-constant-format
...
C++: Clean up `cpp/non-constant-format`
2024-03-14 10:51:23 +00:00
Tony Torralba
30d906d42a
Merge pull request #15906 from atorralba/atorralba/java/jdk-neutrals
...
Java: Add more neutral JDK models
2024-03-14 11:07:06 +01:00
Rasmus Wriedt Larsen
7a3ee0f5f8
Python: Make IterableSequenceNode LocalSourceNode
...
We do this to remove the inconsistencies, and to be ready for a future
where type-tracking support content tracker of depth > 1.
It works because targets of loadSteps needs to be LocalSourceNodes
predicate loadStep(Node nodeFrom, LocalSourceNode nodeTo, Content content) {
2024-03-14 10:46:29 +01:00
Rasmus Wriedt Larsen
6ffaad1bc8
Python: Expand type-tracking tests with nested tuples
...
I was initially surprised to see that this didn't work, until I
remembered that type-tracking only works with content of depth 1.
2024-03-14 10:44:25 +01:00
Rasmus Wriedt Larsen
af8cef5b53
Python: Fixup deprecated type-tracker API
2024-03-14 10:43:28 +01:00
Rasmus Wriedt Larsen
2b09b084e0
Python: Add change-note
2024-03-14 10:43:28 +01:00
Rasmus Wriedt Larsen
7de304bf16
Python: Add proper type-tracking tests for content
...
Instead of just relying on the call-graph tests
2024-03-14 10:43:28 +01:00
Rasmus Wriedt Larsen
fa0c4e18fc
Python: Expand dict-content tt test even more
...
While it might be useful to track content to any lookup, it's not
something we do right now.
2024-03-14 10:43:28 +01:00
Rasmus Wriedt Larsen
4d78762ba8
Python: Ignore consistency failure
2024-03-14 10:43:28 +01:00
Rasmus Wriedt Larsen
8a7ffac19c
Python: Accept consistency failure
2024-03-14 10:43:28 +01:00
Rasmus Wriedt Larsen
92729dbbd6
Python: Support iterable unpacking in type-tracking
2024-03-14 10:42:38 +01:00
Rasmus Wriedt Larsen
0cf3fe4a4c
Python: Expand dict update tests
2024-03-14 10:42:38 +01:00
Rasmus Wriedt Larsen
dac2b57bb0
Python: type-track through dict-updates
2024-03-14 10:42:38 +01:00
Rasmus Wriedt Larsen
73fe596753
Python: type-tracking through dictionary construction
2024-03-14 10:42:38 +01:00
Rasmus Wriedt Larsen
ece8245a4b
Python: type-track through tuple content
2024-03-14 10:42:38 +01:00
Rasmus Wriedt Larsen
a95bb7c86b
Python: Expand function reference in content test
2024-03-14 10:42:38 +01:00
Rasmus Wriedt Larsen
7721fb3331
Python: Setup shared read/store steps
2024-03-14 10:42:37 +01:00
Rasmus Wriedt Larsen
636cf611ae
Python: Allow general content in type-tracker
...
This should not result in many changes, since store/load steps are still
only implemented for attributes.
2024-03-14 10:42:37 +01:00
Rasmus Wriedt Larsen
fc8caa66c8
Python: Prepare for general content in type-tracker
...
Due to the char-pred of Content, this change should keep exactly the
same behavior as before.
2024-03-14 10:42:37 +01:00
Mathias Vorreiter Pedersen
dacf7d73d9
Merge pull request #15918 from MathiasVP/fix-as-expr-for-temps
...
C++: Fix dataflow node <> expression problem on prvalues
2024-03-14 09:38:46 +00:00
Tony Torralba
87b2dcc892
Adjust test expectations
2024-03-14 10:25:04 +01:00
Mathias Vorreiter Pedersen
a24432bacc
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll
2024-03-14 09:23:33 +00:00
Mathias Vorreiter Pedersen
c375497fa5
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll
2024-03-14 09:16:04 +00:00
Tony Torralba
d8c0ab8e1f
Go: Consider more strings as hardcoded credentials
2024-03-14 10:11:39 +01:00
Tony Torralba
9d44045e6f
Adjust test expectations
2024-03-14 09:41:34 +01:00
Tony Torralba
eecab9122a
Recognize the model generator involvement in the models' provenances
2024-03-14 08:56:23 +01:00
Tony Torralba
5b88b8a3ed
A few more neutrals
2024-03-14 08:53:58 +01:00
Tony Torralba
36f6a6fb10
Model more EnumSet methods as neutrals
2024-03-14 08:46:43 +01:00
Tamas Vajk
b5f349bd2c
C#: Handle namespace resolution error more gracefully
2024-03-14 08:37:22 +01:00
Jeroen Ketema
b2e0485c94
Merge pull request #15908 from jketema/destructors12
...
C++: suppress destructors with reuse expressions until proper support is added
2024-03-14 07:41:59 +01:00
Mathias Vorreiter Pedersen
a839c92979
C++: Fix mapping issue between dataflow nodes and expressions when the expression is a prvalue.
2024-03-13 22:59:09 +00:00
Mathias Vorreiter Pedersen
2fc0922b29
Merge branch 'main' into bring-back-type-barriers-in-non-constant-format
2024-03-13 22:46:35 +00:00
Mathias Vorreiter Pedersen
d1c253b519
C++: Accept test changes.
2024-03-13 22:41:32 +00:00
Mathias Vorreiter Pedersen
61597f5ac7
C++: This commit does two things:
...
1. It fixes a logic error in the cannotContainString predicate.
2. It reverts the changes to the `isSource` predicate that required the external
function to be within the source root.
The change to `isSource` was meant to fix the a performance problem that occurred
because of the logic error in the cannotContainString predicate. However, now that
the logic error is fixed this is no longer necessary 🎉
2024-03-13 22:40:06 +00:00
erik-krogh
ef8368cfc4
fix typo
2024-03-13 22:37:13 +01:00
Jami Cogswell
1b01f26d09
Java: adjust BarrierPrefix to handle prepended chars
2024-03-13 16:28:45 -04:00
Jami Cogswell
5ac453eb38
Java: add spurious test case for StringBuilder.append
2024-03-13 16:28:45 -04:00
Jami Cogswell
04d27f2d65
Java: adjust prefix barriers
2024-03-13 16:28:44 -04:00
Jami Cogswell
e99cea340b
Java: update UrlPathBarrier to include FollowsBarrierPrefix
2024-03-13 16:28:44 -04:00
Jami Cogswell
c5a59d6c51
Java: add QLDoc
2024-03-13 16:28:44 -04:00
Jami Cogswell
7310c155e2
Java: rename SpringUrlForwardSink
2024-03-13 16:28:44 -04:00
Jami Cogswell
a002674587
Java: clean up comments on test cases
2024-03-13 16:28:44 -04:00
Jami Cogswell
a8075969d8
Java: add QLDocs to UrlPathBarrier code
2024-03-13 16:28:44 -04:00
Jami Cogswell
042dcf9cd9
Java: some updates to UrlPathBarrier code
2024-03-13 16:28:44 -04:00
Jami Cogswell
052452b186
Java: create UrlDecodeMethod
2024-03-13 16:28:44 -04:00
Jami Cogswell
d220b3a298
Java: some updates to test cases
2024-03-13 16:28:43 -04:00
Jami Cogswell
d9772c1880
Java: update change note
2024-03-13 16:28:43 -04:00
Jami Cogswell
43b49628fc
Java: use new 'SimpleTypeSanitizer', and update some non-extending subtype relationships
2024-03-13 16:28:43 -04:00
Jami Cogswell
2708e53c7f
Java: remove redundant imports
2024-03-13 16:28:43 -04:00
Jami Cogswell
f573032b2e
Java: remove todo comments from ext files
2024-03-13 16:28:43 -04:00
Jami Cogswell
911a61df22
Java: initial update of barrier and test cases to remove FN
2024-03-13 16:28:42 -04:00
Jami Cogswell
c8ec301793
Java: add change note
2024-03-13 16:28:42 -04:00
Jami Cogswell
e75c96c0f9
Java: combine test cases; add test for StaplerResponse.forward
2024-03-13 16:28:41 -04:00
Jami Cogswell
5fa63ab5c2
Java: update/add some TODO comments
2024-03-13 16:28:41 -04:00
Jami Cogswell
c331393cfd
Java: update qhelp
2024-03-13 16:28:41 -04:00
Jami Cogswell
09bc21dbd3
Java: rename 'UnsafeUrlForward' to 'UrlForward'
2024-03-13 16:28:41 -04:00
Jami Cogswell
6e7c05467b
Java: update query metadata and alert message
2024-03-13 16:28:41 -04:00
Jami Cogswell
5a9d7552b3
Java: add some comments and minor code reorg
2024-03-13 16:28:41 -04:00
Jami Cogswell
1da1e896cb
Java: convert SpringModelAndViewSink to MaD
2024-03-13 16:28:41 -04:00
Jami Cogswell
8d66097483
Java: switch StaplerResponse.forward from request-forgery sink to url-forward sink
2024-03-13 16:28:41 -04:00
Jami Cogswell
42e3825ea3
Java: convert RequestDispatcherSink to MaD
2024-03-13 16:28:40 -04:00
Jami Cogswell
4ff884e26c
Java: remove more path-injection related classes (will maybe add some of these back in a separate PR)
2024-03-13 16:28:40 -04:00
Jami Cogswell
2a682995ae
Java: move MaD models to correct files, delete ones that already exist
2024-03-13 16:28:40 -04:00
Jami Cogswell
915e106ab3
Java: remove path-injection related models and tests for now
2024-03-13 16:28:40 -04:00
Jami Cogswell
35a083ae9e
Java: update test cases to use inline expectations
2024-03-13 16:28:40 -04:00
Jami Cogswell
2793f28428
Java: move config to Query.qll file
2024-03-13 16:28:40 -04:00
Jami Cogswell
0d38a9625e
Java: copy files from experimental
2024-03-13 16:28:39 -04:00
Jeroen Ketema
866a3934d4
C++: suppress destructors with reuse expressions until proper support is added
2024-03-13 20:17:00 +01:00
Tom Hvitved
54fa8181da
Address review comment
2024-03-13 20:03:01 +01:00
Jeroen Ketema
67b3670d06
Merge pull request #15901 from jketema/destructors11
...
C++: Introduce re-use expressions in the database scheme
2024-03-13 18:27:28 +01:00
Tony Torralba
039bea1625
Java: Add more neutral JDK models
...
This is similar to https://github.com/github/codeql/pull/15766 , in the sense that it adds neutral models to prevent the model generator from generating summaries for them. These models were spotted while evaluating https://github.com/github/codeql/pull/14919 .
2024-03-13 16:59:38 +01:00
Mathias Vorreiter Pedersen
b638d4d0ba
Merge pull request #15900 from MathiasVP/glib-alloc-and-dealloc
...
C++: Add models for `GLib` allocation and deallocation
2024-03-13 15:29:46 +00:00
Erik Krogh Kristensen
bd121b98ae
Merge pull request #15893 from erik-krogh/more-filter-taint
...
JS: allow more flow through .filter()
2024-03-13 16:19:28 +01:00
Rasmus Lerchedahl Petersen
533b63743b
Python: test MaD syntax for keyword argument
...
use the combined positional/keyword syntax as
that is what we will probably mostly use.
2024-03-13 15:28:34 +01:00
Tom Hvitved
6c0ed28e6b
Python: Implement new data flow interface
2024-03-13 14:41:57 +01:00
Tom Hvitved
02ae2d1520
Java: Implement new data flow interface
2024-03-13 14:41:57 +01:00
Tom Hvitved
e4a4c18166
Go: Implement new data flow interface
2024-03-13 14:41:57 +01:00
Michael Nebel
560b355e0c
C#: Remove hard-coded local sources from the uncontrolled-format-string query.
2024-03-13 14:26:30 +01:00
Erik Krogh Kristensen
53502a8662
Merge pull request #15510 from yoff/ts-54
...
JS: Add support for TS 5.4
2024-03-13 14:22:24 +01:00
Jeroen Ketema
8d5eab401d
C++: Introduce re-use expressions in the database scheme
2024-03-13 13:28:27 +01:00
Tom Hvitved
16cef92106
JS: Add DataFlow::Node.getLocation
2024-03-13 13:06:16 +01:00
Mathias Vorreiter Pedersen
8d504d8b32
Merge pull request #15899 from jketema/destructors10
...
C++: Add IR tests for the destruction of temporaries
2024-03-13 11:56:04 +00:00
Mathias Vorreiter Pedersen
465c3c18e3
C++: Add change note.
2024-03-13 11:49:26 +00:00
Asger F
c5a02dae2b
Merge pull request #15768 from asgerf/js/amd-pseudo-deps
...
JS: Do not treat AMD pseudo-dependencies as imports
2024-03-13 12:49:17 +01:00
Mathias Vorreiter Pedersen
3ea39a2553
C++: Add some query tests.
2024-03-13 11:39:34 +00:00
Mathias Vorreiter Pedersen
bcd36b1994
C++: Recognize glib allocations and deallocations.
2024-03-13 11:39:15 +00:00
Ian Lynagh
adefdfd59f
Merge pull request #15889 from igfoo/igfoo/k2exprs
...
Kotlin 2: Accept more changes in the exprs test
2024-03-13 11:34:10 +00:00
erik-krogh
129286aa1c
allow more flow through .filter()
2024-03-13 12:03:00 +01:00
Jeroen Ketema
3ef1ab49ea
C++: Add IR tests for the destruction of temporaries
2024-03-13 12:00:02 +01:00
erik-krogh
013ed7adb3
Java: update the url-redirection in the same style as the C# qhelp
2024-03-13 11:58:16 +01:00
yoff
b5c0fbb827
Merge pull request #15776 from RasmusWL/tt-consistency
...
Python: Add type-tracking consistency query
2024-03-13 11:11:07 +01:00
Tom Hvitved
4085c8ec8f
Merge pull request #15866 from hvitved/ruby/orm-tracking-ap-limit
...
Ruby: Lower access path limit to 1 for `OrmTracking`
2024-03-13 10:57:09 +01:00
Harry Maclean
806f42ef72
Ruby: Update change note
2024-03-13 09:54:17 +00:00
Harry Maclean
dd5eb982ec
Merge pull request #15524 from hmac/hmac-process-spawn
...
Ruby: Add some more command injection sinks
2024-03-13 09:53:10 +00:00
Tony Torralba
2fd2b4c874
Merge pull request #15891 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2024-03-13 09:51:22 +01:00
github-actions[bot]
cff2cdb9e4
Add changed framework coverage reports
2024-03-13 00:15:53 +00:00
Edward Minnix III
c190dd21db
Merge pull request #15877 from egregius313/egregius313/csharp/mad/sources/windows-registry
...
C#: Add source models for values from the Windows registry
2024-03-12 16:41:42 -04:00
Edward Minnix III
d54489931c
Merge pull request #15869 from egregius313/egregius313/java/fix/parcelfiledescriptor-open-sink
...
Java: Add path-injection sink for `ParcelFileDescriptor::open`
2024-03-12 16:39:20 -04:00
intrigus-lgtm
f70a39e72f
[cpp-docs] Fix 404 link in guards library doc.
2024-03-12 19:59:26 +01:00
Erik Krogh Kristensen
863e3f79e5
Merge pull request #15731 from erik-krogh/java-url
...
Java: More sanitizers for request-forgery
2024-03-12 19:31:52 +01:00
Ian Lynagh
0e94aa0eb5
Kotlin 2: Accept more changes in the exprs test
2024-03-12 16:42:37 +00:00
Ian Lynagh
8d1ee10981
Merge pull request #15876 from igfoo/igfoo/buildless-java-complete
...
Java: Accept test changes
2024-03-12 16:12:58 +00:00
Tamás Vajk
be2ce17376
Merge pull request #15881 from tamasvajk/buildless/fix-fallback
...
C#: Deduplicate not yet restored package names
2024-03-12 16:08:16 +01:00
Mathias Vorreiter Pedersen
ab6e2f9364
C++: Accept test regression.
2024-03-12 15:04:49 +00:00
erik-krogh
f613823047
add explicit QLDoc that any method named "contains" is matched
2024-03-12 15:25:27 +01:00
erik-krogh
35aae0a981
move changenote to src/
2024-03-12 15:22:57 +01:00
Erik Krogh Kristensen
b53ae77c56
expand change-note
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2024-03-12 15:22:17 +01:00
Mathias Vorreiter Pedersen
51f5740707
C++: Exclude functions that aren't declared inside the source root. This fixes performance on ImageMagick.
2024-03-12 14:20:16 +00:00
Mathias Vorreiter Pedersen
6a563c161e
C++: Simplify the definition of 'isNonConst'. On ImageMagick I get the same exact sources before and after.
2024-03-12 14:20:09 +00:00
Mathias Vorreiter Pedersen
179a7d500e
C++: Handle 'wchar_t' types that may be defined as unsigned short in C. This brings back SAMATE results.
2024-03-12 14:19:48 +00:00
Tamas Vajk
b07b0762f2
Adjust based on code review feedback
2024-03-12 15:07:58 +01:00
erik-krogh
74876ff49b
add change-note
2024-03-12 15:07:36 +01:00
erik-krogh
52f71e4553
small fixes based on review
2024-03-12 15:07:29 +01:00
Ian Lynagh
c2aa334465
Java: Accept test changes
2024-03-12 14:03:02 +00:00
Tom Hvitved
695e728ed5
Ruby: Lower access path limit to 1 for OrmTracking
2024-03-12 14:58:29 +01:00
Tom Hvitved
dddba3228b
Merge pull request #15867 from hvitved/dataflow/ap-limit
...
Data flow: Add `ConfigSig::accessPathLimit`
2024-03-12 14:57:51 +01:00
erik-krogh
6be0ed1dc3
narrow the version specifier used for TypeScript
2024-03-12 13:42:58 +01:00
Tom Hvitved
d7790faece
Address review comments
2024-03-12 13:34:55 +01:00
erik-krogh
95a5ec7f27
add test that the new Object.groupBy method has a type
2024-03-12 13:22:11 +01:00
Michael Nebel
50851210ea
Merge pull request #15794 from michaelnebel/csharp/removecil
...
C#: Delete the CIL extractor.
2024-03-12 12:48:41 +01:00
Mathias Vorreiter Pedersen
1a42e55095
Merge pull request #15820 from MathiasVP/add-type-confusion-query
...
C++: Add a new query for detecting type confusion vulnerabilities
2024-03-12 10:29:22 +00:00
Tom Hvitved
0e0b73a5e6
Address review comment
2024-03-12 11:22:04 +01:00
Michael Nebel
eb62c033aa
C#: Remove the cil extractor option.
2024-03-12 11:12:56 +01:00
Michael Nebel
f59aaf1d75
C#: Add change note.
2024-03-12 11:12:55 +01:00
Michael Nebel
2e5155d1f8
C#: Remove all CIL related tests.
2024-03-12 11:12:55 +01:00
Michael Nebel
af06202241
C#: Cleanup implementation.
2024-03-12 11:12:55 +01:00
Michael Nebel
bf27f203d5
C#: Remove CIL extractor projects.
2024-03-12 11:12:55 +01:00
Tamas Vajk
1633673cc2
C#: Deduplicate not yet restored package names
2024-03-12 09:22:38 +01:00
Angela P Wen
ca12348ecb
Merge pull request #15880 from github/sitedocs/2.16.4-2
...
Add changelog for 2.16.4
2024-03-11 14:59:53 -07:00
Pierre
d1f8336be6
Add changelog for 2.16.4
2024-03-11 22:21:25 +01:00
Ed Minnix
7745c2c2b7
Change note
2024-03-11 17:00:12 -04:00
Tom Hvitved
8d767862dc
Swift: Implement new data flow interface
2024-03-11 20:56:38 +01:00
Tom Hvitved
1c57e99686
C++: Implement new data flow interface
2024-03-11 20:56:38 +01:00
Tom Hvitved
257686eb9a
C#: Implement new data flow interface
2024-03-11 20:56:38 +01:00
Tom Hvitved
4291290277
Ruby: Implement new data flow interface
2024-03-11 20:56:38 +01:00
Tom Hvitved
e82e3180f0
Data flow: Replace hasLocationInfo with getLocation
2024-03-11 20:56:38 +01:00
Mathias Vorreiter Pedersen
9854ed4b89
C++: Delete comment.
2024-03-11 18:54:53 +00:00
Mathias Vorreiter Pedersen
2345907a52
C++: Reintroduce the 'cannotContainString' optimization that was removed in #15516 .
2024-03-11 18:49:03 +00:00
Mathias Vorreiter Pedersen
f97b6e2848
C++: Stop conflating pointers and indirections in the query.
2024-03-11 18:48:19 +00:00
Mathias Vorreiter Pedersen
32e532ff3c
C++: Some cleanup to avoid conflating the case of a function returning something as a return value, and a function updating one of its arguments.
2024-03-11 18:42:42 +00:00
Ed Minnix
bc745dfd5e
Windows registry sources
2024-03-11 13:55:34 -04:00
erik-krogh
9f410eb2d6
Merge branch 'main' into ts-54
2024-03-11 18:07:52 +01:00
Henry Mercer
c325ff8a23
Mark lines of code queries as telemetry queries
...
The new file coverage metrics are available in all supported GHES
versions. This PR tags lines of code queries as telemetry queries. Lines
of code information will still be available in the SARIF file, but it
will no longer be displayed in the logging output of the CLI.
The one exception is the metric queries for Java/Kotlin that provides
separate lines of code information for Java and Kotlin. I've kept these
since separate file coverage information for languages like Java and
Kotlin is only available for GHES 3.12 and later.
2024-03-11 16:40:31 +00:00
Rasmus Lerchedahl Petersen
d73f43477f
update ts to released version 54
2024-03-11 16:32:19 +01:00
Ed Minnix
76aeee2820
Change note
2024-03-11 10:34:15 -04:00
Ed Minnix
61dbe26858
Add sinks for android.os.ParcelFileDescriptor
2024-03-11 10:31:51 -04:00
Mathias Vorreiter Pedersen
7b0df57d7a
C++: Remove the two configurations that depend on flow state to speed up performance on ChakraCore.
2024-03-11 13:56:22 +00:00
Rasmus Wriedt Larsen
800351c7b7
Merge branch 'main' into tt-consistency
2024-03-11 14:12:09 +01:00
Tom Hvitved
da66281fef
Sync files
2024-03-11 13:02:04 +01:00
Tom Hvitved
7a39f077d9
Data flow: Add ConfigSig::accessPathLimit
2024-03-11 13:01:58 +01:00
Rasmus Wriedt Larsen
adf5a4b1e4
Python: Fix internal consistency failures
2024-03-08 14:13:47 +01:00
Rasmus Wriedt Larsen
87b6592dbc
Python: Accept inconsistency for missing use-use flow
...
At least until we have a proper fix
2024-03-08 13:34:26 +01:00
Rasmus Wriedt Larsen
8fe483d9d8
Python: Add example of missing use-use flow
...
(see PR for more detailed description)
2024-03-08 13:26:01 +01:00
Tom Hvitved
24e35f6f3d
Update expected test output
2024-03-08 10:00:43 +01:00
Tom Hvitved
63bb772ef9
Variable capture: Avoid overlapping and false-positive data flow paths
2024-03-08 10:00:42 +01:00
Tom Hvitved
e793a1e9fe
Ruby: Add variable capture spurious flow test
2024-03-08 10:00:42 +01:00
Mathias Vorreiter Pedersen
761f6d3a7e
C++: Disable field flow from the 'cpp/type-confusion' query to fix performance on ChakraCore.
2024-03-07 15:24:04 -08:00
Mathias Vorreiter Pedersen
4f9bdca4f0
C++: Optimize.
2024-03-07 13:08:26 -08:00
Mathias Vorreiter Pedersen
cedbfbe7ea
C++: Use a more generous definition of compatible types.
2024-03-07 10:50:20 -08:00
Mathias Vorreiter Pedersen
9e77b89885
Update TypeConfusion.qhelp
...
Co-authored-by: hubwriter <hubwriter@github.com >
2024-03-07 08:33:49 -08:00
Mathias Vorreiter Pedersen
b876117ecc
C++: Add more QLDoc.
2024-03-06 22:25:04 -08:00
Mathias Vorreiter Pedersen
01fc7432cb
C++: Add more tests.
2024-03-06 22:17:33 -08:00
Mathias Vorreiter Pedersen
bf84f3a936
C++: Add FN.
2024-03-06 21:19:17 -08:00
Mathias Vorreiter Pedersen
3295d5cb9f
C++: Add more QLDoc.
2024-03-06 21:17:57 -08:00
Mathias Vorreiter Pedersen
fc9919a5b6
C++: Add a test that exercise the 'last field' check.
2024-03-06 21:17:55 -08:00
Mathias Vorreiter Pedersen
c2db5f490e
C++: Add more FNs and FPs to show examples of where the 'successor typing' strategy fails.
2024-03-06 21:16:51 -08:00
Mathias Vorreiter Pedersen
cd57cd0d8a
C++: Add qhelp reference.
2024-03-06 21:15:27 -08:00
Mathias Vorreiter Pedersen
cf4c8eb517
C++: Add more tests.
2024-03-06 21:15:25 -08:00
Mathias Vorreiter Pedersen
6dc0fa515d
C++: Add change note.
2024-03-06 21:11:36 -08:00
Mathias Vorreiter Pedersen
8ae6fa5366
C++: Add a new query 'cpp/type-confusion' for detecting type confusion vulnerabilities.
2024-03-06 21:11:32 -08:00
Angela P Wen
31f1f50a64
Merge pull request #15834 from github/post-release-prep/codeql-cli-2.16.4
...
Post-release preparation for codeql-cli-2.16.4
2024-03-06 18:40:08 -08:00
github-actions[bot]
dc9092c9ec
Post-release preparation for codeql-cli-2.16.4
2024-03-06 22:19:33 +00:00
Angela P Wen
2daf50500c
Merge pull request #15833 from github/release-prep/2.16.4
...
Release preparation for version 2.16.4
2024-03-06 13:00:06 -08:00
github-actions[bot]
2f058ffb4d
Release preparation for version 2.16.4
2024-03-06 20:56:51 +00:00
Angela P Wen
711c474049
Merge pull request #15832 from github/revert-15814-release-prep/2.16.4
...
Revert "Release preparation for version 2.16.4"
2024-03-06 12:53:52 -08:00
Angela P Wen
ce31f8641a
Revert "Release preparation for version 2.16.4"
2024-03-06 12:07:33 -08:00
Angela P Wen
727a38a409
Merge pull request #15814 from github/release-prep/2.16.4
...
Release preparation for version 2.16.4
2024-03-05 10:16:21 -08:00
github-actions[bot]
661e68dab5
Release preparation for version 2.16.4
2024-03-05 18:13:58 +00:00
Angela P Wen
7e2a775a2a
Merge pull request #15813 from github/revert-15801-release-prep/2.16.4
...
Revert "Release preparation for version 2.16.4"
2024-03-05 09:20:42 -08:00
Angela P Wen
967963a653
Revert "Release preparation for version 2.16.4"
2024-03-05 08:53:33 -08:00
Michael B. Gale
eaef544a26
Merge pull request #15810 from github/mbg/go/fix-initialised-module-names
2024-03-05 15:34:07 +00:00
Michael B. Gale
40ff75db07
Go: Update list of expected files for single-go-mod-and-go-files-not-under-it test
2024-03-05 14:56:51 +00:00
Michael B. Gale
a8d240dd72
Go: Add integration test for mixed layout project
2024-03-05 14:08:16 +00:00
Michael B. Gale
ac394dc80c
Go: Better check for path prefixes
2024-03-05 13:46:33 +00:00
Michael B. Gale
b1e0bc03ab
Go: Fix check for whether it is safe to initialise a go.mod file in a given directory
2024-03-05 12:48:21 +00:00
Michael B. Gale
367ecf75d5
Go: Use import path for auto-generated Go module names
2024-03-05 12:48:21 +00:00
Michael B. Gale
2aa093c95c
Go: Move getImportPath to shared util package
2024-03-05 12:48:19 +00:00
Harry Maclean
148241183a
Ruby: update changenote
2024-03-05 10:20:25 +00:00
Harry Maclean
91cb2a37fd
Ruby: Model Process.exec
2024-03-05 10:19:22 +00:00
Harry Maclean
179aaa1342
Ruby: model Open4.popen4ext
2024-03-05 09:35:18 +00:00
Harry Maclean
87f3b43576
Ruby: remove deprecated private class
2024-03-05 08:28:16 +00:00
Angela P Wen
92e91f596f
Merge pull request #15801 from github/release-prep/2.16.4
...
Release preparation for version 2.16.4
2024-03-04 10:57:55 -08:00
github-actions[bot]
a67218a027
Release preparation for version 2.16.4
2024-03-04 17:42:08 +00:00
Angela P Wen
19539ab6d8
Merge pull request #15800 from github/angelapwen/fix-ruby-changenotes
...
Fix Markdown formatting on Ruby changenotes
2024-03-04 08:52:13 -08:00
Angela P Wen
2b2ea597ce
Fix formatting on changenotes
2024-03-04 16:42:38 +00:00
Rasmus Wriedt Larsen
7c60562132
Python: Ignore IterableSequenceNode inconsistencies
2024-03-01 14:22:18 +01:00
Rasmus Wriedt Larsen
7e3e5db3db
Python: Add example of consistency failure
2024-03-01 14:21:16 +01:00
Rasmus Wriedt Larsen
bcd5c08ebd
Python: Ignore match-related inconsistencies
2024-03-01 14:15:32 +01:00
Rasmus Wriedt Larsen
5d212514c6
Python: Add example of consistency failure
2024-03-01 14:07:08 +01:00
Rasmus Wriedt Larsen
1658a1cb80
Python: Ignore SynthDictSplatArgumentNode failures
2024-03-01 14:00:06 +01:00
Rasmus Wriedt Larsen
bff95c4c1b
Python: Add example of consistency failure
2024-03-01 13:58:33 +01:00
Rasmus Wriedt Larsen
ff5f794750
Python: Exclude synth preupdate nodes from tt-consistency
...
... and that should be it 👍 (so that's why I'm allowing the tests to
run on all data-flow nodes again)
2024-03-01 10:27:29 +01:00
Rasmus Wriedt Larsen
bbe8c6dcaa
Python: Remove synth postupdate nodes from tt-consistency
2024-03-01 10:23:50 +01:00
Rasmus Wriedt Larsen
9f01ea68f7
Python: Add type-tracking consistency query
...
For now I'm only ignoring stdlib nodes, so it's easy for reviewer to see
why we need to have more excludes :)
2024-03-01 10:19:49 +01:00
Asger F
853397361f
JS: Do not treat AMD pseudo-dependencies as file paths
2024-02-29 10:23:28 +01:00
Asger F
052a8e7f81
JS: Avoid spurious recursion in AMD
2024-02-29 10:23:28 +01:00
Mathias Vorreiter Pedersen
2fd57f6ee7
Shared: Remove cached annotation.
2024-02-28 16:24:21 +00:00
Harry Maclean
d0e7fbc871
Ruby: Add changenote
2024-02-27 09:47:51 +00:00
erik-krogh
b4b5ae2a2c
add some request-forgery sanitizers, inspired from C#
2024-02-27 10:05:26 +01:00
Mathias Vorreiter Pedersen
690fdc076d
Shared: Add change note.
2024-02-26 17:13:32 +00:00
Mathias Vorreiter Pedersen
1d4c889ab8
Java: Use the shared type-flow library.
2024-02-26 17:13:32 +00:00
Mathias Vorreiter Pedersen
9ec17e6338
Shared: Pull out the shared parts of Java's type flow library into a shared module.
2024-02-26 17:13:27 +00:00
Rasmus Lerchedahl Petersen
3eb9491cb4
python: rewrite HardcodedCredentials away from PointsTo
...
- `ModuleValue.attr` and `ClassValue.lookup` are approximated by `Function.getName`
- `ClassValue.getName` is apprximated by `Class.getName`
- `Module::named` is approximated by `Module.getName`
- `Value::named` is approximated by `Builtins::likelyBuiltin`
- `FunctionValue.getNamedArgumentForCall` is approximated by `ArgumentNode.argumentOf`
2024-02-26 17:18:40 +01:00
Harry Maclean
8bed3fbed4
Ruby: Add basic model for Terrapin library
2024-02-26 11:32:41 +00:00
Harry Maclean
9d13a1ff51
Ruby: Add model for Process.spawn
2024-02-26 11:26:38 +00:00
Harry Maclean
d1847566b6
Ruby: Ql4QL fix
2024-02-26 11:26:38 +00:00
Harry Maclean
beef9965cc
Ruby: Model Open4 library
...
Also remove duplicate modeling of Process.spawn.
2024-02-26 11:26:38 +00:00
Harry Maclean
a03c06802e
Ruby: Add some more command injection sinks
2024-02-26 11:26:38 +00:00
Harry Maclean
dd092fd18f
Ruby: Fix CSRF test
2024-02-26 11:02:54 +00:00
erik-krogh
0056067a17
Merge branch 'main' into ts-54
2024-02-25 21:20:43 +01:00
erik-krogh
083f56921c
update to 5.4.1-rc
2024-02-25 21:20:41 +01:00
Harry Maclean
f5be407989
Ruby: deprecate old ProtectFromForgeryCall class
2024-02-23 12:02:26 +00:00
Harry Maclean
7b3f1a0982
Ruby: fix comment
2024-02-23 11:14:52 +00:00
Harry Maclean
081c1201ed
Ruby: Make csrf query more specific
...
CSRF protection only needs to be explicitly enabled on Rails
applications < 5.2 _or_ those that don't include a `load_defaults` call
with a version >= 5.2.
2024-02-23 11:13:17 +00:00
Harry Maclean
3ee425cc47
Ruby: Identify ActionController::API
...
`ActionController::API < ActionController::Base` is a base controller
class, so we should recognise it as such.
2024-02-23 11:13:17 +00:00
Harry Maclean
32b775fdc3
Ruby: reduce duplicate alerts for csrf query
...
Only generate an alert on the top-most vulnerable Rails controller in
the controller tree.
2024-02-23 11:13:17 +00:00
Harry Maclean
1fbf177b54
Ruby: QLDoc fix
2024-02-23 11:13:16 +00:00
Harry Maclean
3499d169f9
Ruby: Add missing QLDoc
2024-02-23 11:13:16 +00:00
Harry Maclean
0597b2ed1b
Ruby: recognise csrf_meta_tag
...
csrf_meta_tag is an alias for csrf_meta_tags, retained for backwards
compatibility.
2024-02-23 11:13:16 +00:00
Harry Maclean
f19a5a9837
Ruby: Add tests for Gemfile modeling
2024-02-23 11:13:16 +00:00
Harry Maclean
3c69ab10f2
Ruby: Restrict rb/csrf-protection-not-enabled
...
This query only applies to codebases using Ruby on Rails < 5.2, or where
there is no call to `csrf_meta_tags` in the base ERb template.
2024-02-23 11:13:15 +00:00
Harry Maclean
581072721c
Ruby: Add change note
2024-02-23 11:13:15 +00:00
Harry Maclean
6d6f8ba512
Ruby: Make CSRF query more sensitive
...
Generate an alert for every controller class that doesn't have or
inherity a `protect_from_forgery` setting.
2024-02-23 11:13:15 +00:00
Harry Maclean
49d826f667
Ruby: Add a query for CSRF protection not enabled
...
Specifically in Rails apps, we look for root ActionController classes
without a call to `protect_from_forgery`.
2024-02-23 11:13:14 +00:00
Rasmus Lerchedahl Petersen
3b1751dc8a
Update supported versions
2024-02-02 11:45:21 +01:00
Rasmus Lerchedahl Petersen
f433039a25
Add change note
2024-02-02 11:23:35 +01:00
Rasmus Lerchedahl Petersen
f275531542
Add support for TS 5.4-beta
2024-02-02 11:03:44 +01:00