Skip to content

Analyze unsafe code reachability - #3546

Closed
celinval wants to merge 3 commits into
model-checking:mainfrom
celinval:issue-xxxx-transitive-scan
Closed

Analyze unsafe code reachability#3546
celinval wants to merge 3 commits into
model-checking:mainfrom
celinval:issue-xxxx-transitive-scan

Conversation

@celinval

Copy link
Copy Markdown
Contributor

Add call graph analysis to scanner in order to find the distance between functions in a crate and unsafe functions.

For that, we build the crate call graph and collect the unsafe functions. After that, do reverse BFS traversal from the unsafe functions and store the distance to other functions. The result is stored in a new csv file.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.

@celinval
celinval requested a review from a team as a code ownerSeptember 24, 2024 14:47
@github-actionsgithub-actionsBot added the Z-EndToEndBenchCI Tag a PR to run benchmark CI label Sep 24, 2024
@celinval
celinvalforce-pushed the issue-xxxx-transitive-scan branch from c208237 to 37bcc09CompareSeptember 24, 2024 14:50
Add callgraph analysis to scanner in order to find the distance between
functions in a crate and unsafe functions.
For that, we build the crate call graph and collect the unsafe
functions. After that, do reverse BFS traversal from the unsafe
functions and store the distance to other functions.
The result is stored in a new csv file.
@celinval
celinvalforce-pushed the issue-xxxx-transitive-scan branch from 37bcc09 to c3d305fCompareSeptember 24, 2024 14:54
Comment threadtests/script-based-pre/tool-scanner/scanner-test.sh
Comment threaddocs/src/rustc-hacks.md Outdated
Comment threadscripts/std-analysis.sh Outdated
Comment threadtests/script-based-pre/tool-scanner/test.rs Outdated
Comment threadtools/scanner/src/call_graph.rs Outdated
Comment threadtools/scanner/src/analysis.rs Outdated
@celinval
celinvalforce-pushed the issue-xxxx-transitive-scan branch from 025fe87 to a4198acCompareJanuary 31, 2025 20:43
github-merge-queueBot pushed a commit that referenced this pull request Jan 31, 2025
The old hack doesn't work anymore.
I pulled this from #3546 per PR comment
By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 and MIT licenses.
@celinvalcelinval assigned tautschnig and unassigned celinvalFeb 3, 2025
@carolynzech
carolynzech marked this pull request as draft April 7, 2025 17:05
github-merge-queueBot pushed a commit that referenced this pull request Apr 24, 2025
Continuation of #3546.
From @celinval in #3546:
> Add call graph analysis to scanner in order to find the distance
between functions in a crate and unsafe functions.
> > For that, we build the crate call graph and collect the unsafe
functions. After that, do reverse BFS traversal from the unsafe
functions and store the distance to other functions. The result is
stored in a new csv file.
By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 and MIT licenses.
---------
Co-authored-by: Celina G. Val <celinval@amazon.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Z-EndToEndBenchCITag a PR to run benchmark CI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@celinval@tautschnig@carolynzech