Print

Print


@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.Message ID: <xrootd/xrootd/pull/1950/review/1351624662@github.com>

[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/xrootd/xrootd/pull/1950#discussion_r1144160934", "url": "https://github.com/xrootd/xrootd/pull/1950#discussion_r1144160934", "name": "View Pull Request" }, "description": "View this Pull Request on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } } ]

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