-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Introduce shared taint tracking library #13881
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
A few stylistic comments, otherwise mostly LGTM. |
private import DataFlowMake<DataFlowLang> as DataFlow | ||
private import MakeImpl<DataFlowLang> as DataFlowInternal | ||
|
||
private module AddTaintDefaults<DataFlowInternal::FullStateConfigSig Config> implements |
Check warning
Code scanning / CodeQL
Data flow configuration module naming
* Constructs a global taint tracking computation. | ||
*/ | ||
module Global<DataFlow::ConfigSig Config> implements DataFlow::GlobalFlowSig { | ||
private module Config0 implements DataFlowInternal::FullStateConfigSig { |
Check warning
Code scanning / CodeQL
Data flow configuration module naming
import Config | ||
} | ||
|
||
private module C implements DataFlowInternal::FullStateConfigSig { |
Check warning
Code scanning / CodeQL
Data flow configuration module naming
* Constructs a global taint tracking computation using flow state. | ||
*/ | ||
module GlobalWithState<DataFlow::StateConfigSig Config> implements DataFlow::GlobalFlowSig { | ||
private module Config0 implements DataFlowInternal::FullStateConfigSig { |
Check warning
Code scanning / CodeQL
Data flow configuration module naming
import Config | ||
} | ||
|
||
private module C implements DataFlowInternal::FullStateConfigSig { |
Check warning
Code scanning / CodeQL
Data flow configuration module naming
LGTM now. Although, preferably we'll switch all languages in one go, so we don't have a mix of shared lib usage and parameterised modules. |
That is the plan (as part of this PR). I only did C++ first, because I wanted to know if the approach was good. |
Beware that you have an incoming merge conflict in #13851 |
I'll rebase this PR and then kick off all the DCAs. |
9f12a4e
to
c4a65e5
Compare
I sightly refactored this to follow #13901 |
@aschackmull I re-ran the DCA experiments (which was before the OOM-related revert we did yesterday). All DCA results look uneventful to me, except for the Java ones which show a large number of OOMs. Let me know if I should re-run those with the OOM-related revert. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🎉
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 for Python
No description provided.