Skip to content

Add CRC32C (Castagnoli) checksum support#63

Draft
Copilot wants to merge 5 commits intomasterfrom
copilot/add-crc32c-checksum-support
Draft

Add CRC32C (Castagnoli) checksum support#63
Copilot wants to merge 5 commits intomasterfrom
copilot/add-crc32c-checksum-support

Conversation

Copy link

Copilot AI commented Feb 14, 2026

Adds CRC32C as a new checksum type computed alongside existing checksums (MD5, CRC32, CKSUM, ADLER32, CVMFS).

Uses a software lookup table for the Castagnoli polynomial (0x1EDC6F41), consistent with how POSIX CKSUM is already implemented in this codebase.

  • XrdChecksum.hh: CRC32C = 0x20 enum value, uint32_t m_crc32c state
  • XrdChecksumCalc.cc: 256-entry lookup table, init/update/finalize/get — mirrors existing CRC32 pattern
  • XrdChecksum.cc: Name matching (ordered before crc32 for correct prefix disambiguation), storage via xattrs, return path in Calc()
  • MultiuserFileSystem.cc: Config parsing for xrootd.chksum crc32c

Verified against known test vector: CRC32C("123456789") = 0xe3069283.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 4 commits February 14, 2026 16:25
Co-authored-by: djw8605 <79268+djw8605@users.noreply.github.com>
Co-authored-by: djw8605 <79268+djw8605@users.noreply.github.com>
Co-authored-by: djw8605 <79268+djw8605@users.noreply.github.com>
Co-authored-by: djw8605 <79268+djw8605@users.noreply.github.com>
Copilot AI changed the title [WIP] Add support for calculating crc32c checksum Add CRC32C (Castagnoli) checksum support Feb 14, 2026
Copilot AI requested a review from djw8605 February 14, 2026 16:29
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