]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
siphash: make sure siphash24_compress_usec_t() works the same on LE/BE archs
authorLennart Poettering <lennart@poettering.net>
Mon, 18 Dec 2023 13:52:53 +0000 (14:52 +0100)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 19 Dec 2023 02:48:53 +0000 (11:48 +0900)
Let's be systematic here, and always hash LE values. It doesn't matter
in our current codebase, but it might one day.

src/basic/siphash24.h

index 0b3e845bf4684c023d15a64705540e08a27e2779..72147a99040a17bc1788b8c8b611fc3ed66702ab 100644 (file)
@@ -25,12 +25,12 @@ void siphash24_compress(const void *in, size_t inlen, struct siphash *state);
 
 static inline void siphash24_compress_boolean(bool in, struct siphash *state) {
         uint8_t i = in;
-
         siphash24_compress(&i, sizeof i, state);
 }
 
 static inline void siphash24_compress_usec_t(usec_t in, struct siphash *state) {
-        siphash24_compress(&in, sizeof in, state);
+        uint64_t u = htole64(in);
+        siphash24_compress(&u, sizeof u, state);
 }
 
 static inline void siphash24_compress_safe(const void *in, size_t inlen, struct siphash *state) {