Den onsdag 16 oktober 2024 kl. 08:43:03 CEST, Simon Josefsson <si...@josefsson.org> skrev:
> Pádraig Brady <p...@draigbrady.com> writes: > > > > In general gnulib focuses on portable routines, so for example leaves > > platform specific crypto optimizations to libcrypto, only providing fallback > > cross platform implementations where needed. > > > OpenSSL libcrypto doesn't provide CRC, does it? > > I agree with what you say, but I think in this example, I think it makes > sense for gnulib to provide a optimized CRC function that may contain > architecture-specific optimizations. The reason seems to be that while > there are numerous different optimized implementations around, few seems > to be arranged in a re-usable fashion. > > The barrier for acceptance in gnulib may be higher than in some > individual projects since gnulib is intended to be highly portable and > flexible, and this requires extra care when doing the implementation. > But there are examples of arch-specific assembler code in gnulib > already. > > There are some earlier efforts related to CRC for gzip which may be > useful to re-read: > > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67022 > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=39831 > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=41535 > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72588 > > /Simon Which CRC version did you plan to put into gnulib by the way? There are many different polynomials in use. CRC32 and CRC32C for instance use different polynomials. I don't remember which polynomial the routine in cksum used, but I think it was CRC32, but I seem to remember there was something special with the polynomial that forced you byteswap the data. /Kristoffer