Ian Lynagh
41ed6e6695
Java: Deprecate RefType.nestedName(), and add RefType.getNestedName()
2024-09-16 17:16:25 +01:00
erik-krogh
846882d22c
delete imports to a deleted file
2024-09-03 20:31:00 +02:00
Anders Schack-Mulligen
2925e45434
Java/Dataflow: Propagate MaD-id/model-id to PathGraph.
2024-04-12 09:19:51 +02:00
Max Schaefer
a95f4128d9
Merge pull request #15554 from github/max-schaefer/automodel-candidate-fixes
...
Automodel: Improve handling of varargs and overriding in extraction queries
2024-02-16 08:51:54 +00:00
Max Schaefer
652b6bb8e1
Fix bugs revealed by omittable exists variables.
2024-02-15 16:29:20 +00:00
Max Schaefer
104a8d980c
Automodel: Make description of some negative characteristics more explicit.
2024-02-13 08:18:13 +00:00
Max Schaefer
48105db5b0
Fix isNeutral predicates.
2024-02-08 13:22:53 +00:00
Max Schaefer
4b9443eb15
Properly recognise existing models involving subtypes.
...
If an existing source/sink model specifies `subtypes=True` we should apply it to endpoints on overriding methods.
2024-02-08 13:22:53 +00:00
Max Schaefer
ae23920a6d
Fix spurious source models for primitive types in framework mode.
2024-01-17 15:36:31 +00:00
Max Schaefer
6c47a5d5f9
Refactor framework-mode queries to make them more easily testable.
2024-01-17 14:51:58 +00:00
Max Schaefer
800a78d258
Treat unexploitable types more centrally.
...
The apparently missing test result is due to sampling.
2024-01-17 14:40:37 +00:00
Max Schaefer
8614d7bddb
Address review feedback.
2024-01-17 14:29:52 +00:00
Max Schaefer
3befce98b3
When checking whether an endpoint has already been modelled, make sure to take the extensibleType into account.
2024-01-15 12:09:39 +00:00
Max Schaefer
bb63fcde43
Refactor to avoid bad join order.
2024-01-12 15:24:24 +00:00
Max Schaefer
45ca301593
Rename a predicate.
2024-01-12 13:18:05 +00:00
Max Schaefer
ea26e21454
Extend negative characteristics for exceptions to source models.
2024-01-12 12:20:22 +00:00
Max Schaefer
06ba5ea9f8
Eliminate GetCallable modules and use getCallable instead.
2024-01-12 12:03:49 +00:00
Max Schaefer
9f443d4f83
Make Unexploitable*Characteristic more precise.
2024-01-12 12:03:41 +00:00
Max Schaefer
ff4555ac5b
Get rid of negative sink types.
...
Instead of positively implying the negative sink type, negative sink characteristics now negatively imply all sink types (but not source types). This is simpler and sice we will never have a huge number of sink types it doesn't impact performance either.
Changes to test results:
- The call to `createDirectories` at `Test.java:87` is now correctly classified as a source candidate, having previously been erroneously excluded by a negative _sink_ characteristic.
- The call to `compareTo` at `Test.java:48` is now erroneously classified as a source candidate; it should be suppressed by `IsSanitizerCharacteristic`, which is a negative sink characteristic, but should really be a negative source characteristic.
- In framework mode, several endpoints are now erroneously classified as source candidates even though they have neutral models, because `NeutralModelCharacteristic` is currently only a negative sink characteristic and not a negative source characteristic.
2024-01-11 12:19:53 +00:00
Max Schaefer
03ca244df2
Associate endpoints with their potential endpoint types and check these when determining candidates.
...
This prevents us from associating a sink candidate with a source type and vice versa.
However, this does not fix the problem of negative characteristics for sink types excluding source candidates.
2024-01-11 11:44:14 +00:00
Max Schaefer
3e8775daaa
Automodel: Do not generate features for compiler-generated program elements.
...
These have dummy locations, which breaks certain invariants that break downstream processing.
2024-01-09 13:39:46 +00:00
Stephan Brandauer
2e5971bb57
Java automodel: also drop boxed types and number types from endpoints
2023-11-24 15:04:13 +01:00
Stephan Brandauer
737aab66f5
Java automodel: drop primitive parameters from endpoints
2023-11-20 15:09:05 +01:00
Stephan Brandauer
e34a9de008
Java Automodel: drop return values of primitive return type methods from consideration for extraction in framework mode
2023-11-20 14:11:14 +01:00
Stephan Brandauer
212a515fa9
Java Automodel: drop return values void methods other than ctors from consideration for extraction in framework mode
2023-11-20 14:00:59 +01:00
Stephan Brandauer
84e58b77aa
Java Automodel: remove Qualifiers of constructors from endpoints
2023-11-16 12:44:53 +01:00
Stephan Brandauer
fdbc553029
Java: Automodel Framework mode: no longer skip non-public methods
2023-09-28 16:17:44 +02:00
Stephan Brandauer
53b3755e50
remove now-unused getIndex predicate
...
Co-authored-by: @tausbn <tausbn@github.com >
2023-09-26 10:46:42 +02:00
Stephan Brandauer
9f7f2ab70e
remove redundant fromSource calls
...
Co-authored-by: @tausbn <tausbn@github.com >
2023-09-26 10:45:54 +02:00
Stephan Brandauer
32502d5e2c
Java: Automodel, remove erroneousEndpoints predicate from production queries
2023-09-26 10:45:54 +02:00
Stephan Brandauer
e71563e540
Java: Automodel fr mode: remove superfluous module
2023-09-26 10:45:54 +02:00
Stephan Brandauer
2be5b1955f
Java: Automodel fr mode: add support for qualifier source candidates
2023-09-26 10:45:53 +02:00
Stephan Brandauer
dee387622e
Java: Automodel: rename overloadable -> overridable
2023-09-26 10:45:53 +02:00
Stephan Brandauer
6121faf671
Java: Automodel: fr mode: connect new endpoints with MaD models
2023-09-26 10:45:53 +02:00
Stephan Brandauer
7f084c90c5
Java: automodel fr mode: add overloadable parameter candidates
2023-09-26 10:45:53 +02:00
Stephan Brandauer
32a538b64c
Java: automodel fr mode: add mad output to extraction metadata
2023-09-26 10:45:53 +02:00
Stephan Brandauer
b2578f0e30
Java: Automodel Fr Mode: add return value endpoint type
2023-09-26 10:45:52 +02:00
Stephan Brandauer
8cc6466c68
Java: Automodel: add extensibleType metadata to framework mode
2023-09-26 10:45:52 +02:00
Stephan Brandauer
dff8259e78
Java: support remote sources in automodel positive example extraction
2023-09-07 15:49:57 +02:00
Anders Starcke Henriksen
e2abd3ff13
Create separate automodel pack.
2023-08-03 13:55:15 +02:00