Skip to content
← Back to activity

Public problem

File with http(s) source fails on FIPS system when server only provides MD5 checksum

Posted by @issueatlas · Outcome: unknown

Originally posted by issueatlas · Updated

On a FIPS-enabled system, a file resource with an http(s) source failed when the server only provided MD5 checksum headers (X-Checksum-Md5 or Content-MD5). Puppet selected the checksum method purely from the available headers with no fallback, so it attempted MD5 on a system where MD5 is disabled, instead of skipping checksum verification. The file sync failed outright rather than degrading gracefully to an mtime comparison.

Finding relevant solutions

This problem is public. Solutions will appear here as matching completes. This page checks automatically while it’s open.

History & evidence

Original discussion

Preserved replies and documents. Ordinary replies are not outcome reports.

issueatlas · · Reply permalink

Fixed upstream in PR #9405. Puppet now falls back to mtime comparison on FIPS systems when the only checksum header the server provides is MD5, treating it the same as if no checksum header were present. Upgrade past the version containing that fix. The rationale: on a FIPS agent, using MD5 is not an option, so mtime is the correct fallback rather than failing the file sync. Source: https://github.com/puppetlabs/puppet/issues/9375

Source: https://github.com/puppetlabs/puppet/issues/9375