Skip to content

Conversation

@jbj
Copy link
Contributor

@jbj jbj commented Jan 16, 2020

The IR data flow library now supports virtual dispatch with a library that's similar to security.TaintTracking. In particular, it should have the same performance characteristics. The main difference is that non-recursive callers of flowsFrom now pass _ instead of true for boolean allowFromArg. This change allows flow through return to actually work.

The IR data flow library now supports virtual dispatch with a library
that's similar to `security.TaintTracking`. In particular, it should
have the same performance characteristics. The main difference is that
non-recursive callers of `flowsFrom` now pass `_` instead of `true` for
`boolean allowFromArg`. This change allows flow through `return` to
actually work.
@jbj jbj added the C++ label Jan 16, 2020
@jbj jbj requested a review from a team as a code owner January 16, 2020 14:00
@jbj
Copy link
Contributor Author

jbj commented Jan 16, 2020

Performance is good on MySQL and facebookincubator/fizz. There's a lot of room for optimisation, but I'd like to find a database with bad performance before optimising.

Copy link
Contributor

@geoffw0 geoffw0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm pretty happy with this. I've asked a few questions to check my understanding.

I'd like to find a database with bad performance before optimising.

Yes - I imagine in many projects there just won't be enough DataSensitiveCalls for performance issues to manifest. Perhaps run select count(DataSensitiveCall dsc) on LGTM and see which projects come up top?

@geoffw0 geoffw0 mentioned this pull request Jan 17, 2020
Copy link
Contributor

@geoffw0 geoffw0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants