@bbockelm commented on this pull request.
In src/XrdHttp/README-CKSUM.md:
> @@ -0,0 +1,15 @@ +In the case XrdHttp has been configured, it is important that the configuration contains at least one digest algorithm registered in the IANA database: https://www.iana.org/assignments/http-dig-alg/http-dig-alg.xhtml +Otherwise the user will get a 403 error for each checksum request they will do. + +Here is a table summarizing the IANA-compliant checksum names: + +| Digest algorithm | HTTP digest | Will be base64 encoded | +|------------------|-------------|------------------------| +| md5 | md5 | true | +| adler32 | adler32 | false | +| sha1 | sha | true | +| sha256 | sha-256 | true | +| sha512 | sha-512 | true | +| cksum | UNIXcksum | false |
This is the IANA definition:
https://www.iana.org/assignments/http-dig-alg/http-dig-alg.xhtml
The algorithm computed by the UNIX ``cksum'' command, as defined by the Single UNIX Specification, Version 2
So, it seems fairly natural to call this digest algorithm cksum
. At https://reveng.sourceforge.io/crc-catalogue/all.htm, there are 12 different CRC-32 algorithms documented, so it seems reasonable to name the cksum
variant this.
In terms of compatibility, at least the xrootd-hdfs plugin and xrootd-multiuser plugin utilize the cksum
name for the digest algorithm name for this particular algorithm.
In the "bad news" department, it appears the built-in algorithms call the cksum algorithm the crc32
digest whereas xrootd-hdfs/multiuser call the Zlib CRC32 algorithm the crc32
digest (which the built-in algorithms call zcrc32
. That means someone requesting the crc32
checksum algorithm will get differing results, which is really unfortunate.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.
Use REPLY-ALL to reply to list
To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1