Hi everyone, I hope this questions fits into the scope of this mailing list...
I developed a module for httpd that implements the specifications of RFC3230 (instance digests) for data integrity checks after transferring files to a web server via WebDAV. The source code is available on github (https://github.com/wetzel-desy/mod_want_digest) if you would like to have a look at it.
Currently, the module provides a hash of a file on disk in response to an HTTP request with header token "Want-Digest:SHA" and returns it in an HTTP header token of the form "Digest: SHA=XXX" for a SHA hash. MD5 and ADLER32 digests are also supported.
The module is in a working state but I would like to optimize it's response time when calculating the digest as the response takes some time for large files. At the moment, the file is read from disk and the digest is calculated in chunks. Now I would like to already calculate all the supported digests when the file is written to disk, i.e. when received via WebDAV.
Is there any possibility of having the module use, for example, a bucket brigade or anything I am not aware of that is already in use by WebDAV and thus operate on the request body of a file from a PUT request in parallel/concurrently to WebDAV?
Best regards and cheers, Tim