Jonas Jensen
db45b29806
Merge pull request #4102 from rdmarsh2/rdmarsh2/cpp/input-iterators-1
...
C++: Basic input iterator models
2020-09-02 07:57:35 +02:00
Robert Marsh
015bf6e879
C++: Add reverse flow when this ptr is returned
2020-09-01 13:08:44 -07:00
Robert Marsh
2a57fa22e3
C++: handle reference args to iterator operators
2020-09-01 12:52:01 -07:00
Mathias Vorreiter Pedersen
aa3b268525
Merge pull request #4162 from jbj/ssa-ref-parameters
...
C++: SSA and range analysis for reference parameters
2020-09-01 11:48:41 +02:00
Robert Marsh
87b657054f
C++: reverse flow for iterator operator qualifiers
2020-08-31 14:53:05 -07:00
Robert Marsh
d4cf92e374
C++: Improve non-member iterator operator detection
2020-08-31 14:52:29 -07:00
Robert Marsh
10005dd199
Merge branch 'main' into rdmarsh2/cpp/input-iterators-1Merge changes to input/output models for functions that return thisand resolve conflicting changes to taint tests.
2020-08-31 14:49:01 -07:00
Jonas Jensen
2c613a72b9
C++: Autoformat
2020-08-28 14:56:19 +02:00
lcartey@github.com
a4cb774932
C++: Support dereferenced variables in simple range analysis
...
- Support inference of guards on reference variables
- Support type bounds for reference variables
- Support reference variables when widening
- Support reference variables when determining arithmetic assignment
2020-08-28 14:52:36 +02:00
Jonas Jensen
a3a3423db2
C++: Treat reference parameters as non-references
2020-08-28 14:33:01 +02:00
Rasmus Lerchedahl Petersen
6b8d9f2a77
Merge branch 'main' of github.com:github/codeql into SharedDataflow_PostUpdateNodes
2020-08-28 13:01:14 +02:00
Rasmus Lerchedahl Petersen
9503c5d8bb
Python: Add post-update nodes
2020-08-28 12:59:11 +02:00
Jonas Jensen
55d7ac88f9
Merge pull request #4148 from geoffw0/vecextra
...
C++: Improvements to string and vector models.
2020-08-28 10:05:42 +02:00
Robert Marsh
2a6c624407
C++: fix up some iterator taint flows
2020-08-27 10:27:53 -07:00
Geoffrey White
9b3da1f6c7
C++: Autoformat.
2020-08-27 16:55:45 +01:00
Geoffrey White
927a4faa58
C++: Remove the non-reference case that we shouldn't need.
2020-08-27 15:42:40 +01:00
Geoffrey White
071b303ea0
C++: Make the other versions consistent with this.
2020-08-27 15:24:48 +01:00
Geoffrey White
865d91de80
C++: Fix getAValueTypeParameterIndex().
2020-08-27 15:08:58 +01:00
Jonas Jensen
c507b337f2
Merge pull request #3921 from catenacyber/NullCheckParam
...
C++: Adds another redundant null check rule
2020-08-27 16:07:13 +02:00
Geoffrey White
111da4c352
C++: Add a model of std::vector::assign.
2020-08-27 10:22:31 +01:00
Geoffrey White
0952fb9777
C++: Minor correction in one of the string models.
2020-08-27 10:13:12 +01:00
Geoffrey White
fbac4ce44f
C++: Split StdStringCStr and allow reverse flow on data.
2020-08-27 10:11:03 +01:00
Geoffrey White
fbff44ea45
C++: Add reverse taint as well.
2020-08-27 10:09:51 +01:00
Geoffrey White
6ae96baaf6
C++: Model std::vector::data.
2020-08-27 10:08:58 +01:00
Robert Marsh
c0edc08315
C++: Simplify non-member iterator operator models
2020-08-26 16:19:03 -07:00
Robert Marsh
994e845ab0
C++: use set literals in iterator models
2020-08-26 16:08:39 -07:00
Robert Marsh
6f0cc16979
C++: remove non-existent operators from model
2020-08-26 15:52:53 -07:00
Geoffrey White
3f04530d84
C++: Autoformat.
2020-08-26 09:34:06 +01:00
Robert Marsh
83260740ff
C++: QLDoc for StdStringBeginEnd
2020-08-25 13:28:13 -07:00
Robert Marsh
c3a65148bc
C++: add some missing QLDoc
2020-08-25 13:24:54 -07:00
Robert Marsh
34ddbc0dc2
C++: add std::string::end to model
2020-08-25 13:22:00 -07:00
Geoffrey White
fdf45f02f1
C++: Autoformat.
2020-08-25 18:53:19 +01:00
Geoffrey White
c083c6235d
C++: Explicitly model data flow in through reference return values.
2020-08-25 16:20:12 +01:00
Geoffrey White
76a07f7292
C++: Use [, ...] syntax.
2020-08-25 12:30:06 +01:00
Geoffrey White
d31987d496
C++: Additional QLDoc.
2020-08-25 12:21:06 +01:00
Geoffrey White
ae807f7f33
C++: Autoformat.
2020-08-24 17:36:07 +01:00
Geoffrey White
1c38a4d5d6
Update cpp/ql/src/semmle/code/cpp/dataflow/internal/TaintTrackingUtil.qll
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2020-08-24 14:33:51 +01:00
Geoffrey White
d3c8ffb995
C++: Clean up, comment, and restrict the new flow to the post-update node of the returned reference.
2020-08-24 14:07:06 +01:00
Geoffrey White
f2caa8a2b0
C++: Reverse taint through function models returning a reference.
2020-08-24 14:05:04 +01:00
Geoffrey White
f25ef26c37
C++: Permit taint flow to the left side of an assignment.
2020-08-24 14:01:49 +01:00
Geoffrey White
1da78ada14
C++: Model 'operator[]' and 'at' for std::string, std::vector and other containers.
2020-08-24 13:58:43 +01:00
Philippe Antoine
07610e0899
Format document
2020-08-24 13:12:54 +02:00
Robert Marsh
bc0d21879d
Merge branch 'main' into rdmarsh2/cpp/input-iterators-1
...
Resolve test conflict
2020-08-21 14:36:27 -07:00
Robert Marsh
141d240813
C++: autoformat
2020-08-21 14:22:44 -07:00
Robert Marsh
94d4e05c25
C++: Fix iterator taint flow
2020-08-21 14:04:45 -07:00
Geoffrey White
3d171f358a
Merge remote-tracking branch 'upstream/main' into vecmethods
2020-08-20 13:29:28 +01:00
Geoffrey White
258b61c5f8
Update cpp/ql/src/semmle/code/cpp/models/implementations/StdContainer.qll
...
Co-authored-by: Jonas Jensen <jbj@github.com >
2020-08-20 12:53:23 +01:00
Geoffrey White
689c637d48
C++: Rename things.
2020-08-20 12:52:40 +01:00
Geoffrey White
61158e759b
C++: Improve StdContainerConstructor model.
2020-08-20 11:04:59 +01:00
Geoffrey White
f2ac4fa94a
C++: Autoformat.
2020-08-20 10:44:54 +01:00