1
0

hashfunc.c 610 B

1234567891011121314151617181920212223
  1. /*
  2. * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
  3. *
  4. * Licensed under the Apache License 2.0 (the "License"). You may not use
  5. * this file except in compliance with the License. You can obtain a copy
  6. * in the file LICENSE in the source distribution or at
  7. * https://www.openssl.org/source/license.html
  8. *
  9. */
  10. #include "internal/hashfunc.h"
  11. ossl_unused uint64_t ossl_fnv1a_hash(uint8_t *key, size_t len)
  12. {
  13. uint64_t hash = 0xcbf29ce484222325ULL;
  14. size_t i;
  15. for (i = 0; i < len; i++) {
  16. hash ^= key[i];
  17. hash *= 0x00000100000001B3ULL;
  18. }
  19. return hash;
  20. }