Skip to content

Mark non-security md5 usage to allow for compatibility with fips environments - #970

Open
mykaul wants to merge 1 commit into
scylladb:masterfrom
mykaul:cherry-pick-fips-md5
Open

Mark non-security md5 usage to allow for compatibility with fips environments#970
mykaul wants to merge 1 commit into
scylladb:masterfrom
mykaul:cherry-pick-fips-md5

Conversation

@mykaul

@mykaul mykaul commented Aug 9, 2026

Copy link
Copy Markdown

Summary

  • Cherry-pick of apache/cassandra-python-driver@f685c2c
  • Marks the non-security md5 usage in MD5Token.hash_fn with usedforsecurity=False so the driver works in FIPS-enforced Python environments, which reject non-approved hash algorithms unless explicitly marked as not used for security purposes.

Test plan

  • Ran the unit test suite (tests/unit) locally; test_metadata.py passes in full, including all MD5Token/Token tests
  • Remaining failures in the full suite are pre-existing environment gaps (missing optional Cython/Twisted/lz4 dependencies), unrelated to this change

🤖 Generated with Claude Code

environments

patch by Luke Ratcliffe and Brad Schoening; reviewed by Bret McGuire and Brad Schoening
@coderabbitai

coderabbitai Bot commented Aug 9, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: QUIET

Plan: Pro Plus

Run ID: b14a293f-da07-46d0-8131-3f4ed62de1a2

📥 Commits

Reviewing files that changed from the base of the PR and between 1d7e601 and d940fd5.

📒 Files selected for processing (1)
  • cassandra/metadata.py

📝 Walkthrough

Walkthrough

MD5Token.hash_fn now calls md5 with usedforsecurity=False. The function retains its existing digest conversion and absolute-value behavior.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the MD5 compatibility change for FIPS environments.
Description check ✅ Passed The description explains the change, its purpose, cherry-pick source, and test results; the main required information is present.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Comment @coderabbitai help to get the list of available commands.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants