Skip to content

Scripts: Add Script to Analyze Crypto Usage#241

Draft
Flickdm wants to merge 2 commits into
microsoft:mainfrom
Flickdm:add/scripts
Draft

Scripts: Add Script to Analyze Crypto Usage#241
Flickdm wants to merge 2 commits into
microsoft:mainfrom
Flickdm:add/scripts

Conversation

@Flickdm
Copy link
Copy Markdown
Member

@Flickdm Flickdm commented Apr 29, 2026

Description

Analyze crypto function usage for an EDK2 platform from a BUILD_REPORT.TXT.

Parses the build report to find modules that consume BaseCryptLib/TlsLib,
then scans their source files to identify which specific crypto functions
are called. Produces a per-phase, per-module usage report.

For details on how to complete these options and their meaning refer to CONTRIBUTING.md.

  • Impacts functionality?
  • Impacts security?
  • Breaking change?
  • Includes tests?
  • Includes documentation?

How This Was Tested

Physical Platforms and virtual platforms

Integration Instructions

N/A

Flickdm added 2 commits April 28, 2026 15:11
Apply all 6 conceded fixes from code review battle:
- Fixed INF path concatenation with separator and normalization
- Added MAX_LIBRARY_ENTRY_LINES guard to prevent unbounded loop
- Switched provider detection to path component matching
- Reworded provider exclusion comment for accuracy
- Added full_path field to JSON for NULL library disambiguation
- Fixed library entry concatenation with proper separators

All changes validated and tested for syntax correctness.
Add --validate-families mode to report crypto family prefixes discovered
from headers but not explicitly listed in CRYPTO_FAMILIES. Includes:
- discover_package_roots_from_workspace() for header-based discovery
- find_auto_discovered_families() to extract families from function names
- output_family_validation() to format the report

Make --report optional to support validation mode without a build report.

Signed-off-by: Doug Flick <dougflick@microsoft.com>
@mu-automation mu-automation Bot added language:python Pull requests that update Python code impact:non-functional Does not have a functional impact labels Apr 29, 2026
@Flickdm Flickdm changed the title Add/scripts Scripts: Add Script to Analyze Crypto Usage Apr 29, 2026
@Flickdm Flickdm added this to the v1.1.0-OneCrypto milestone May 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

impact:non-functional Does not have a functional impact language:python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant